Identify the root cause of a missing reference

If a missing reference report has detected any invalid records, you need to identify their root causes. Remember that the data in the source file should also exist in the target file, otherwise the data is an “orphan” or there is a non-relational link or erddef definition behind that “orphan” data.

Example 1 : The missing reference is caused by a pure orphan value.

This example demonstrates the steps to handle a missing reference, using the operator file and out-of-box data in the system.

Example 2. The missing reference is caused by an inappropriate link definition

The following describes an example of an inappropriate link definition.

  1. Navigate to System Administration > Tailoring > Tailoring Tools > Relationship Manager, locate the following relationship record through a search.

    SOURCE_FILE SOURCE_FIELD TARGET_FILE TARGET_FIELD RELATION_TYPE DEFINITION_TYPE
    contacts location.full.name company company Many to Many link
  2. In the relationship record, click Goto Definition to open the link definition, and locate the row that has a Source Field Name of location.full.name and a Target Field Name of company.

  3. Type contacts in the Service Manager command line, press Enter, and then open a contact record through a search.

    The location.full.name field in the contacts table has a label of Location Structure in contact records (the Address tab). As shown in the following figure, this field should be a combination of company and location according to the out-of-box business logic (for example, advantage/North America).

  4. Open the company table in Database Manager, and locate a company record through a search.

    The company field in the company table has a label of Company Code in company records. The following figure shows an example value.

    It is obvious that the link file defines a pair of source and target fields that have different value structures and therefore should not be mapped to each other. So this is an inappropriate link definition.

    Note Because of a limitation (see the Limitations section in Missing Reference Report utility), the Missing Reference Report utility does not report invalid records caused by this link definition when running a date reference check against the contacts table.

Steps to analyze a missing reference record

Normally, you can use the following process (which is similar to the example process described above) to analyze a missing reference record:

  1. Search in the target file to make sure the orphan value cannot be found in the target file, and examine the data in the target file to see what a correct value should look like.
  2. Go to the link or erddef record to locate the relevant relationship definition.
  3. Identify the problem:

    • Find the invalid "orphan" value in the source file.
    • Find the non-relational definition in the link or erddef file.
  4. Analyze the problem based on the business logic.
  5. Find out the root cause of the problem.
  6. Perform the following tasks based on the root cause identified:

    • If the invalid record does contain a missing reference, correct the wrong information and then click Save. Alternatively, you can leave it as is if it is only historic data or you can click Delete to delete the record if you no longer need to keep it.
    • If the invalid record was caused by an inappropriate link or erddef definition, update the link or erddef definition.
    • Mark the corresponding relationship record so that it is skipped for future data reference checking. To do so, on the report details page of this relationship, click More or the More Actions menu and then select Skip Data Reference Check (see the following figure). If you open this relationship record from Relationship Manager, you will see the Enable Data Reference Check flag in the relationship is now turned off.