Troubleshooting invalid objects
A migration object has an invalid reference when it refers to objects that do not exist in IBM® Maximo® Real Estate and Facilities. You can resolve invalid object issues by using two methods.
Depending on the criticality, some invalid references are detected as errors, and others are shown as warnings. When such non-critical situations occur, the platform still imports the migration objects. However, it also logs warning messages to the Object Migration log file to indicate a missing object and where it is referenced.
Warnings do not stop the import from the proceeding and are considered less critical than errors. Only errors or invalid objects cause the import to fail. However, do not ignore warning messages. Warnings can lead to problems with your applications after you import. Make sure that you understand the cause of the warning before you continue.
The
warning message format consists of a name identifier of the object
that has the invalid reference, a name identifier of the missing object,
and how it is referenced. In order to help you quickly determine which
object is having an issue, the platform uses all available information
about an object to construct its name identifier. Usually an object’s
name identifier is combined with its module name, its business object
name (if any), and its name. For example, triCostItem_triPaymentLineItem_triPaymentOneTime form
name identifier consists of the module name (triCostItem),
business object name (triPaymentLineItem), and the
form name (triPaymentOneTime).
- Delete the problem object
- You can delete an object when it is displayed in the Objects panel by
checking its check box and clicking the Delete action in the
Objects panel. Blindly removing objects from the package can cause further
problems during validation and import.
For example, if you remove a new business object or module from the package and other objects in the package reference this business object, the next time you validate, these other objects become invalid.
- Fix the underlying problem and then validate the objects again.
- For example, if the problem is a missing business object, re-export the package that contains the missing business object. Or manually create the required business object in the target platform environment and run the validation again.
The following table is a partial list of the errors that can be flagged during validation.
| Object type | Brief error description | Error detail |
|---|---|---|
| Business Object | List does not exist. | The business object in the migration objects has a list field that refers to a list of values that does not exist in the migration objects or the target platform environment. |
| Business Object | Locator BO does not exist. | The business object in the migration objects has a locator field that references a business object that does not exist in the migration objects or in the target platform environment. |
| Business Object | Published name is missing. | The business object does not have name mapping information specified. |
| Business Object | [Object name] is invalid. Existing section data not valid. | This business object exists in both the migration objects and the target platform
environment. Both versions of the business object have a record section that is named xxx, but the
properties of the two versions of the section are different. The possible differences might include:
|
| Business Object | xxx is invalid. Reference BO does not exist. | This business object has a record section named xxx. The business object that is referenced by the xxx section does not exist in the migration objects or the target platform environment. |
| Form | Invalid BO. | This form in the migration object is based on a business object that does not exist in the migration objects or the target platform environment. |
| Workflow | Attach format file task’s source is missing. | This workflow in the migration objects contains an Attach Format File task that refers to a Document record that does not exist in the migration objects or the target platform environment. |
| Workflow | Call Validation Workflow on LI task's Source is missing. | This workflow in the migration objects contains a Call Workflow task that refers to another workflow that does not exist in the migration objects or the target platform environment. |
| Workflow | Query task’s Source is missing. | The workflow in the migration objects contains a Query task that refers to a query that does not exist in the migration objects or the target platform environment. |
If the target system contains more than one object with the same name (for example, a query at the module level and a query in one of the module’s business objects), a warning is written to the Object Migration log. The import process updates the object in the target system that has the lowest Id with the object from the import package.
The following text shows messages that are typically logged by the validation step.
Validation of the Test package begins
Business object validation
triProject_triCapitalProject business object is referencing to invalid object(s):
1) triNotificationAction_triInsuranceContractNotification as an associated
business object.
Form validation
triCostItem_triPaymentLineItem_triPaymentOneTime form is referencing to
invalid object(s):
1) triContract_Blank business object name_triRealEstateContract - Find -
List of Real Estate Lease and Owned Property as Find action popup query
of triRealEstateLeaseContract section of triGeneral tab.
Query validation
triContract_triRealEstateContract_triRealEstateContract - CRYSTAL -
Future Rent Obligations Detail query isvreferencing to invalid object(s):
1) \ROOT\TRIRIGA\Contract\Future Rent Obligation Detail_Document_Document
as an invalid crystal report template.
List validation
Manager validation
The validation is complete According to this sample Object Migration log, the validation step detected the following invalid references:
- The
triProject_triCapitalProjectbusiness object has an association with thetriNotificationAction_triInsuranceContractNotificationbusiness object, but such business object does not exist in the platform. As a result thetriProject_triCapitalProjectbusiness object is created without the association. - The
triCostItem_triPaymentLineItem_triPaymentOneTimeform references thetriRealEstateContract - Find - List of Real Estate Lease and Owned Propertyquery as its section popup query action. However, the query does not exist in the platform. The message also specifies the name of the referencing section, in this case, thetriRealEstateLeaseContractsection of thetriGeneraltab. - The
triContract_triRealEstateContract_triRealEstateContract - CRYSTAL - Future Rent Obligations DetailCrystal Report query references an invalid Crystal Report template.