UCM OrganizationMatchService web service is passing the [VAT Registration Number] field/values to EDQ for matching, but no matches are found even though matches exists (Doc ID 1675264.1)

Last updated on AUGUST 25, 2017

Applies to:

Siebel Universal Customer Master - Version 8.1.1.10 [23021] and later
Siebel CRM - Version 8.1.1.10 [23021] and later
Information in this document applies to any platform.
*** Checked for currency on APR-04-2016 ***

Symptoms

SIEBEL VERSION:

---------------
8.1.1.10 [23021]

ISSUE STATEMENT:
----------------

Customer made changes to EDQ to enable a rule to match Account objects based on Account Name and [VAT Registration Number] field. Customer also included this [VAT Registration Number] field in the SwiOrganizationMatchInputIO and SwiOrganizationMatchOutputIO and integration objects.

When customer tested using the Siebel UCM UI to create new records having the same [VAT Registration Number] value, this returned potential matches with scores.

When customer tested by using the UCM OrganizationMatchService web service by passing the Account Name + [VAT Registration Number] field/values for the same account seen from the Siebel UI, this did not return any matches, it just returns the input message as the output message.

WHERE IT HAPPENED:
-------------------------------
The issue happens in customer's test environment.

STEPS TO REPRODUCE:
-------------------------------
The behaviour occurs as follows:

1. Make changes on the EDQ side > Director > EDQ-CDS > Processes > Match - Entity > Match - Entity > Match

a. Rule Groups: "[E030] Standardized full name exact"

Rule: 86 [E030H] Standardized full name exact; VAT number REVIEW

Change this to: 98 [E030H] Standardized full name exact; VAT number REVIEW

Rule: 82 [E030M] Standardized full name exact; VAT number typos REVIEW

Changed this to: 97 [E030M] Standardized full name exact; VAT number typos REVIEW

Apply > Save Project.


b Rule Groups "[E900] Non-names rules" > Rule:

Rule: 50 [E900B] VAT number exact only REVIEW

Change this to: 89 [E900B] VAT number exact only REVIEW

Rule: None exists, create a new one with: 78 [E900F] VAT number typos REVIEW

Apply > Save Project.

c. Restart EDQ services.

2. Start Siebel services and make Siebel side changes:

a. Add the 'VAT registration number' Account BC field mapping in the DQ 3rd party administration view, mapped to edq vatnumber

b. Edit the SwiOrganizationMatchInputIO and SwiOrganizationMatchOutputIO by adding the 'VAT registration number' IC field to the Account IC and compile the changes into the client and server srf files.

c. Restart the Siebel server services.

3. Create new account records through the Siebel UI with the same 'VAT registration number' field value, this should display the potential matching records with a score.

4. Use the OrganizationMatchService web service and provide the same account name + 'VAT registration number' field value in the input as follows:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:dat="http://siebel.com/DataQuality" xmlns:swi="http://www.siebel.com/xml/SwiOrganizationMatchInputIO">
   <soapenv:Header>
      <wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/04/secext">
         <wsse:UsernameToken xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/04/secext">
            <wsse:Username>$username$</wsse:Username>
            <wsse:Password>$password$</wsse:Password>
         </wsse:UsernameToken>
      </wsse:Security>
   </soapenv:Header>
   <soapenv:Body>
      <dat:OrganizationMatch_Input>
         <swi:SwiOrganizationMatchInputIO EnterpriseServerName="UCM_DEV">
            <swi:Account>
               <swi:Name>Fine LIMITED</swi:Name>
               <swi:VATRegistrationNumber>$regn_no$</swi:VATRegistrationNumber>
            </swi:Account>
         </swi:SwiOrganizationMatchInputIO>
      </dat:OrganizationMatch_Input>
   </soapenv:Body>
</soapenv:Envelope>

This should return the matching record with candidates and scores, but it is not doing so, rather it is just returning the input message as a response:

Soap_Response.xml

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <SOAP-ENV:Body>
      <ns:OrganizationMatch_Output xmlns:ns="http://siebel.com/DataQuality">
         <SwiOrganizationMatchOutputIO Language="ENU" Locale="English - United States" EnterpriseServerName="UCM_DEV" xmlns="http://www.siebel.com/xml/SwiOrganizationMatchOutputIO">
            <Driver>
               <Name>Fine LIMITED</Name>
               <VATRegistrationNumber>$regn_no$</VATRegistrationNumber>
               <ListOfCandidate/>
            </Driver>
         </SwiOrganizationMatchOutputIO>
      </ns:OrganizationMatch_Output>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

BEHAVIOR PATTERN:
-------------------------------
The behavior happens only when trying to do the matching using the above inbound web service, it works fine for UI data entry.

EXPECTED BEHAVIOR:
-------------------------------
The expected behaviour is that the matching account should be returned since it was detected when using the Siebel UI.

LOSS OF FUNCTIONALITY / BUSINESS IMPACT:
------------------------------
Since the web service is not returning a match, DQ functionality cannot be validated for backend transaction/interfaces.

ERROR MESSAGE:
-------------------
The error message that occurs with this issue is:

" GetDedupKeys - Did not return any dedup key "

The error was found in the customer's log file for the inbound web service test case.


Changes

 

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms