Merge/Purge Plus - not de-dupping some records that have 'Corporate Indicator/Professional Suffix' last names

Product affected: Merge/Purge Plus, all versions, all platforms


On the Windows Operating System, but applies to other systems as well. 

One of the tables that Merge/Purge Plus uses is CPPFFIL.STD.  That table has a list of words that if found in the name field of a record, indicates that the record is a Company and/or the word is a Professional Suffix part of the name.

Here is the first part of the table, which includes the file layout-
** Corporate/Professional Indicative Word Table, Default Entries
*   Format of each entry:
*    01-16  Word Text, left-justified
*    17-17  Result Code, as follows:
*             1 - Corporate-Indicative word
*             2 - Professional Suffix word
*             3 - Both 1 and 2
*           Following Additional Codes may occur in table:
*             5 - No good for corporate-indicative
*             6 - No good for professional suffix
*             7 - No good for either
*   Entries which start with an asterisk (*) will be ignored.
*   Non-* entries must not use lower-case for the words.
*   Non-* entries must be arranged in alphabetical order by 01-16.
AB              2
ABOUT           1
ACAD            1

A user reported a problem doing a Household de-dupping where he wanted to remove all records when there were more than one with the same last name at an address.  The problem was that some of the personal names in his records had last names that were in the table, for example PRESS and WORK.
PRESS           1
WORK            3

This was causing the name parsing and de-dupping process to run differently, and the records were not being seen as duplicates.


MPP does have an optional setting on the NAMEDF parameter position 57 to tell MPP that all records are people, or vice versa-  
Name Type Flag 
A one-byte code indicating whether Merge/Purge Plus should treat all names as companies, all as persons, or analyze each record for name type.  Enter one of the following codes: 

Blank    Analyze each name, and treat it as a formatted name only if it appears to be a company name.
C      Treat all names as company names.
N      Treat all names as personal names.

Putting an N there solved the issue for the records of people that had a last name of "PRESS" because it has a 1 in the table above, so once MPP was told no records were companies, the "PRESS" records were processed as the user wanted.

But for records with the last name of 'WORK' which has a code of 3 above, turning off companies did not solve the issue, because while the records were no longer seen as companies, WORK was still being seen as a Professional title during the name parsing.  So it was not being parsed as the last name, and the people's first names were parsed as being the last name.  Since the first names were all different, the records were not seen as having the same last names.


UPDATED: May 14, 2019
There is a second table used by MPP, called CPPFMOD.STD, the 'mod' table.  It has the same format as the one above, but is for user's to add their own entries as to what is or is not a Corporate/Professional Indicative word.  This mod table is looked at first when MPP runs, and when a word is found in it then that Result Code will be used, and the standard table will be skipped.

To solve this issue, the user needs to make additions to the mod table as needed, to tell MPP that certain words are not to be seen as corporate or professional indicators, by using the Result Code values 5, 6, or 7 as the user wants/needs.