Siebel Data Quality Administration Guide > Universal Connector API > Batch Mode Data Matching Functions >

sdq_set_dedup_candidates Function


This function is called to provide the list of candidate records in batch mode. The number of records sent during each invocation of this function is a customer-configurable deployment-time parameter. However, this is not communicated to the vendor at run time.

Syntax

int sdq_set_dedup_candidates (int session_id, SSchar* parameterList, SSchar* xmlRecordSet)

Parameters

  • session_id: The session ID obtained by initializing the session.

 

  • parameterList: An XML character string that contains the list of parameters and values that are specific to this function call. An example of the XML is as follows:

    <Data>
    <Parameter>
    <Name>BatchDedupParam1</Name>
    <Value>BatchDedupValue1</Value>
    </Parameter>

    <Parameter>
    <Name>BatchDedupParam2</Name>
    <Value>BatchDedupValue2</Value>
    </Parameter>
    </Data>

    NOTE:  The parameterList parameter is set to NULL as all required parameters are already set at the session level.

 

  • xmlRecordSet: When match candidate acquisition takes place in Siebel CRM, the xmlRecordSet parameter is used as follows:
    • For full data matching batch jobs: An XML character string containing a list of candidate records. There is no driver record in the input set. An example of the XML is as follows:

    <Data>
    <CandidateRecord>
    <Account.Id>2-24-E</Account.Id>
    <Account.Name>Siebel</Account.Name>
    <Account.Location>Somewhere</Account.Location>
    </CandidateRecord>
    <CandidateRecord>
    <Account.Id>1-E-2E</Account.Id>
    <Account.Name>Siebel</Account.Name>
    <Account.Location>Somewhere else</Account.Location>
    </CandidateRecord>
    <CandidateRecord>
    <Account.Id>2-34-F</Account.Id>
    <Account.Name>Siebel</Account.Name>
    <Account.Location>Someplace</Account.Location>
    </CandidateRecord>
    </Data>

 

    • For incremental data matching batch jobs: As more candidate records are queried from the Siebel CRM database and sent to the vendor software, the driver records must be marked so that the vendor software knows which records must return duplicate records:

    <Data>
    <DriverRecord>
    <Account.Id>2-24-E</Account.Id>
    <Account.Name>Siebel</Account.Name>
    <Account.Location>Somewhere</Account.Location>
    </DriverRecord>
    <CandidateRecord>
    <Account.Id>1-E-9E</Account.Id>
    <Account.Name>Siebel</Account.Name>
    <Account.Location>Somewhere else</Account.Location>
    </CandidateRecord>
    <DriverRecord>
    <Account.Id>1-E-2E</Account.Id>
    <Account.Name>Siebel</Account.Name>
    <Account.Location>Somewhere else</Account.Location>
    </DriverRecord>
    <CandidateRecord>
    <Account.Id>1-12-2H</Account.Id>
    <Account.Name>Siebel</Account.Name>
    <Account.Location>Somewhere else</Account.Location>
    </CandidateRecord>
    <DriverRecord>
    <Account.Id>2-34-F</Account.Id>
    <Account.Name>Siebel</Account.Name>
    <Account.Location>Someplace</Account.Location>
    </DriverRecord>
    </Data>

 

NOTE:  The order of the driver records and candidate records is not significant. If a candidate has already been sent, it is not necessary to send it again even though it is a candidates associated with multiple driver records.

 

  • xmlRecordSet: When match candidate acquisition takes place in ODQ Matching Server, the xmlRecordSet parameter is used as follows:
    • For full data matching batch jobs, an empty string is sent.
    • For incremental data matching batch jobs, only driver records are sent.

      An example of the XML is as follows:

    <Data>
    <DriverRecord>
    <DUNSNumber>123456789</DUNSNumber>
    <Name>Siebel</Name>
    <RowId>1-X40</RowId>
    </DriverRecord>
    <DriverRecord>
    <DUNSNumber>987654321</DUNSNumber>
    <Name>Oracle</Name>
    <RowId>1-X50</RowId>
    </DriverRecord>
    <DriverRecord>
    <DUNSNumber>123123123</DUNSNumber>
    <Name>IBM</Name>
    <RowId>1-X60</RowId>
    </DriverRecord>
    </Data>

Return Value

A return value of 0 indicates successful execution. Any other value is a vendor error code. The error message details from the vendor are obtained by calling the sdq_get_error_message function.

Siebel Data Quality Administration Guide Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Legal Notices.