Quickstart#

Introduction#

MatchUp® Object Global is an extremely fast and powerful programmer’s tool that can be integrated into custom applications to eliminate duplicate records.

Sample Code#

MatchUp Object Global is compatible with multiple coding languages across different systems. The table below will link you to the sample code for each language hosted in the github repositories.

Language

System

Repository

C# .NET

Windows

melissa_favicon MelissaData/MatchUpObjectGlobal-Dotnet

Linux

melissa_favicon MelissaData/MatchUpObjectGlobal-Dotnet-Linux

melissa_favicon MelissaData/MatchUpObjectGlobal-Dotnet-Wrappers

C++

Windows

melissa_favicon MelissaData/MatchUpObjectGlobal-Cpp

Linux

melissa_favicon MelissaData/MatchUpObjectGlobal-Cpp-Linux

Java

Windows

melissa_favicon MelissaData/MatchUpObjectGlobal-Java

Linux

melissa_favicon MelissaData/MatchUpObjectGlobal-Java-Linux

melissa_favicon MelissaData/MatchUpObjectGlobal-Java-Wrappers

Python3

Windows

melissa_favicon MelissaData/MatchUpObjectGlobal-Python3

Linux

melissa_favicon MelissaData/MatchUpObjectGlobal-Python3-Linux

melissa_favicon MelissaData/MatchUpObjectGlobal-Python3-Wrappers

SQL Server CLR

melissa_favicon MelissaData/MatchUpObjectGlobal-SQLServerCLR

How To Get Data#

Use the Melissa Updater to download the data files using the following manifests: global_mu_data

Getting Started#

Basic Flow of Actions#

1. Initialize MatchUp Object Global#

We will first need to create an instance of the Melissa MatchUp Object Global before calling any methods from it.

Example Implementation:

  • C#
  • C++
  • Java
  • Python3
// Create instance of Melissa MatchUp Object Global
public mdReadWrite mdMatchUpObjGlobal = new mdReadWrite();
// Create instance of Melissa MatchUp Object Global
mdMUReadWrite* mdMatchUpObjGlobal = new mdMUReadWrite;
// Create instance of Melissa MatchUp Object Global
mdMUReadWrite mdMatchUpObjGlobal = new mdMUReadWrite();
# Create instance of Melissa MatchUp Object Global
md_MatchUp_obj = mdMatchUp_pythoncode.mdMUReadWrite()

2. Set a License#

We can use the method SetLicenseString in order to set the license.

Example Implementation:

  • C#
  • C++
  • Java
  • Python3
// Set license string
mdMatchUpObj.SetLicenseString(MELISSA_LICENSE_STRING);
// Set license string
mdMatchUpObj->SetLicenseString(MELISSA_LICENSE_STRING.c_str());
// Set license string
mdMatchUpObj.SetLicenseString(MELISSA_LICENSE_STRING);
# Set license string
md_MatchUp_obj.SetLicenseString(MELISSA_LICENSE_STRING)

You can use GetLicenseExpirationDate to see when the license will expire

Example Implementation:

  • C#
  • C++
  • Java
  • Python3
mdMatchUpObj.GetLicenseExpirationDate();
mdMatchUpObj->GetLicenseExpirationDate();
mdMatchUpObj.GetLicenseExpirationDate();
md_MatchUp_obj.GetLicenseExpirationDate()

3. Initialize Data Files#

We can use the methods SetPathToMatchUpFiles to set the paths for the data files , and we can use the method InitializeDataFiles to setup the data files. ProgramStatus can be used to store the result from InitializeDataFiles in order to ensure it worked as expected.

Example Implementation:

  • C#
  • C++
  • Java
  • Python3
// Set data paths for objects
mdMatchUpObj.SetPathToMatchUpFiles(PATH_TO_DATA_FILES);
mdMatchUp.ProgramStatus pStatus = mdMatchUpObj.InitializeDataFiles();

// Handle potential issues while initializing the data files
if (pStatus != mdMatchUp.ProgramStatus.ErrorNone)
{
    Console.WriteLine("Fail to Initialize Object.");
    Console.WriteLine(pStatus);
    return;
}
// Set data paths for objects
mdMatchUpObj->SetPathToGeoCodeDataFiles(PATH_TO_DATA_FILES.c_str());
mdMatchUp::ProgramStatus pStatus = mdMatchUpObj->InitializeDataFiles();

if (pStatus != mdMatchUp::ProgramStatus::ErrorNone)
{
    cout << "Failed to Initialize Object." << endl;
    cout << pStatus << endl;
    return;
}
// Set data paths for objects
mdMatchUpObj.SetPathToGeoCodeDataFiles(PATH_TO_DATA_FILES);
mdMatchUp.ProgramStatus pStatus = mdMatchUpObj.InitializeDataFiles();

if (pStatus != mdMatchUp.ProgramStatus.ErrorNone) {
    // Problem during initialization
    System.out.println("Failed to Initialize Object.");
    System.out.println(pStatus);
    return;
}
# Set data paths for objects
md_MatchUp_obj.SetPathToGeoCodeDataFiles(PATH_TO_DATA_FILES)
p_status = md_MatchUp_obj.InitializeDataFiles()

if (p_status != mdMatchUp_pythoncode.ProgramStatus.ErrorNone):
    print("Failed to Initialize Object.")
    print(p_status)
    return

You can use the method GetDatabaseDate to check at what date the database was updated. The method GetBuildNumber gives the development build number of mdMatchUp Object Global.

Example Implementation:

  • C#
  • C++
  • Java
  • Python3
// If you see a different date than expected, check your license string and either
// download the new data files or use the Melissa Updater program to update your data files.
mdMatchUpObj.GetDatabaseDate();

// This number should match with file properties of the Melissa Object binary file.
// If TEST appears with the build number, there may be a license key issue.
mdMatchUpObj.GetBuildNumber()
// If you see a different date than expected, check your license string and either
// download the new data files or use the Melissa Updater program to update your data files.
mdMatchUpObj->GetDatabaseDate();

// This number should match with file properties of the Melissa Object binary file.
// If TEST appears with the build number, there may be a license key issue.
mdMatchUpObj->GetBuildNumber();
// If you see a different date than expected, check your license string and either
// download the new data files or use the Melissa Updater program to update your data files.
mdMatchUpObj.GetDatabaseDate();

// This number should match with file properties of the Melissa Object binary file.
// If TEST appears with the build number, there may be a license key issue.
mdMatchUpObj.GetBuildNumber();
# If you see a different date than expected, check your license string and either
# download the new data files or use the Melissa Updater program to update your data files.
md_MatchUp_obj.GetDatabaseDate()

# This number should match with file properties of the Melissa Object binary file.
# If TEST appears with the build number, there may be a license key issue.
md_MatchUp_obj.GetBuildNumber()

You can also get the status on errors in initialization by using GetInitializeErrorString in order to determine if the code should continue running.

Example Implementation:

  • C#
  • C++
  • Java
  • Python3
bool shouldContinueRunning = true;

if (mdMatchUpObj.GetInitializeErrorString() != "No error")
{
    shouldContinueRunning = false;
}
bool shouldContinueRunning = true;

if (string(mdMatchUpObj->GetInitializeErrorString()) != "No error.")
{
    shouldContinueRunning = false;
}
Boolean shouldContinueRunning = true;

if (!mdMatchUpObj.GetInitializeErrorString().equals("No error"))
    shouldContinueRunning = false;
should_continue_running = True

if md_MatchUp_obj.GetInitializeErrorString() != "No error":
    should_continue_running = False