ConnectorString | Category | SubCategory | FeatureName | FeatureDescription | supported | notes | CRF_LastChangedDate |
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Unknown | 02-Jul-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Unknown | 02-Jul-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Unknown | 02-Jul-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Unknown | 02-Jul-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Unknown | 02-Jul-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Unknown | 02-Jul-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Unknown | 02-Jul-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Unknown | 02-Jul-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Unknown | 02-Jul-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Unknown | 02-Jul-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Unknown | 02-Jul-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Unknown | 02-Jul-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Unknown | 02-Jul-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Unknown | 02-Jul-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Unknown | 02-Jul-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Unknown | 02-Jul-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Unknown | 02-Jul-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Unknown | 02-Jul-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Unknown | 02-Jul-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Unknown | 02-Jul-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Unknown | 02-Jul-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Unknown | 02-Jul-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Unknown | 02-Jul-03 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Unknown | 02-Jul-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Unknown | 02-Jul-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Unknown | 02-Jul-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Unknown | 02-Jul-03 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Unknown | 02-Jul-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Unknown | 02-Jul-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Unknown | 02-Jul-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Unknown | 02-Jul-03 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Unknown | 02-Jul-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Unknown | 02-Jul-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Unknown | 02-Jul-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Unknown | 02-Jul-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Unknown | 02-Jul-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Unknown | 02-Jul-03 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Unknown | 02-Jul-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Unknown | 02-Jul-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Unknown | 02-Jul-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Unknown | 02-Jul-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Unknown | 02-Jul-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 02-Jul-03 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 02-Jul-03 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Unknown | 02-Jul-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Unknown | 02-Jul-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Unknown | 02-Jul-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Unknown | 02-Jul-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Unknown | 02-Jul-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Unknown | 02-Jul-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Unknown | 02-Jul-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Unknown | 02-Jul-03 | ||||
Broadvision / | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Full | 17-Jul-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 17-Jul-00 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | 17-Jul-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 17-Jul-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 17-Jul-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 17-Jul-00 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Partial | The connector updates the status of the event in the event table and deletes the event. The trigger on the event table performs the archiving. | 17-Jul-00 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 17-Jul-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 17-Jul-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 17-Jul-00 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Full | 17-Jul-00 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 17-Jul-00 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Full | 17-Jul-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 17-Jul-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | No | 17-Jul-00 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | On update, all keys are included in the "where" clause. | 17-Jul-00 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Partial | Account and User Profile objects are handled by the separate business object handlers. They are still meta-data-driven, since attributes are not affected. | 17-Jul-00 | |||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | Used with UseDefaults only. | 17-Jul-00 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | No | 17-Jul-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 17-Jul-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 17-Jul-00 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Partial | 17-Jul-00 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | 17-Jul-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Partial | 09-Feb-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Partial | 09-Feb-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Partial | 09-Feb-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Partial | 09-Feb-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Partial | 09-Feb-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Partial | 09-Feb-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 17-Jul-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
N/A | 17-Jul-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 17-Jul-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Jul-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Partial | No transaction support for User Profile updates. | 17-Jul-00 | |||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | 17-Jul-00 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Partial | On Update, if the attribute is a container and keeprelations = false, all children are deleted. | 28-Nov-01 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 17-Jul-00 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | The connector uses the Delete API. The API performs physical deletes for all children and logical deletes for parents for CONTENT objects. | 17-Jul-00 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | No | 17-Jul-00 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 17-Jul-00 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Partial | Only for container attributes. Simple attribute names are significant. | 17-Jul-00 | |||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 17-Jul-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 17-Jul-00 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | For User Profile objects, this operation is not transactional. | 17-Jul-00 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 17-Jul-00 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | 17-Jul-00 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 17-Jul-00 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | 17-Jul-00 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Partial | On update, child verbs are always changed. | 28-Nov-01 | |||
Buyer / 3.1.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Unknown | 15-May-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Unknown | 15-May-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Unknown | 15-May-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Unknown | 15-May-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Unknown | 15-May-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Unknown | 15-May-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Unknown | 15-May-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Unknown | 15-May-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Unknown | 15-May-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Unknown | 15-May-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Unknown | 15-May-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Unknown | 15-May-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Unknown | 15-May-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Unknown | 15-May-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Unknown | 15-May-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Unknown | 15-May-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-May-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Unknown | 15-May-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-May-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-May-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Unknown | 15-May-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-May-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 15-May-03 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 15-May-03 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 15-May-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Unknown | 15-May-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Unknown | 15-May-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Unknown | 15-May-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Unknown | 15-May-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Unknown | 15-May-03 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Unknown | 15-May-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Unknown | 15-May-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Unknown | 15-May-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Unknown | 15-May-03 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Unknown | 15-May-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Unknown | 15-May-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Unknown | 15-May-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Unknown | 15-May-03 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Unknown | 15-May-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Unknown | 15-May-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Unknown | 15-May-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Unknown | 15-May-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Unknown | 15-May-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Unknown | 15-May-03 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Unknown | 15-May-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Unknown | 15-May-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Unknown | 15-May-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Unknown | 15-May-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Unknown | 15-May-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 15-May-03 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 15-May-03 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Unknown | 15-May-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Unknown | 15-May-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Unknown | 15-May-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Unknown | 15-May-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Unknown | 15-May-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Unknown | 15-May-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Unknown | 15-May-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Unknown | 15-May-03 | ||||
Clarify / 4.5.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 17-Jul-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | Currently it is not possible to limit the number of rows returned, so we select all rows, then only process PollQuantity of them. | 28-Mar-01 | |||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | 17-Jul-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 17-Jul-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Partial | Clarify_ is prepended to the Object_Name in the event table. | 17-Jul-00 | |||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 28-Mar-01 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 09-Mar-01 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 17-Jul-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 17-Jul-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
No | 17-Jul-00 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Full | 17-Jul-00 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | The connector fully supports this feature, in addition it can be configured at the business object level to only retrieve the top level object (see documentation of the RetrieveAll Application specific information on the Retrieve verb.) | 28-Mar-01 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 17-Jul-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Partial | The connector understands the PhysicalDelete verb, and it transforms this to the Delete verb before sending it to the InterChange Server. | 28-Mar-01 | |||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | Clarify makes full use of Foreign Key. | 09-Feb-01 | |||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Partial | The Clarify connector uses a complicated set of rules when dealing with the foreign Key property, please see the Section Business Object Attribute Properties, sub section Foreign Key Property, in the connector documentation. | 28-Mar-01 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | The first attribute must be marked Key in Clarify. | 28-Mar-01 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | Clarify ignores this field. However, if the size of a field passed into the connector is larger than the field in Clarify, the data is automatically truncated. | 07-Mar-01 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 17-Jul-00 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | Clarify uses the Required field with the Foreign Key field. | 09-Feb-01 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 17-Jul-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 17-Jul-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 17-Jul-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 17-Jul-00 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Partial | Tracing is supported; however, compliance with this standard needs to be reviewed. | 17-Jul-00 | |||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | Clarify uses generateMsg() for all tracing. | 17-Jul-00 | |||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 28-Mar-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 28-Mar-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Partial | 09-Feb-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Partial | 09-Feb-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Partial | 09-Feb-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Partial | 09-Feb-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 17-Jul-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
N/A | 17-Jul-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 17-Jul-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Jul-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 17-Jul-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | 17-Jul-00 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 17-Jul-00 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 17-Jul-00 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Partial | Clarify supports deletes by transforming them to updates. Physical deletes are not supported. | 17-Jul-00 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Partial | The connector transforms the Delete verb into the Update verb. This functionality will be deprecated in a future release. | 28-Mar-01 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Partial | The Exist verb is supported; however, the connector returns the whole top-level object. | 17-Jul-00 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 17-Jul-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | An old object, Clarify_Site, has a specific meaning and should not be used. | 28-Mar-01 | |||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Full | 17-Jul-00 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Full | 17-Jul-00 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Partial | The Clarify
connector supports RetrieveByContent; however, it has some
limitations: * All attributes must be marked as RetrieveByContent. * All marked attributes must be from the same table. See the Clarify connector documentation for more detail. |
17-Jul-00 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 17-Jul-00 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 17-Jul-00 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | 17-Jul-00 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 17-Jul-00 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Full | 17-Jul-00 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 17-Jul-00 | ||||
COM / 1.0.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Unknown | 15-Apr-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Unknown | 15-Apr-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Unknown | 15-Apr-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Unknown | 15-Apr-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Unknown | 15-Apr-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Unknown | 15-Apr-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Unknown | 15-Apr-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Unknown | 15-Apr-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Unknown | 15-Apr-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Unknown | 15-Apr-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Unknown | 15-Apr-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Unknown | 15-Apr-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Unknown | 15-Apr-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Unknown | 15-Apr-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Unknown | 15-Apr-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Unknown | 15-Apr-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-Apr-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Unknown | 15-Apr-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-Apr-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-Apr-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Unknown | 15-Apr-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-Apr-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 15-Apr-03 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 15-Apr-03 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 15-Apr-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Unknown | 15-Apr-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Unknown | 15-Apr-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Unknown | 15-Apr-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Unknown | 15-Apr-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Unknown | 15-Apr-03 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Unknown | 15-Apr-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Unknown | 15-Apr-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Unknown | 15-Apr-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Unknown | 15-Apr-03 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Unknown | 15-Apr-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Unknown | 15-Apr-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Unknown | 15-Apr-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Unknown | 15-Apr-03 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Unknown | 15-Apr-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Unknown | 15-Apr-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Unknown | 15-Apr-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Unknown | 15-Apr-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Unknown | 15-Apr-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Unknown | 15-Apr-03 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Unknown | 15-Apr-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Unknown | 15-Apr-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Unknown | 15-Apr-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Unknown | 15-Apr-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Unknown | 15-Apr-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 15-Apr-03 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 15-Apr-03 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Unknown | 15-Apr-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Unknown | 15-Apr-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Unknown | 15-Apr-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Unknown | 15-Apr-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Unknown | 15-Apr-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Unknown | 15-Apr-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Unknown | 15-Apr-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Unknown | 15-Apr-03 | ||||
CORBA / 1.0. | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Unknown | 02-Jul-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Unknown | 02-Jul-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Unknown | 02-Jul-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Unknown | 02-Jul-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Unknown | 02-Jul-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Unknown | 02-Jul-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Unknown | 02-Jul-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Unknown | 02-Jul-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Unknown | 02-Jul-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Unknown | 02-Jul-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Unknown | 02-Jul-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Unknown | 02-Jul-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Unknown | 02-Jul-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Unknown | 02-Jul-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Unknown | 02-Jul-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Unknown | 02-Jul-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Unknown | 02-Jul-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Unknown | 02-Jul-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Unknown | 02-Jul-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Unknown | 02-Jul-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Unknown | 02-Jul-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Unknown | 02-Jul-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Unknown | 02-Jul-03 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Unknown | 02-Jul-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Unknown | 02-Jul-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Unknown | 02-Jul-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Unknown | 02-Jul-03 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Unknown | 02-Jul-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Unknown | 02-Jul-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Unknown | 02-Jul-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Unknown | 02-Jul-03 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Unknown | 02-Jul-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Unknown | 02-Jul-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Unknown | 02-Jul-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Unknown | 02-Jul-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Unknown | 02-Jul-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Unknown | 02-Jul-03 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Unknown | 02-Jul-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Unknown | 02-Jul-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Unknown | 02-Jul-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Unknown | 02-Jul-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Unknown | 02-Jul-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 02-Jul-03 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 02-Jul-03 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Unknown | 02-Jul-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Unknown | 02-Jul-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Unknown | 02-Jul-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Unknown | 02-Jul-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Unknown | 02-Jul-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Unknown | 02-Jul-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Unknown | 02-Jul-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Unknown | 02-Jul-03 | ||||
Domino / 1.0. | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Unknown | 15-May-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Unknown | 15-May-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Unknown | 15-May-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Unknown | 15-May-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Unknown | 15-May-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Unknown | 15-May-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Unknown | 15-May-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Unknown | 15-May-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Unknown | 15-May-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Unknown | 15-May-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Unknown | 15-May-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Unknown | 15-May-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Unknown | 15-May-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Unknown | 15-May-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Unknown | 15-May-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Unknown | 15-May-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-May-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Unknown | 15-May-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-May-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-May-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Unknown | 15-May-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 15-May-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 15-May-03 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 15-May-03 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 15-May-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Unknown | 15-May-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Unknown | 15-May-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Unknown | 15-May-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Unknown | 15-May-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Unknown | 15-May-03 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Unknown | 15-May-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Unknown | 15-May-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Unknown | 15-May-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Unknown | 15-May-03 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Unknown | 15-May-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Unknown | 15-May-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Unknown | 15-May-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Unknown | 15-May-03 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Unknown | 15-May-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Unknown | 15-May-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Unknown | 15-May-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Unknown | 15-May-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Unknown | 15-May-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Unknown | 15-May-03 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Unknown | 15-May-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Unknown | 15-May-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Unknown | 15-May-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Unknown | 15-May-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Unknown | 15-May-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 15-May-03 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 15-May-03 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Unknown | 15-May-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Unknown | 15-May-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Unknown | 15-May-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Unknown | 15-May-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Unknown | 15-May-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Unknown | 15-May-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Unknown | 15-May-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Unknown | 15-May-03 | ||||
Email / 5.1.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | N/A | 02-Aug-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 02-Aug-00 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Partial | Event status is given by the combination of the IMAP SEEN flag set on the message and the folder of the poll location in which message is located. A message is in READY_FOR_POLL state, if SEEN flag is not set and message is in poll folder. IN_PROGRESS sta | 02-Aug-00 | |||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 02-Aug-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 02-Aug-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | N/A | Connector picks the emails from a poll location in the order of their time of arrival in the poll folder. Moreover the poll locations are polled in round robin fashion. | 02-Aug-00 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Partial | Connector archives the successful events in a poll location, by moving the emails from poll folder to archive folder. The failed events are archived, by moving the emails from poll folder to fail folder. Emails containing unsubscribed events are also trea | 02-Aug-00 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 02-Aug-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | N/A | 02-Aug-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | The sequence is based on time of arrival of messages in the poll folder. | 02-Aug-00 | |||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | N/A | 02-Aug-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Partial | Connector performs event recovery from a poll location based on the attribute value of EventRecovery attribute of the meta object for that poll location. This attribute can have RESUBMIT, IGNORE and ERROR. Based on this connector will either resubmit the | 02-Aug-00 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | 02-Aug-00 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | Connector has no such property. | 02-Aug-00 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | N/A | 02-Aug-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | Connector sends a business object with same verb as found in the attachment of the email message. | 02-Aug-00 | |||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 02-Aug-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 02-Aug-00 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 02-Aug-00 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 02-Aug-00 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | The connector can process a business object that has the required attributes. These attributes are RecipientName, MessageSubject, MessageContent and FromAddress. | 02-Aug-00 | |||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | Connector uses this property for attributes of type string. If the required is set, connector sets the default value if the value for this attribute is null. | 28-Nov-01 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 02-Aug-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | The connector sends the return code FAIL (CxStatusConstants.FAIL). | 02-Aug-00 | |||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 02-Aug-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | No | 02-Aug-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | No | 02-Aug-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | No | 02-Aug-00 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 02-Aug-00 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 02-Aug-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 07-Aug-00 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 07-Aug-00 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 07-Aug-00 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 07-Aug-00 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 07-Aug-00 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 07-Aug-00 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 02-Aug-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 02-Aug-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 02-Aug-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 02-Aug-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | N/A | 02-Aug-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | N/A | 02-Aug-00 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | 02-Aug-00 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | Connector composes an email, using the BO received during Service call Request processing. Connector converts all the child BOs to attachments. The attributes of type string specify the file name. Connector also attaches the file to the email. | 28-Nov-01 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Connector does not support the Delete verb. | 09-Feb-01 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | 02-Aug-00 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Connector does not supports this verb. | 02-Aug-00 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | No | Attribute names have semantic value to the connector. They provide the routing information to the connector. | 02-Aug-00 | |||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Partial | Business object names have no semantic value to the connector. But the connector can process the business objects that have attributes with the name RecipientName, FromAddress, MessageContent, MessageAttachment, and MessageSubject. | 02-Aug-00 | |||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Connector does not supports this. | 02-Aug-00 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Connector does not supports this. | 02-Aug-00 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | Connector does not supports this. | 02-Aug-00 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | Connector does not supports this. | 02-Aug-00 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | Connector does not supports Update verb. | 02-Aug-00 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | Connector does not supports update verb. | 02-Aug-00 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | Connector does not supports this. | 02-Aug-00 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Connector does not supports this verb. | 02-Aug-00 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | Connector just converts the child BO to string and retains the verbs of child BOs. This behavior is irrespective of the verb set on child BO. | 02-Aug-00 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Partial | Connector only supports Create verb. It returns failure for all other verbs. The connector retains the verbs of child BOs. | 02-Aug-00 | |||
eMatrix / 2.0.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Full | 22-May-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 22-May-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | 22-May-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | No | 22-May-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 22-May-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 22-May-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Events archived in ematrix system. | 22-May-03 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 22-May-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 22-May-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 22-May-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 22-May-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 22-May-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Full | 22-May-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 22-May-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 22-May-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 22-May-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 06-Nov-02 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | No | 22-May-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 06-Nov-02 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 22-May-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 06-Nov-02 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 18-Nov-02 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | on each poll connector will check for connection | 22-May-03 | |||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | If a connection is lost in the middle of a request the connector will not detect it. However. The connector checks for connections at the beginning of each request. | 22-May-03 | |||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | If a connection is lost in the middle of a request the connector will not detect it. However. The connector checks for connections at the beginning of each request. | 22-May-03 | |||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | The servlet uses the configured password when logging into Ematrix. | 18-Nov-02 | |||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | The servlet uses the configured username when logging into Ematrix. | 18-Nov-02 | |||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 06-Nov-02 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 06-Nov-02 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 06-Nov-02 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | left to high level CDK | 22-May-03 | |||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | pollForEvents left to high level cdk. | 28-May-03 | |||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Partial | Only one bo handler. Therefore it is not explicitly identified in the trace info. | 28-May-03 | |||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Partial | Every time a child bo is encountered information is added to the trace output. When a new child bo is created no new info is added to the trace output. | 28-May-03 | |||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Partial | ASI information is not printed out | 28-May-03 | |||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | Handled by infrastructure or CDK. | 22-May-03 | |||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 22-May-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | uses the new std. "com.ibm.wbia.adapter.xxx" | 22-May-03 | |||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 06-Nov-02 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 22-May-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 22-May-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | 22-May-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 22-May-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 22-May-03 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | 22-May-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | logical delete is not supported by the connector. | 22-May-03 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Full | 22-May-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 22-May-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 06-Nov-02 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | This feature has been added to the code. However it has not been tested. It can easily be enabled for a future relaease. | 22-May-03 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | This feature has been added to the code. However it has not been tested. It can easily be enabled for a future relaease. | 22-May-03 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Full | 22-May-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Full | 22-May-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 22-May-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 06-Nov-02 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | 22-May-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 22-May-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | The connector does not process child objects based on their own verbs. All verbs of child objects are ignored. | 06-Nov-02 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 18-Nov-02 | ||||
Exchange / 1. | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Unknown | 16-Apr-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Unknown | 16-Apr-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Unknown | 16-Apr-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Unknown | 16-Apr-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Unknown | 16-Apr-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Unknown | 16-Apr-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Unknown | 16-Apr-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Unknown | 16-Apr-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Unknown | 16-Apr-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Unknown | 16-Apr-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Unknown | 16-Apr-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Unknown | 16-Apr-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Unknown | 16-Apr-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Unknown | 16-Apr-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Unknown | 16-Apr-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Unknown | 16-Apr-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 16-Apr-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Unknown | 16-Apr-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 16-Apr-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 16-Apr-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Unknown | 16-Apr-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 16-Apr-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 16-Apr-03 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 16-Apr-03 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 16-Apr-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Unknown | 16-Apr-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Unknown | 16-Apr-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Unknown | 16-Apr-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Unknown | 16-Apr-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Unknown | 16-Apr-03 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Unknown | 16-Apr-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Unknown | 16-Apr-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Unknown | 16-Apr-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Unknown | 16-Apr-03 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Unknown | 16-Apr-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Unknown | 16-Apr-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Unknown | 16-Apr-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Unknown | 16-Apr-03 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Unknown | 16-Apr-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Unknown | 16-Apr-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Unknown | 16-Apr-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Unknown | 16-Apr-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Unknown | 16-Apr-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Unknown | 16-Apr-03 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Unknown | 16-Apr-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Unknown | 16-Apr-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Unknown | 16-Apr-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Unknown | 16-Apr-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Unknown | 16-Apr-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 16-Apr-03 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 16-Apr-03 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Unknown | 16-Apr-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Unknown | 16-Apr-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Unknown | 16-Apr-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Unknown | 16-Apr-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Unknown | 16-Apr-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Unknown | 16-Apr-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Unknown | 16-Apr-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Unknown | 16-Apr-03 | ||||
FIX / 1.6.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 19-Mar-02 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 19-Mar-02 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 19-Mar-02 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 19-Mar-02 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 19-Mar-02 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | No | 19-Mar-02 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Partial | 19-Mar-02 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 19-Mar-02 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | N/A | 19-Mar-02 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | N/A | 19-Mar-02 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 19-Mar-02 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 19-Mar-02 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | 19-Mar-02 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 19-Mar-02 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | N/A | 19-Mar-02 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | 19-Mar-02 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 19-Mar-02 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 19-Mar-02 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 19-Mar-02 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 19-Mar-02 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 19-Mar-02 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This property is used to determine the response taken after validating the field. | 19-Mar-02 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 19-Mar-02 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 19-Mar-02 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 19-Mar-02 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | N/A | 19-Mar-02 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | N/A | 19-Mar-02 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | No | 19-Mar-02 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 19-Mar-02 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 19-Mar-02 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Partial | 19-Mar-02 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Partial | 19-Mar-02 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Partial | 19-Mar-02 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Partial | 19-Mar-02 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Partial | 19-Mar-02 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Partial | 19-Mar-02 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Partial | 19-Mar-02 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 19-Mar-02 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 19-Mar-02 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 19-Mar-02 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 19-Mar-02 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | N/A | 19-Mar-02 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 19-Mar-02 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 19-Mar-02 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | 19-Mar-02 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | 19-Mar-02 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | 19-Mar-02 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 19-Mar-02 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 19-Mar-02 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 19-Mar-02 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 19-Mar-02 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 19-Mar-02 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 19-Mar-02 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | 19-Mar-02 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 19-Mar-02 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | 19-Mar-02 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | 19-Mar-02 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | 19-Mar-02 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 19-Mar-02 | ||||
Healthcare / 1. | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Unknown | 02-Jul-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Unknown | 02-Jul-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Unknown | 02-Jul-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Unknown | 02-Jul-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Unknown | 02-Jul-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Unknown | 02-Jul-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Unknown | 02-Jul-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Unknown | 02-Jul-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Unknown | 02-Jul-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Unknown | 02-Jul-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Unknown | 02-Jul-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Unknown | 02-Jul-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Unknown | 02-Jul-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Unknown | 02-Jul-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Unknown | 02-Jul-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Unknown | 02-Jul-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Unknown | 02-Jul-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Unknown | 02-Jul-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Unknown | 02-Jul-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Unknown | 02-Jul-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Unknown | 02-Jul-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Unknown | 02-Jul-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Unknown | 02-Jul-03 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Unknown | 02-Jul-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Unknown | 02-Jul-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Unknown | 02-Jul-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Unknown | 02-Jul-03 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Unknown | 02-Jul-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Unknown | 02-Jul-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Unknown | 02-Jul-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Unknown | 02-Jul-03 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Unknown | 02-Jul-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Unknown | 02-Jul-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Unknown | 02-Jul-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Unknown | 02-Jul-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Unknown | 02-Jul-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Unknown | 02-Jul-03 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Unknown | 02-Jul-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Unknown | 02-Jul-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Unknown | 02-Jul-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Unknown | 02-Jul-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Unknown | 02-Jul-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 02-Jul-03 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 02-Jul-03 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Unknown | 02-Jul-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Unknown | 02-Jul-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Unknown | 02-Jul-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Unknown | 02-Jul-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Unknown | 02-Jul-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Unknown | 02-Jul-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Unknown | 02-Jul-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Unknown | 02-Jul-03 | ||||
i2 / 1.1.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 16-Sep-02 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | The connector checks the output of each registered operation PollQuantity number of times. | 16-Sep-02 | |||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 16-Sep-02 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 16-Sep-02 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 16-Sep-02 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | N/A | The connector listens to each operation output PollQuantity number of times. | 16-Sep-02 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
N/A | The events are not archived and the events are lost once they reach the connector for processing. | 16-Sep-02 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 16-Sep-02 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Full | An operation needs to be created which handles the same, the connector handles this operation. | 16-Sep-02 | |||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | N/A | 16-Sep-02 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 16-Sep-02 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
N/A | 16-Sep-02 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | The incoming business object is converted to XML as is and sent across for any operation. | 16-Sep-02 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | No | There is no retrieval done. The incoming record is converted to XML and then to IBM business object. | 16-Sep-02 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Full | 16-Sep-02 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 16-Sep-02 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 16-Sep-02 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | No validations are done by the connector. | 16-Sep-02 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | The connector does not validate the XML messages. | 16-Sep-02 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | N/A | 16-Sep-02 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 16-Sep-02 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | If set to true on the child attribute, the child is the child is expected to have a representation in the parent business object. | 16-Sep-02 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | The connector returns APPRESPONSETIMEOUT only when it fails to register all the operations or fails to create a connection, else the polling continues after a fatal message is logged for email triggering giving information on the failed poll call. | 25-Jun-03 | |||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | A fatal error is logged to trigger email notification and the connector returns a FAIL. | 16-Sep-02 | |||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 16-Sep-02 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 25-Jun-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 25-Jun-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | No | There is no validation of the business objects by the connector. I2 validates the xml sent from the connector as input. No call to initAndValidateAttributes. | 16-Sep-02 | |||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 16-Sep-02 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | 16-Sep-02 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 16-Sep-02 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 16-Sep-02 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 16-Sep-02 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | N/A | 23-Oct-02 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 23-Oct-02 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 16-Sep-02 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | WBIA API methods generateAndTrace and generateAndLogMsgs are used. | 16-Sep-02 | |||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 16-Sep-02 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 16-Sep-02 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 16-Sep-02 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | N/A | There is no transaction support in i2. | 16-Sep-02 | |||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | Empty double
quotation marks (“”) in an XML document are used
as the PCDATA equivalent of CxBlank. |
16-Sep-02 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | No XML is generated for CxIgnore attributes. | 16-Sep-02 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | But, there is no real Create verb, but an operation that creates a record in i2. | 16-Sep-02 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | This is again operation specific. | 16-Sep-02 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | 16-Sep-02 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 16-Sep-02 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Partial | MO_Instance is the standard used to represent the meta object containing the Instance Id in any wrapper business object. | 16-Sep-02 | |||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 16-Sep-02 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 16-Sep-02 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 16-Sep-02 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | There is only one output type per operation. | 16-Sep-02 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | 16-Sep-02 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 16-Sep-02 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 16-Sep-02 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | 16-Sep-02 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | This is decided by the operation for retrieval. | 16-Sep-02 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | N/A | The verbs are operations that are valid for the entire wrapper business object. The children are essentially the input and output types for the operation and they have no existence without the operation. | 16-Sep-02 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 16-Sep-02 | ||||
i2ADW / 2.3.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Full | 31-Jan-01 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 31-Jan-01 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | 31-Jan-01 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 28-Nov-01 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 31-Jan-01 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 31-Jan-01 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 31-Jan-01 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 31-Jan-01 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 31-Jan-01 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 31-Jan-01 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 31-Jan-01 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Partial | The connector converts all In-Progress events to Ready For Poll events and continues processing. | 31-Jan-01 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Full | 31-Jan-01 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 31-Jan-01 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Full | Although the connector does not have a set of triggers, it has scripts written for the event table and archive table, and an event package to handle insertion of events into the event table. This event package implements smart filtering. | 18-Apr-01 | |||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 31-Jan-01 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 18-Apr-01 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Full | 18-Apr-01 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This attribute is used to retrieve records based on unique values. | 09-Feb-01 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 31-Jan-01 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 31-Jan-01 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This attribute is used to determine if an attribute is required. | 09-Feb-01 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 28-Nov-01 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 28-Nov-01 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 31-Jan-01 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 31-Jan-01 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 31-Jan-01 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 31-Jan-01 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 31-Jan-01 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | 31-Jan-01 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 31-Jan-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 31-Jan-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 31-Jan-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 31-Jan-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 31-Jan-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 31-Jan-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 31-Jan-01 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 31-Jan-01 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 31-Jan-01 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 31-Jan-01 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 31-Jan-01 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | No | 31-Jan-01 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 31-Jan-01 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 31-Jan-01 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | 18-Apr-01 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Partial | Logical delete is supported only on container objects; it is done via the Update verb. | 31-Jan-01 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 31-Jan-01 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 31-Jan-01 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 31-Jan-01 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 31-Jan-01 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 31-Jan-01 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Full | 31-Jan-01 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Full | RetrieveByContent based solely on non-key attributes is done only at the parent object level. All child objects are retrieved based on key values obtained during parent object retrieval. | 18-Apr-01 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 31-Jan-01 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 31-Jan-01 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | 18-Apr-01 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 31-Jan-01 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Full | The connector does not support processing of verbs in child objects. If the verb in the child is null, the child inherits the verb from the parent object. | 31-Jan-01 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 31-Jan-01 | ||||
iSeries / 1.0.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 16-Jun-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | N/A | 16-Jun-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 09-Jul-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | No | 16-Jun-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 09-Jul-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | N/A | 09-Jul-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
N/A | 09-Jul-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | No | 16-Jun-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 16-Jun-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | No | 16-Jun-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 16-Jun-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
No | 16-Jun-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | 16-Jun-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | 09-Jul-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 16-Jun-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | 16-Jun-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 16-Jun-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 16-Jun-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 16-Jun-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | The connector takes the length of the program parameter to be MaxLength. If the value of the attribute is less than maxlength, the value is padded with spaces. If the length of the attribute value is greater, the same is truncated to maxlength. | 09-Jul-03 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 16-Jun-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 16-Jun-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | N/A | 16-Jun-03 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 16-Jun-03 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 16-Jun-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | N/A | 16-Jun-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | N/A | 16-Jun-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | initAndValidateAttributes is called for CALLRPG verb. | 09-Jul-03 | |||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 16-Jun-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 16-Jun-03 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 16-Jun-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 16-Jun-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 16-Jun-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 16-Jun-03 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 16-Jun-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 16-Jun-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 16-Jun-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 16-Jun-03 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 16-Jun-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 16-Jun-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | N/A | 16-Jun-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | N/A | 16-Jun-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | 16-Jun-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | Only verb supported is CALLRPG to invoke the RPG programs on the iSeries system. | 09-Jul-03 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | 09-Jul-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | No | 16-Jun-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | 09-Jul-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 16-Jun-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 16-Jun-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 09-Jul-03 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 09-Jul-03 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | 09-Jul-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | 09-Jul-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | No | 16-Jun-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 16-Jun-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | No | 16-Jun-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | 09-Jul-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | 09-Jul-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 16-Jun-03 | ||||
iSoft / 1.2.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 06-Nov-02 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 06-Nov-02 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | Adapter does not have event table. | 18-Nov-02 | |||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 06-Nov-02 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | Adapter does not have event table. | 18-Nov-02 | |||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | Connector retrieves messages based on the priority specified in their message header (range 0-9). See MQSeries documentation for more information. | 06-Nov-02 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Connector can deliver copies of messages to different queues depending on whether the message was unsubscribed, was successfully processed, or resulted in errors. | 06-Nov-02 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 06-Nov-02 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 06-Nov-02 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 06-Nov-02 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 06-Nov-02 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 06-Nov-02 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | 18-Nov-02 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | 18-Nov-02 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 06-Nov-02 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | Adapter does not have event table. | 18-Nov-02 | |||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 06-Nov-02 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 18-Nov-02 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 06-Nov-02 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | May be used by DataHandler chosen for connector. | 06-Nov-02 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 06-Nov-02 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 06-Nov-02 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 18-Nov-02 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 06-Nov-02 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 06-Nov-02 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | No | P2PAgent does not have authorization via MQSeries. Password is ignored. | 18-Nov-02 | |||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Partial | Messages sent to P2PAgent are sent under authority of this user. | 18-Nov-02 | |||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 18-Nov-02 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 06-Nov-02 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 06-Nov-02 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 06-Nov-02 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 06-Nov-02 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 06-Nov-02 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 06-Nov-02 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 06-Nov-02 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 06-Nov-02 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 06-Nov-02 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 06-Nov-02 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 06-Nov-02 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 06-Nov-02 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | If adapter encounters an error while putting message in queue, it will rollback the delivery. | 18-Nov-02 | |||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depends on DataHandler chosen for the connector | 06-Nov-02 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | 18-Nov-02 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | Connector simply sends message to P2PAgent. | 18-Nov-02 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Connector simply sends message to P2PAgent. | 18-Nov-02 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | Support is entirely dependent on application receiving connector request. | 06-Nov-02 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Connector simply sends message to P2PAgent. | 18-Nov-02 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 06-Nov-02 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 06-Nov-02 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 18-Nov-02 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 18-Nov-02 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | 18-Nov-02 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | Connector simply sends message to P2PAgent. | 18-Nov-02 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | 18-Nov-02 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | 18-Nov-02 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | 18-Nov-02 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Connector simply sends message to P2PAgent. | 18-Nov-02 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Partial | Depends on DataHandler chosen for the connector. | 19-May-03 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 06-Nov-02 | ||||
JDBC / 2.3.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Full | 17-Jul-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 17-Jul-00 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | 17-Jul-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 28-Nov-01 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 17-Jul-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 17-Jul-00 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 09-Apr-01 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 17-Jul-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 17-Jul-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Partial | The connector converts all In-Progress events to Ready For Poll events and continues processing. | 17-Jul-00 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Full | 17-Jul-00 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 17-Jul-00 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Full | Although the JDBC connector does not have a set of triggers, it has scripts written for the event table and archive table, and an event package to handle insertion of events into the event table. This event package implements smart filtering. | 09-Apr-01 | |||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 17-Jul-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | JDBC connector uses this in combination with the ASI of an attribute while setting FK attribute values. | 09-Apr-01 | |||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Full | The connector sets the FK attribute value ot appropriate Primary key values. | 09-Apr-01 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This attribute is used to retrieve records based on unique values. | 09-Feb-01 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 17-Jul-00 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This attribute is used to determine if an attribute is required. | 09-Feb-01 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 28-Nov-01 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 28-Nov-01 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 17-Jul-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 17-Jul-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 17-Jul-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 17-Jul-00 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 17-Jul-00 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | 17-Jul-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 07-Aug-00 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 07-Aug-00 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 07-Aug-00 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 07-Aug-00 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 07-Aug-00 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 07-Aug-00 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 17-Jul-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 17-Jul-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 17-Jul-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Jul-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 17-Jul-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | No | 17-Jul-00 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 17-Jul-00 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 17-Jul-00 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | The connector either performa physical delete or logical delete based on a special parameter in the ASI of the BO. | 09-Apr-01 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Partial | Logical delete is supported with Update as well as Delete verbs depending upon the Business Object ASI. | 16-Apr-01 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 17-Jul-00 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 17-Jul-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 17-Jul-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Full | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Full | RetrieveByContent based solely on non-key attributes is done only at the parent object level. All child objects are retrieved based on key values obtained during parent object retrieval. | 16-Apr-01 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | The JDBC connector does not make use of Foreign Key. | 17-Jul-00 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 17-Jul-00 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | The child objects that are not present in the incoming object are deleted in order of their appearance. | 09-Apr-01 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 17-Jul-00 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Full | The connector does not support processing of verbs in child objects. If the verb in the child is null, the child inherits the verb from the parent object. | 17-Jul-00 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 17-Jul-00 | ||||
JMS / 2.4.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 04-Oct-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 04-Oct-00 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 04-Oct-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 04-Oct-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 04-Oct-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | Connector retrieves messages based on the priority specified in their message header (range 0-9). See Java JMS specification for more information. | 04-Oct-00 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Connector can deliver copies of messages to different queues depending on whether the message was unsubscribed, was successfully processed, or resulted in errors. | 10-Oct-00 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 04-Oct-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 04-Oct-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 04-Oct-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 04-Oct-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 04-Oct-00 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 04-Oct-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | 04-Oct-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 04-Oct-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 04-Oct-00 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | May be used by data handler chosen for connector. | 10-Oct-00 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 04-Oct-00 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 04-Oct-00 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | Depends on underlying JMS provider. | 18-Nov-02 | |||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | Depends on underlying JMS provider. | 18-Nov-02 | |||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 04-Oct-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | No | Security provided by JNDI. | 10-Oct-00 | |||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | No | Identification provided by JNDI. | 10-Oct-00 | |||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 17-Feb-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 04-Oct-00 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 04-Oct-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 04-Oct-00 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 04-Oct-00 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 04-Oct-00 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 04-Oct-00 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 04-Oct-00 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 04-Oct-00 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 04-Oct-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 04-Oct-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 04-Oct-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 04-Oct-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 04-Oct-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depends on data handler chosen for the connector. | 10-Oct-00 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 04-Oct-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 04-Oct-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | The connector supports RetrieveByContent verb in full when using synchronous request/response. | 04-Oct-00 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Partial | Depends on data handler chosen for the connector. | 10-Oct-00 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 04-Oct-00 | ||||
JText / 5.3.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | Not supported. | 17-Jul-00 | |||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | The connector submits UPTO PollQuantity business object each poll cycle. | 17-Jul-00 | |||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 17-Jul-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | No | 17-Jul-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 17-Jul-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | N/A | 17-Jul-00 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | If a file is processed successfully, it is archived with the .success extension and moved into the Archive directory. If any of the records in a file are not processed successfully then .fail, .unsub, .partial, .orig and/or .success archive files may be | 28-Mar-01 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | Only POLL thread makes this call. | 17-Jul-00 | |||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Partial | 17-Jul-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Partial | 17-Jul-00 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | 17-Jul-00 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | 17-Jul-00 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Partial | Duplication is checked using the filename and time stamp. Files matching both properties in the event table are not picked up. But there is no checking for event duplication at the business object level. | 17-Jul-00 | |||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 17-Jul-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 17-Jul-00 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | This attribute applies when formatting business objects to fixed-sized records. | 17-Jul-00 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | The JText connector supports any business objects supported by CrossWorlds. However, some formatters and data handlers have specific requirements for application text, business object structure, and so on. If these formatters or data handlers are used, on | 17-Jul-00 | |||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | 17-Jul-00 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | 17-Jul-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | In certain conditions (such as failing to connect to a remote FTP server), JText sends APPRESPONSE_TIMEOUT. | 13-Feb-03 | |||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | In certain conditions (such as an IO Exception), JText sends APPRESPONSE_TIMEOUT. | 13-Feb-03 | |||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | No | 17-Jul-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | No | 17-Jul-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | The JText Connector actually calls initAndValidateAttributes() for all verbs because regardless of the verb, the connector is always creating a file while request processing. | 13-Feb-03 | |||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 05-Oct-00 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | All trace messages are hard-coded. | 17-Jul-00 | |||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Partial | 09-Feb-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Partial | 09-Feb-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Partial | 09-Feb-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Partial | 09-Feb-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Partial | 09-Feb-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Partial | 09-Feb-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | No | 17-Jul-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 17-Jul-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | All known error conditions are taken care of. | 17-Jul-00 | |||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 29-May-01 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | N/A | 17-Jul-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | No | 17-Jul-00 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 17-Jul-00 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | 17-Jul-00 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | 17-Jul-00 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | The connector does not delete files from disk. | 17-Jul-00 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | The connector deals with business objects and files. It does not check for the existence of an entity in an application database. | 17-Jul-00 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 17-Jul-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | No | The connector uses business object names; they dictate how the connector should format them. | 17-Jul-00 | |||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 17-Jul-00 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 17-Jul-00 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | 17-Jul-00 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | 17-Jul-00 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | 17-Jul-00 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | 17-Jul-00 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | The connector does not support the Retrieve verb. It always returns FAIL, to be consistent with other connectors. | 17-Jul-00 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | N/A | 17-Jul-00 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | N/A | The connector does not return any business objects during a Service call request operation. Business objects are written to disk. The JText connector ignores verbs as long as they are not null. | 28-Nov-01 | |||
MCS / 2.3.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Full | 15-Oct-01 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 15-Oct-01 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | 15-Oct-01 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 28-Nov-01 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 15-Oct-01 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 15-Oct-01 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 15-Oct-01 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 15-Oct-01 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 15-Oct-01 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 15-Oct-01 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 15-Oct-01 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Partial | The connector converts all In-Progress events to Ready For Poll events and continues processing. | 15-Oct-01 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Full | 15-Oct-01 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 15-Oct-01 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Full | Although the JDBC connector does not have a set of triggers, it has scripts written for the event table and archive table, and an event package to handle insertion of events into the event table. This event package implements smart filtering. | 15-Oct-01 | |||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 15-Oct-01 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | JDBC connector uses this in combination with the ASI of an attribute while setting FK attribute values. | 15-Oct-01 | |||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Full | The connector sets the FK attribute value ot appropriate Primary key values. | 15-Oct-01 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This attribute is used to retrieve records based on unique values. | 15-Oct-01 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 15-Oct-01 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 15-Oct-01 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This attribute is used to determine if an attribute is required. | 15-Oct-01 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 28-Nov-01 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 28-Nov-01 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 15-Oct-01 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 15-Oct-01 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 15-Oct-01 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 15-Oct-01 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 15-Oct-01 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | 15-Oct-01 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 15-Oct-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 15-Oct-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 15-Oct-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 15-Oct-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 15-Oct-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 15-Oct-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 15-Oct-01 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 15-Oct-01 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 15-Oct-01 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 15-Oct-01 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 15-Oct-01 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | No | 15-Oct-01 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 15-Oct-01 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 15-Oct-01 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | The connector either performa physical delete or logical delete based on a special parameter in the ASI of the BO. | 15-Oct-01 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Partial | Logical delete is supported with Update as well as Delete verbs depending upon the Business Object ASI. | 15-Oct-01 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 15-Oct-01 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 15-Oct-01 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 15-Oct-01 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 15-Oct-01 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 15-Oct-01 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Full | 15-Oct-01 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Full | RetrieveByContent based solely on non-key attributes is done only at the parent object level. All child objects are retrieved based on key values obtained during parent object retrieval. | 15-Oct-01 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | The JDBC connector does not make use of Foreign Key. | 15-Oct-01 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 15-Oct-01 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | The child objects that are not present in the incoming object are deleted in order of their appearance. | 15-Oct-01 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 15-Oct-01 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Full | The connector does not support processing of verbs in child objects. If the verb in the child is null, the child inherits the verb from the parent object. | 15-Oct-01 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 15-Oct-01 | ||||
MetaSolv / 2. | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Partial | 27-Sep-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 13-Sep-00 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | 13-Sep-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 13-Sep-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 13-Sep-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 13-Sep-00 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 13-Sep-00 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 13-Sep-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | No | 17-Jul-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 27-Sep-00 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | 17-Jul-00 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 13-Sep-00 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | N/A | 04-Oct-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 13-Sep-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | No | 17-Jul-00 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 09-Feb-01 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 09-Feb-01 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 17-Jul-00 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 09-Feb-01 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 13-Sep-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 17-Jul-00 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 17-Jul-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 17-Jul-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 17-Jul-00 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Partial | The connector supports all tracing, with the following modifications: level 3=process of business object subobject method entry and exit, level 4=processing attribute, level 5=loading classes. | 17-Jul-00 | |||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | 17-Jul-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Partial | 09-Feb-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Partial | 09-Feb-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Partial | 09-Feb-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Partial | 09-Feb-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Partial | 09-Feb-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Partial | 09-Feb-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 17-Jul-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 17-Jul-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | What is logged depends on the trace level. | 27-Sep-00 | |||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Jul-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 17-Jul-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | No | 04-Oct-00 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | Connector will ignore the attribute with the value CxIgnore | 04-Oct-00 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 14-Sep-00 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Application does not support delete. | 10-Oct-00 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | No | 17-Jul-00 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | 14-Sep-00 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 17-Jul-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 17-Jul-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | The Metasolv application does not accept some objects if all children are not present. An example is Account, which is not created unless the billing/service category and address are present. | 17-Jul-00 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | The Metasolv application does not accept some objects if all children are not present. An example is Account, which is not created unless the billing/service category and address are present. | 17-Jul-00 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 17-Jul-00 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 17-Jul-00 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 17-Jul-00 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | No | 17-Jul-00 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 14-Sep-00 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | N/A | 14-Sep-00 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 13-Sep-00 | ||||
OracleApps / | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Full | 13-Feb-01 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 13-Feb-01 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | 13-Feb-01 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 28-Nov-01 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 13-Feb-01 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 13-Feb-01 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 13-Feb-01 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 13-Feb-01 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 13-Feb-01 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 13-Feb-01 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 13-Feb-01 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Partial | The connector converts all In-Progress events to Ready For Poll events and continues processing. | 13-Feb-01 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Full | 13-Feb-01 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 13-Feb-01 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Full | Although the connector does not have a set of triggers, it has scripts written for the event table and archive table, and an event package to handle insertion of events into the event table. This event package implements smart filtering. | 18-Apr-01 | |||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 13-Feb-01 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 18-Apr-01 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Full | 18-Apr-01 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This attribute is used to retrieve records based on unique values. | 13-Feb-01 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 13-Feb-01 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 13-Feb-01 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This attribute is used to determine if an attribute is required. | 13-Feb-01 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 28-Nov-01 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 28-Nov-01 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 13-Feb-01 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 13-Feb-01 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 13-Feb-01 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 13-Feb-01 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 13-Feb-01 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | 13-Feb-01 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 13-Feb-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 13-Feb-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 13-Feb-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 13-Feb-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 13-Feb-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 13-Feb-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 13-Feb-01 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 13-Feb-01 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 13-Feb-01 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 13-Feb-01 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 13-Feb-01 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | No | 13-Feb-01 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 13-Feb-01 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 13-Feb-01 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | 18-Apr-01 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Partial | Logical delete is supported only on container objects; it is done via the Update verb. | 13-Feb-01 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 13-Feb-01 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 13-Feb-01 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 13-Feb-01 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 13-Feb-01 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 13-Feb-01 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Full | 13-Feb-01 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Full | RetrieveByContent based solely on non-key attributes is done only at the parent object level. All child objects are retrieved based on key values obtained during parent object retrieval. | 18-Apr-01 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | The connector does not make use of Foreign Key. | 13-Feb-01 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 13-Feb-01 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | 18-Apr-01 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 13-Feb-01 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Full | The connector does not support processing of verbs in child objects. If the verb in the child is null, the child inherits the verb from the parent object. | 13-Feb-01 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 13-Feb-01 | ||||
Peoplesoft / 2 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Full | 08-Aug-01 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 02-Feb-01 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | 08-Aug-01 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 08-Aug-01 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 08-Aug-01 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | No | 08-Aug-01 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 16-Jun-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 08-Aug-01 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 08-Aug-01 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 08-Aug-01 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | N/A | 26-Feb-01 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 08-Aug-01 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | 08-Aug-01 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 08-Aug-01 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | This logic will be added to the Connector. | 08-Aug-01 | |||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 08-Aug-01 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 08-Aug-01 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | No | 08-Aug-01 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 08-Aug-01 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | N/A | 08-Aug-01 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | This connector is designed to process any business object that is defined as a valid Component Interface within PeopleSoft 8. | 02-Feb-01 | |||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 08-Aug-01 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 02-Feb-01 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 02-Feb-01 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 16-Jun-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 08-Aug-01 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 08-Aug-01 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 26-Feb-01 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 08-Aug-01 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 02-Feb-01 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 02-Feb-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 02-Feb-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 02-Feb-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 08-Aug-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 02-Feb-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 02-Feb-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 08-Aug-01 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full |
com.crossworlds.connectors.peoplesoft com.crossworlds.connectors.peoplesoft.exceptions |
02-Feb-01 | |||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 02-Feb-01 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | Please see PeopleSoft Documentation on installing their application server as a service. | 08-Aug-01 | |||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | A external API only makes a commit after a successful invocation of the save() method. This method can only be called on the entire Component Interface which encompasses this functionality. | 02-Feb-01 | |||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | No | 08-Aug-01 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 26-Feb-01 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 02-Feb-01 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | No | 08-Aug-01 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Full | 08-Aug-01 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 08-Aug-01 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 02-Feb-01 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 02-Feb-01 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 26-Feb-01 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 02-Feb-01 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 08-Aug-01 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 08-Aug-01 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 02-Feb-01 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 26-Feb-01 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | 02-Feb-01 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 02-Feb-01 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | 08-Aug-01 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 02-Feb-01 | ||||
PeopleSoft7 / | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 17-Jul-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 17-Jul-00 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Partial | 09-Feb-01 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 17-Jul-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 17-Jul-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 17-Jul-00 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 17-Jul-00 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Partial | Called from doVerbFor as well. | 17-Jul-00 | |||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Partial | Exists in the event table but is not used. | 17-Jul-00 | |||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Full | 17-Jul-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Partial | Please see the connector documentation for more information. | 27-Jul-00 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | 17-Jul-00 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 17-Jul-00 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 17-Jul-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 17-Jul-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | No | 17-Jul-00 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | Key attributes are used for object retrieval. | 17-Jul-00 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 17-Jul-00 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | The connector fails a Create operation if a business object does not have a valid value or a default value for a Required attribute. | 17-Jul-00 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 17-Jul-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 17-Jul-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 25-Jul-00 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Partial | Tracing approximates the specified levels. | 09-Feb-01 | |||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Partial | Generate message is used for some tracing. | 27-Jul-00 | |||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Partial | 09-Feb-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Partial | 09-Feb-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Partial | 09-Feb-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Partial | 09-Feb-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Partial | 09-Feb-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Partial | 09-Feb-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Partial | Some strings are hard coded. | 27-Jul-00 | |||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
N/A | 17-Jul-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 17-Jul-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Jul-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | No | For the connector, a transaction is not defined as an operation on a complete hierarchical business object. Instead, the connector defines a separate transaction for each operation on individual parent or child business objects in a hierarchical business | 17-Jul-00 | |||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | 17-Jul-00 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 17-Jul-00 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 17-Jul-00 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Partial | The Delete verb is supported. | 09-Feb-01 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Full | 17-Jul-00 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 17-Jul-00 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 17-Jul-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 17-Jul-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Full | 17-Jul-00 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Full | 17-Jul-00 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 17-Jul-00 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 17-Jul-00 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 17-Jul-00 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | No | 17-Jul-00 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 17-Jul-00 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | 17-Jul-00 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 17-Jul-00 | ||||
Portal / 4.1.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 17-Jul-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 17-Jul-00 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
No | 25-Jul-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 17-Jul-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 17-Jul-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | N/A | 17-Jul-00 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 17-Jul-00 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 25-Jul-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 25-Jul-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
No | 25-Jul-00 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | 17-Jul-00 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 17-Jul-00 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Full | 17-Jul-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 25-Jul-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | No | 17-Jul-00 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | The key for a top-level Business obj. is the storable object Portal Object ID (POID). | 17-Jul-00 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 09-Feb-01 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 17-Jul-00 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 25-Jul-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 25-Jul-00 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 17-Jul-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 17-Jul-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | No | 17-Jul-00 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Partial | Tracing approximates the specified levels. | 09-Feb-01 | |||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 17-Jul-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Partial | 09-Feb-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Partial | 09-Feb-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Partial | 09-Feb-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Partial | 09-Feb-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Partial | 09-Feb-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Partial | 09-Feb-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Partial | Some strings are hard coded. | 27-Jul-00 | |||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
No | 17-Jul-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Partial | 09-Feb-01 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Jul-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 17-Jul-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | 25-Jul-00 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 25-Jul-00 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 17-Jul-00 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | 17-Jul-00 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | No | 17-Jul-00 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 25-Jul-00 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 25-Jul-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 17-Jul-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 17-Jul-00 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 17-Jul-00 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 17-Jul-00 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | No | 17-Jul-00 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 17-Jul-00 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Full | 17-Jul-00 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 25-Jul-00 | ||||
QAD MFG/P | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | N/A | Currently, all events from a Buyer instance (even if multi-node and/or multi-server) go through a single multi-threaded connector instance. And, Buyer provides event notification, so no event polling or event table is required. | 14-Mar-03 | |||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | N/A | Buyer provides event notification, so no event polling or event table is required. | 12-Mar-03 | |||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | Buyer provides event notification, so no event polling or event table is required. | 12-Mar-03 | |||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | Buyer provides event notification, so no event polling or event table is required. | 14-Mar-03 | |||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | Buyer provides event notification, so no event polling or event table is required. | 12-Mar-03 | |||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | N/A | Buyer provides event notification, so no event poilling or event table is required. | 14-Mar-03 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
N/A | Buyer keeps track of event status, thus there is no need to arhive events. | 14-Mar-03 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | No | gotApplEvent() is called, however not from within pollForEvents() since the connector does not poll, it is event driven. | 14-Mar-03 | |||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Full | 12-Mar-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | N/A | Buyer provides event notification, so an event table is not needed. No other explicit sequencing is required. | 14-Mar-03 | |||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | N/A | Buyer has the ability to schedule events; the connector only receives events whenever the event should be sent. | 12-Mar-03 | |||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
N/A | The connector does not implement this functionality since Buyer handles recovery of failed events. And, Buyer provides event notification, so there is no need for event polling or an event table. | 14-Mar-03 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | Although the connector will forward the request as a BO with the Delete verb, it cannot identify key values nor set non-key values to CxIgnore. However, the intended effect can be achieved by integrator if desired. | 12-Mar-03 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Partial | The connector does not support the RetrieveAll feature. However, when Buyer sends data to the connector for event notification, it does send every field in the hierarchical business object that has its metadataIntegratable flag set to true in the Buyer o | 14-Mar-03 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | N/A | Buyer provides event notification, so no event polling or event table is required. | 12-Mar-03 | |||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | Buyer provides event notification, so no event polling or event table is required. | 12-Mar-03 | |||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 10-Mar-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | No validations are performed by the connector, because this property is not used - the Buyer interface does not utilize a foreign key. | 12-Mar-03 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 14-Mar-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 10-Mar-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 10-Mar-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 10-Mar-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | N/A | The connector does not poll for events, it is event driven. | 12-Mar-03 | |||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | The connector does not shut down, however an exception is returned to the message broker. | 12-Mar-03 | |||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | The connection is not monitored while idle. | 12-Mar-03 | |||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | N/A | No application password is required. | 14-Mar-03 | |||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | N/A | No application username is required. | 14-Mar-03 | |||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | No | 10-Mar-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 10-Mar-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | The adapter does call generateMsg() for tracing; messages are obtained from message files. | 14-Mar-03 | |||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 10-Mar-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 10-Mar-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 10-Mar-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | N/A | Foreign keys are not used. | 14-Mar-03 | |||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 10-Mar-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 10-Mar-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 10-Mar-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
No | The Java package
naming standard adhered to is: com.ibm.adapters.<app_name> where <app_name> is "Buyer". |
14-Mar-03 | |||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 10-Mar-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 10-Mar-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | N/A | There is no transaction support in Buyer. | 10-Mar-03 | |||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | 10-Mar-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 10-Mar-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | A Create can be performed in several ways. See the User Guide for details. | 12-Mar-03 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | No | Buyer interface does not support a physical Delete verb. | 12-Mar-03 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Partial | Buyer only supports logical deletes. The connector requests that Buyer perform its delete (logical) as a result of a Delete verb. There is no field in the interface that can be "updated" to reflect logical deletion, thus the Update verb cannot be used t | 12-Mar-03 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Buyer interface does not support the Exist verb. | 12-Mar-03 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 12-Mar-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 10-Mar-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Buyer interface does not support the Retrieve verb. | 12-Mar-03 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Buyer interface does not support the Retrieve verb. | 12-Mar-03 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | Buyer interface does not support the Retrieve verb. | 12-Mar-03 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | Buyer interface does not support the Retrieve verb. | 12-Mar-03 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 10-Mar-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Full | 12-Mar-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | Buyer interface does not support this feature. | 14-Mar-03 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Buyer interface does not support the Retrieve verb. | 12-Mar-03 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | The connector does not reference the verb field of child business objects. The connector applies the verb specified in the parent business object to all child business objects. | 14-Mar-03 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 14-Mar-03 | ||||
Retek / 1.1.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 13-Sep-02 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | No | Poll quantity is set at the message family level via message family metaobjects. | 13-Sep-02 | |||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
No | Instead the adapter uses the Retek APIs for polling. | 13-Sep-02 | |||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | No | Instead the adapter uses the Retek APIs for polling. | 13-Sep-02 | |||
Object name | The object name field should be set to the exact CrossWorlds business object name. | No | Instead the adapter uses the Retek APIs for polling. | 13-Sep-02 | |||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | No | Instead the adapter uses the Retek APIs for polling. | 13-Sep-02 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
No | 13-Sep-02 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 13-Sep-02 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 13-Sep-02 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 13-Sep-02 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 13-Sep-02 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | Events are not stored in an event table; instead the event in process is stored to a file. | 13-Sep-02 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Partial | The business object definition for delete events is different from create/update. | 13-Sep-02 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | No | 13-Sep-02 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 13-Sep-02 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | No event table. | 13-Sep-02 | |||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 13-Sep-02 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | No | 13-Sep-02 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | Used for event sequencing. | 13-Sep-02 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 13-Sep-02 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 13-Sep-02 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | Necessary to prevent the XML Data Handler from omitting required XML tags when the corresponding attributes have no value. | 13-Sep-02 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 13-Sep-02 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 13-Sep-02 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 13-Sep-02 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 13-Sep-02 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 13-Sep-02 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | No | 13-Sep-02 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 13-Sep-02 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Partial | 13-Sep-02 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 13-Sep-02 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 13-Sep-02 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 13-Sep-02 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 13-Sep-02 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 13-Sep-02 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 13-Sep-02 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 13-Sep-02 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 13-Sep-02 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 13-Sep-02 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 13-Sep-02 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 13-Sep-02 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | 13-Sep-02 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 13-Sep-02 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 13-Sep-02 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | 13-Sep-02 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | No | Only physical deletes supported by the Retek interface. | 13-Sep-02 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 13-Sep-02 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Partial | 13-Sep-02 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Partial | The adapter relies upon a specific name for the Retek generic business object. | 13-Sep-02 | |||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 13-Sep-02 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 13-Sep-02 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | 13-Sep-02 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 13-Sep-02 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | The adapter uses Retek stored procedures to perform the updates; no direct control over behavior. | 13-Sep-02 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | The adapter uses Retek stored procedures to perform the updates; no direct control over behavior. | 13-Sep-02 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | The adapter uses Retek stored procedures to perform the updates; no direct control over behavior. | 13-Sep-02 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | No | 13-Sep-02 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | 13-Sep-02 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 13-Sep-02 | ||||
SAP / 5.4.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Partial | The SAP connector implements this differently from the standard, but provides all the functionality. | 17-Jul-00 | |||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 08-Aug-01 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Partial | The SAP connector has similar status values to the standard values. However, it does not support IN_PROGRESS. | 17-Jul-00 | |||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | No | 17-Jul-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 17-Jul-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Partial | The higher the number, the lower the priority. Every time the connector polls, an event priority is decremented. When the priority reaches 0, the event is processed. | 17-Jul-00 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 09-Mar-01 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 17-Jul-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Partial | The SAP connector operates by passing business objec data into the SAP application via an ABAP function module. When this function executes succesfully, the connector returns SUCCESS; when it fails, it returns FAIL. Because SAP is an open system, the SAP | 17-Jul-00 | |||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 17-Jul-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Full | 17-Jul-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 10-Jan-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | Delete events are retrieved just like those of any other verb. | 17-Jul-00 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Full | 17-Jul-00 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Full | 17-Jul-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 17-Jul-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | No | 17-Jul-00 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | During polling, the connector places the entire string of the event key in the first attribute marked Key in the parent object. Retrieve processing in SAP relies on this to extract the key value from the incoming object on a generic basis by checking the | 17-Jul-00 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Partial | The agent does not need to be recompiled to support new business objects. However, additional code and/or data must be in place for the target SAP system to handle new objects. | 17-Jul-00 | |||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | This attribute is implemented by calling initAndValidate during doVerbFor(). | 17-Jul-00 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 17-Jul-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 17-Jul-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 17-Jul-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Partial | This property is implemented for both Create and Update. | 17-Jul-00 | |||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 08-Aug-01 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 17-Jul-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 08-Aug-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 08-Aug-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 08-Aug-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 08-Aug-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 08-Aug-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 08-Aug-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 17-Jul-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 08-Aug-01 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 17-Jul-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Jul-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Partial | Transaction support depends on the ABAP processing in SAP, specifically the API the developer uses. The SAP connector operates by passing business objec data into the SAP application via an ABAP function module. When this function executes succesfully, th | 17-Jul-00 | |||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | 17-Jul-00 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Partial | The SAP connector operates by passing business objec data into the SAP application via an ABAP function module. When this function executes succesfully, the connector returns SUCCESS; when it fails, it returns FAIL. Because SAP is an open system, the SAP | 17-Jul-00 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 17-Jul-00 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Partial | Typically, CrossWorlds uses the SAP's Call Transaction API, which simulates a user's interaction through a GUI to use a transaction. SAP, therefore, is in control of all database interaction. Each SAP transaction determines whether or not a physical or lo | 25-Aug-00 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Partial | Typically, CrossWorlds uses SAP's Call Transaction API, which simulates a user's interaction through a GUI to use a transaction. SAP, therefore, is in control of all database interaction. Each SAP transaction determines whether or not a physical or logica | 25-Aug-00 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Partial | The SAP connector operates by passing business objec data into the SAP application via an ABAP function module. When this function executes succesfully, the connector returns SUCCESS; when it fails, it returns FAIL. Because SAP is an open system, the SAP | 17-Jul-00 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 17-Jul-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 17-Jul-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Partial | The SAP connector operates by passing business objec data into the SAP application via an ABAP function module. When this function executes succesfully, the connector returns SUCCESS; when it fails, it returns FAIL. Because SAP is an open system, the SAP | 17-Jul-00 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Partial | The SAP connector operates by passing business object data into the SAP application via an ABAP function module. When this function executes succesfully, the connector returns SUCCESS; when it fails, it returns FAIL. Because SAP is an open system, the SAP | 08-Aug-01 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Partial | The SAP connector operates by passing business objec data into the SAP application via an ABAP function module. When this function executes succesfully, the connector returns SUCCESS; when it fails, it returns FAIL. Because SAP is an open system, the SAP | 17-Jul-00 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | No | 17-Jul-00 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 17-Jul-00 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Partial | The SAP connector operates by passing business objec data into the SAP application via an ABAP function module. When this function executes succesfully, the connector returns SUCCESS; when it fails, it returns FAIL. Because SAP is an open system, the SAP | 17-Jul-00 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 17-Jul-00 | ||||
Siebel / 4.3.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Full | 27-Feb-02 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 27-Feb-02 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Full | READY_FOR_POLL 0,IN_PROGRESS 1,UNSUBSCRIBED 2,SUCCESS 3,ERROR_PROCESSING_EVENT -1, ERROR_POSTING_EVENT -2 and ERROR_OBJECT_NOT_FOUND -3 | 27-Feb-02 | |||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | 27-Feb-02 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Full | 27-Feb-02 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | 22-Feb-02 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | 22-Feb-02 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 27-Feb-02 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 27-Feb-02 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | The events are retrieved using the search criteria on status and connectorid and sorted (order by) using timestamp and priority. | 28-Feb-02 | |||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 27-Feb-02 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | With this connector, the event is reprocessed. Connector property InDoubtEvents is set to "Reprocess". | 27-Feb-02 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Full | 27-Feb-02 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | No | 25-Jun-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Full | 27-Feb-02 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | 27-Feb-02 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 27-Feb-02 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 22-Feb-02 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | For simple attributes, if Key is set to true,the attribute is used with Update to update a specific record in Siebel. With Retrieve, these attributes are used in the search specification to get the record from Siebel. During Delete the keys are set on th | 27-Feb-02 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 27-Feb-02 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 22-Feb-02 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | If any attribute or child object in a CrossWorlds business object is marked as required, the value needs to be present. Please look into the Siebel documentation for details. | 25-Jun-03 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 22-Feb-02 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 22-Feb-02 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 27-Feb-02 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 27-Feb-02 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 27-Feb-02 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 22-Feb-02 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 22-Feb-02 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | 27-Feb-02 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 27-Feb-02 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 27-Feb-02 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 27-Feb-02 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 27-Feb-02 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 27-Feb-02 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 27-Feb-02 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 27-Feb-02 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | com.crossworlds.connectors.Siebel | 25-Jun-03 | |||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Unknown | 21-Feb-02 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 27-Feb-02 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 22-Feb-02 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | No | 22-Feb-02 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | In a Create operation,if the attribute is a required attribute , UseDefaults is true and there is a default value for the attribute, this value is set in the attribute even if the inbound is CxIgnore and hence the value in the application changes. | 27-Feb-02 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 22-Feb-02 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | 22-Feb-02 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | Siebel applications do not support logical deletes. | 27-Feb-02 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Full | The check is made to see if the primary business component (the first child in CrossWorlds business object) exists in the Siebel database.Verb should be called Exists instead of Exist. | 25-Jun-03 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 27-Feb-02 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 27-Feb-02 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 27-Feb-02 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | 22-Feb-02 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Full | 22-Feb-02 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Full | The non key values is set only on the parent. | 27-Feb-02 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 22-Feb-02 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Partial | This is done using DeltaUpdate verb support. | 27-Feb-02 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | DeltaUpdate verb is used in place of KeepRelations. | 27-Feb-02 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 22-Feb-02 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Partial | This support is for Update operation on top level business object. On an update, the child verbs are processed independently of the parent verb set. | 27-Feb-02 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 22-Feb-02 | ||||
SWIFT / 1.7. | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 17-Dec-01 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 17-Dec-01 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 17-Dec-01 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 17-Dec-01 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 17-Dec-01 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | Connector retrieves messages based on the priority specified in their message header (range 0-9). See MQSeries documentation for more information. | 17-Dec-01 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Connector can deliver copies of messages to different queues depending on whether the message was unsubscribed, was successfully processed, or resulted in errors. | 17-Dec-01 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 17-Dec-01 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 17-Dec-01 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 17-Dec-01 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 17-Dec-01 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 17-Dec-01 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 17-Dec-01 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | 17-Dec-01 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Dec-01 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Dec-01 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | May be used by DataHandler chosen for connector. | 17-Dec-01 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 17-Dec-01 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Dec-01 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Dec-01 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Dec-01 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 17-Dec-01 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 17-Dec-01 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 17-Dec-01 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Partial | Depends on the DataHandler established for the connector. | 17-Dec-01 | |||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 17-Dec-01 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 17-Dec-01 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 17-Dec-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 17-Dec-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 17-Dec-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 17-Dec-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 17-Dec-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 17-Dec-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 17-Dec-01 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 17-Dec-01 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 17-Dec-01 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Dec-01 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 17-Dec-01 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depends on DataHandler chosen for the connector | 17-Dec-01 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 17-Dec-01 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 17-Dec-01 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | The connector supports RetrieveByContent verb in full when using synchronous request/response. | 17-Dec-01 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Support is entirely dependent on application receiving connector request. | 17-Dec-01 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Partial | Depends on DataHandler chosen for the connector. | 17-Dec-01 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 17-Dec-01 | ||||
Telcordia / 2. | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 13-Nov-02 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 13-Nov-02 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 13-Nov-02 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 13-Nov-02 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 13-Nov-02 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | Connector retrieves messages based on the priority specified in their message header (range 0-9). See the documentation for more information. | 13-Nov-02 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Connector can deliver copies of messages to different queues depending on whether the message was unsubscribed, was successfully processed, or resulted in errors. | 13-Nov-02 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 13-Nov-02 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 13-Nov-02 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 13-Nov-02 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 13-Nov-02 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 13-Nov-02 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 13-Nov-02 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | 13-Nov-02 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 13-Nov-02 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 13-Nov-02 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | May be used by DataHandler chosen for connector. | 13-Nov-02 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 13-Nov-02 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 13-Nov-02 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 13-Nov-02 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 13-Nov-02 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 13-Nov-02 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 13-Nov-02 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 13-Nov-02 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Partial | Depends on the DataHandler established for the connector. | 13-Nov-02 | |||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 13-Nov-02 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 13-Nov-02 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 13-Nov-02 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 13-Nov-02 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 13-Nov-02 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 13-Nov-02 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 13-Nov-02 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 13-Nov-02 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 13-Nov-02 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 13-Nov-02 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 13-Nov-02 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 13-Nov-02 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 13-Nov-02 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depends on DataHandler chosen for the connector | 13-Nov-02 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 13-Nov-02 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 13-Nov-02 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | The connector supports RetrieveByContent verb in full when using synchronous request/response. | 13-Nov-02 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Support is entirely dependent on application receiving connector request. | 13-Nov-02 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Partial | Depends on DataHandler chosen for the connector. | 13-Nov-02 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 13-Nov-02 | ||||
TPI / 3.3.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | Event notification is done via callback, and the Cyclone ICS is running in the connector process space. | 31-Jan-01 | |||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 31-Jan-01 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Partial | Event status is maintained via the location of the event information and the extension on the event file. | 31-Jan-01 | |||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 31-Jan-01 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 31-Jan-01 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | N/A | 31-Jan-01 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Partial | The connector does not have an event table per se. It stores information about incoming documents and their status on the file system. | 08-Mar-01 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 31-Jan-01 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 31-Jan-01 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Partial | Maintained based on how they are received from Cyclone, not based on priority. | 31-Jan-01 | |||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 31-Jan-01 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 31-Jan-01 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | 31-Jan-01 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | No | 31-Jan-01 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | N/A | Because we don't have an event table, we don't have any way of filtering out these 'duplicates'. Cyclone will partially take care of this functionality. | 31-Jan-01 | |||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Partial | 31-Jan-01 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 31-Jan-01 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 31-Jan-01 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 31-Jan-01 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | May be used by the DataHandler. This depends on configuration and what type of data is being processed. | 31-Jan-01 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 31-Jan-01 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 31-Jan-01 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 31-Jan-01 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 31-Jan-01 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 31-Jan-01 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | No | 22-Feb-02 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | No | 22-Feb-02 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 31-Jan-01 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 31-Jan-01 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 31-Jan-01 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 31-Jan-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 31-Jan-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 31-Jan-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 31-Jan-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 31-Jan-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 31-Jan-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 22-Feb-02 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 31-Jan-01 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 31-Jan-01 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 29-Oct-01 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | There is no rollback. The document is never sent if there is a problem. | 31-Jan-01 | |||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depends on the DataHandler being used. | 22-Feb-02 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Partial | Depends on the DataHandler being used. | 22-Feb-02 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 31-Jan-01 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | No | 31-Jan-01 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | No | 31-Jan-01 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 31-Jan-01 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 31-Jan-01 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Partial | The name of the business object is determined based on the rules for the particular DataHandler(s) being used. | 31-Jan-01 | |||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 31-Jan-01 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 31-Jan-01 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 31-Jan-01 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 31-Jan-01 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | No | The connector just sends a document created based on the data in the business object. | 31-Jan-01 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 31-Jan-01 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | No | 31-Jan-01 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | No | 31-Jan-01 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | 31-Jan-01 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | The connector does no different processing based on the verb, only sends a document out to a trading partner. | 31-Jan-01 | |||
Vantive / 3.6.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 17-Jul-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | The MaxEvents connector property implements this feature. | 17-Jul-00 | |||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
No | 17-Jul-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Full | The delimiter is a semicolon (;), and the field name is "Note". | 17-Jul-00 | |||
Object name | The object name field should be set to the exact CrossWorlds business object name. | No | 17-Jul-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | No | 17-Jul-00 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
No | If an event is not subscribed to or is not successfully picked up and sent to the InterChange Server, it remains in the Inbox. | 17-Jul-00 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 17-Jul-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Full | With RetrieveAll set to true, the after-image is sent. | 17-Jul-00 | |||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | No | 17-Jul-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 17-Jul-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
No | 17-Jul-00 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Full | 17-Jul-00 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Partial | For an “outbound object” (going out of Vantive), if the RetrieveAll connector property is set to true, the after-image is sent to the collaboration. But if the property is set to false or not set at all, the default behavior of the connector is to look at | 17-Jul-00 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 17-Jul-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Full | Vantive polls using the Inbox. | 17-Jul-00 | |||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | The Foreign Key property can be true or false. The Subform type of child object uses this key as the parent’s ID. | 17-Jul-00 | |||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | No | 17-Jul-00 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | If Key is set to true for a simple attribute, then that attribute is used as the ID for that object. | 17-Jul-00 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 09-Feb-01 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Partial | Handlers need to be added for new business objects. | 17-Jul-00 | |||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | 09-Feb-01 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 17-Jul-00 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 17-Jul-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 17-Jul-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 17-Jul-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | On a Create operation, if UseDefaults is set to true or not set, the connector checks whether a valid value or a default value is provided for each Required business object attribute. If a value is provided, the Create succeeds; otherwise, it fails. If th | 17-Jul-00 | |||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Partial | Tracing approximates the specified levels. | 09-Feb-01 | |||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Partial | Generate message is used for some tracing messages. | 27-Jul-00 | |||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Partial | 09-Feb-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Partial | 09-Feb-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Partial | 09-Feb-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Partial | 09-Feb-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Partial | 09-Feb-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Partial | 09-Feb-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Partial | Some strings are hard coded | 27-Jul-00 | |||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
N/A | 17-Jul-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Partial | 09-Feb-01 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Jul-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | No | 17-Jul-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | The blank value is not configurable. | 17-Jul-00 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | 17-Jul-00 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Full | 17-Jul-00 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Full | 17-Jul-00 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | No | 17-Jul-00 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 17-Jul-00 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 17-Jul-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | No | The connector does not use application-specific properties for all objects. The business object Application-Specific Info field should be left blank or omitted when creating business object definitions. When there is a Subform type of object, which can ha | 17-Jul-00 | |||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 17-Jul-00 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Full | 17-Jul-00 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Full | 17-Jul-00 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Full | 17-Jul-00 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Full | 17-Jul-00 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | Each individual business object within a hierarchical business object contains its own verb. Thus, it is possible that the collaboration passes to the Vantive connector a business object that has different verbs for parent and child business objects. The | 17-Jul-00 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Partial | Child verbs are sometimes changed to indicate exaclty what the connector did to process the child. | 27-Jul-00 | |||
Web Services | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 17-Feb-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | No | Connector does not uses pollForEvents for posting business objects to ICS. The connector can deliver events from threads other than pollForEvents thread. | 17-Feb-03 | |||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
No | 17-Feb-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | No | No event table is used by the connector. | 17-Feb-03 | |||
Object name | The object name field should be set to the exact CrossWorlds business object name. | No | Connector has no notion of event table. | 17-Feb-03 | |||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | No | Web Services Connector has no support for event priority. Connector will process the events as an when they reach the connector. | 17-Feb-03 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Web Services Connector supports event archival only for SOAP/JMS protocol. There is no event archival support for SOAP/HTTP and SOAP/HTTPS protocol. | 17-Feb-03 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | No | Web Services Connector will call gotApplEvents() method outside of PollForEvents. | 17-Feb-03 | |||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 17-Feb-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | No | Connector does not guarantees the sequence. Connector will deliver the events in any order and "as and when" they are ready to deliver. | 17-Feb-03 | |||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | Connector will deliver the events as and when it recieves them. | 17-Feb-03 | |||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | If using SOAP/HTTP and SOAP/HTTPS, because of inherent nature of the transprot event recovery is not supported. However if using SOAP/JMS, event recovery is supported completely. | 17-Feb-03 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | 03-Oct-02 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 17-Feb-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | No | No event table is used by the connector. | 17-Feb-03 | |||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | Neither the connector nor DataHandler apply a uniqueness constraint on events. | 03-Oct-02 | |||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 03-Oct-02 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | Neither the connector nor DataHandler apply a uniqueness constraint on events. | 03-Oct-02 | |||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 03-Oct-02 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 03-Oct-02 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | N/A | 03-Oct-02 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | For SOAP/HTTP, connection loss to an end-point will fail that event. However for SOAP/JMS if at any point of connector determines that connection is lost, it will stop processing further. As and when connector recieves doVerbFor or pollForEvents, it will | 17-Feb-03 | |||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | For SOAP/HTTP, connection loss to an end-point will fail that event. However for SOAP/JMS if at any point of connector determines that connection is lost, it will stop processing further. As and when connector recieves doVerbFor or pollForEvents, it will | 17-Feb-03 | |||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Partial | For SOAP/HTTP, connection loss to an end-point will fail that event. However for SOAP/JMS if at any point of connector determines that connection is lost, it will stop processing further. As and when connector recieves doVerbFor or pollForEvents, it will | 17-Feb-03 | |||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | No | The connector does not support user name/password exchanges with a URL. | 03-Oct-02 | |||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | No | 17-Feb-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 03-Oct-02 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 03-Oct-02 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | No | Connector uses generateMsg for tracing. This is a new requirement for globalization and internationalization. | 17-Feb-03 | |||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 03-Oct-02 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 03-Oct-02 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 03-Oct-02 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 03-Oct-02 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 03-Oct-02 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 03-Oct-02 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 17-Feb-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 03-Oct-02 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 03-Oct-02 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Feb-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | N/A | No support for transactions. | 17-Feb-03 | |||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Full | This behaviour depends on DataHandler used with the connector. Based on the SOAP DataHandler, when transforming BO to SOAP, if a CxBlank is encountered, the DataHandler will create the associated empty element tag in the SOAP Message. When transforming SO | 17-Feb-03 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Full | This behaviour depends on DataHandler used with the connector. Based on the SOAP DataHandler, when transforming BO to SOAP, if a CxIgnore is encountered, the DataHandler will not create the associated element tag in the SOAP Message. When transforming SOA | 17-Feb-03 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | No | The connector does not have special verb dependent processing. | 17-Feb-03 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Partial | Based on the SOAP DataHandler, attribute names and/or ASI must correspond with associated SOAP element tags. | 17-Feb-03 | |||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 03-Oct-02 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | The connector does not have special verb dependent processing. | 03-Oct-02 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | The connector does not process child objects based on their own verbs. All verbs of child objects are ignored. | 03-Oct-02 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | Web Services Connector does not changes the verbs of the TLO in the service call requests. | 17-Feb-03 | |||
WebSphere C | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 19-Sep-02 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 19-Sep-02 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 19-Sep-02 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 19-Sep-02 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 19-Sep-02 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | Connector retrieves messages based on the priority specified in their message header (range 0-9). See MQSeries documentation for more information. | 19-Sep-02 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Connector can deliver copies of messages to different queues depending on whether the message was unsubscribed, was successfully processed, or resulted in errors. | 19-Sep-02 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 19-Sep-02 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 19-Sep-02 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 19-Sep-02 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 19-Sep-02 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 19-Sep-02 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 19-Sep-02 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | 19-Sep-02 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 19-Sep-02 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 19-Sep-02 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | May be used by DataHandler chosen for connector. | 19-Sep-02 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 19-Sep-02 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 19-Sep-02 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 19-Sep-02 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 19-Sep-02 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 19-Sep-02 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 19-Sep-02 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 19-Sep-02 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Partial | Depends on the DataHandler established for the connector. | 19-Sep-02 | |||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 19-Sep-02 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 19-Sep-02 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 19-Sep-02 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 19-Sep-02 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 19-Sep-02 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 19-Sep-02 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 19-Sep-02 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 19-Sep-02 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 19-Sep-02 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 19-Sep-02 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 19-Sep-02 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 19-Sep-02 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 19-Sep-02 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depends on DataHandler chosen for the connector | 19-Sep-02 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 19-Sep-02 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 19-Sep-02 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | The connector supports RetrieveByContent verb in full when using synchronous request/response. | 19-Sep-02 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Support is entirely dependent on application receiving connector request. | 19-Sep-02 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Partial | Depends on DataHandler chosen for the connector. | 19-Sep-02 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 19-Sep-02 | ||||
WebSphere | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 14-Aug-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 14-Aug-00 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 14-Aug-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 14-Aug-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 14-Aug-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | Connector retrieves messages based on the priority specified in their message header (range 0-9). See MQSeries documentation for more information. | 14-Aug-00 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Connector can deliver copies of messages to different queues depending on whether the message was unsubscribed, was successfully processed, or resulted in errors. | 10-Oct-00 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 14-Aug-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 14-Aug-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 14-Aug-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 14-Aug-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 14-Aug-00 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 14-Aug-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | 14-Aug-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 14-Aug-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 14-Aug-00 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | May be used by DataHandler chosen for connector. | 14-Aug-00 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 14-Aug-00 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 14-Aug-00 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | Connector may report an error or may continue polling and not retrieve events. The adapter listens for errors reported by MQSeries--whether such errors are generated depends solely on MQSeries. | 18-Nov-02 | |||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 14-Aug-00 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 14-Aug-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | No | MQSeries does not use password for authentication. | 18-Nov-02 | |||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Partial | Connector sends message under authority of specified local user. | 18-Nov-02 | |||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 17-Feb-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 14-Aug-00 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 14-Aug-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 14-Aug-00 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 14-Aug-00 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 14-Aug-00 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 14-Aug-00 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 14-Aug-00 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 14-Aug-00 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 14-Aug-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 14-Aug-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 14-Aug-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 14-Aug-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 14-Aug-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depends on DataHandler chosen for the connector | 14-Aug-00 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 14-Aug-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 14-Aug-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | The connector supports RetrieveByContent verb in full when using synchronous request/response. | 03-Oct-00 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Support is entirely dependent on application receiving connector request. | 03-Oct-00 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Partial | Depends on DataHandler chosen for the connector. | 14-Aug-00 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 14-Aug-00 | ||||
WebSphere | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 03-Aug-00 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 03-Aug-00 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 03-Aug-00 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 03-Aug-00 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 03-Aug-00 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | Connector retrieves messages based on the priority specified in their message header (range 0-9). See MQSeries documentation for more information. | 03-Aug-00 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Connector can deliver copies of messages to different queues depending on whether the message was unsubscribed, was successfully processed, or resulted in errors. | 10-Oct-00 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 03-Aug-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 03-Aug-00 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 03-Aug-00 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 03-Aug-00 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 03-Aug-00 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 03-Aug-00 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | 03-Aug-00 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 03-Aug-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 03-Aug-00 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | May be used by DataHandler chosen for connector. | 03-Aug-00 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 03-Aug-00 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 03-Aug-00 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 03-Aug-00 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 03-Aug-00 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 03-Aug-00 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 03-Aug-00 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 03-Aug-00 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 17-Feb-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 03-Aug-00 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 03-Aug-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 07-Aug-00 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 07-Aug-00 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 07-Aug-00 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 07-Aug-00 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 07-Aug-00 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 07-Aug-00 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 03-Aug-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 03-Aug-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 03-Aug-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 03-Aug-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 03-Aug-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depends on DataHandler chosen for the connector | 03-Aug-00 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 03-Aug-00 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 03-Aug-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Support is entirely dependent on application receiving connector request. | 04-Oct-00 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Partial | Depends on DataHandler chosen for the connector. | 03-Aug-00 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 03-Aug-00 | ||||
WebSphere | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | No | 26-Mar-01 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Full | 26-Mar-01 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
N/A | 26-Mar-01 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | 26-Mar-01 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | 26-Mar-01 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Full | Adapter retrieves messages based on the priority specified in their message header (range 0-9). See MQSeries documentation for more information. | 17-Feb-03 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Full | Adapter can deliver copies of messages to different queues depending on whether the message was unsubscribed, was successfully processed, or resulted in errors. | 17-Feb-03 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 26-Mar-01 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | 26-Mar-01 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Full | 26-Mar-01 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | No | 26-Mar-01 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Full | 26-Mar-01 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | N/A | 17-Feb-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | N/A | Support is entirely dependent on business data sent by workflow to adapter. | 17-Feb-03 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | No | 26-Mar-01 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | 26-Mar-01 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 26-Mar-01 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 17-Feb-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 26-Mar-01 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Partial | Depends on whether data handler recognizes max length or not. | 17-Feb-03 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 26-Mar-01 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 26-Mar-01 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 26-Mar-01 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Full | 26-Mar-01 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | 26-Mar-01 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Full | 26-Mar-01 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Full | 26-Mar-01 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Partial | Support is dependent on whether this feature is implemented by data handler. | 17-Feb-03 | |||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 26-Mar-01 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 26-Mar-01 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 26-Mar-01 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 26-Mar-01 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 26-Mar-01 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 26-Mar-01 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 26-Mar-01 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 26-Mar-01 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Full | 26-Mar-01 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 26-Mar-01 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 26-Mar-01 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 26-Mar-01 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Full | 26-Mar-01 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depends on data handler used by the adapter. | 17-Feb-03 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | N/A | 17-Feb-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | 17-Feb-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Full | 26-Mar-01 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 26-Mar-01 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | N/A | Support is entirely dependent on how workflow interprets adapter request. | 17-Feb-03 | |||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | N/A | 17-Feb-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 26-Mar-01 | ||||
XML / 3.2.0 | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | N/A | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | No | Because the connector receives events from the web server, and does not have a persistent place to store those events, the connector returns whatever it gets back from the web server, without regard to the PollQuantity property. | 17-Jul-00 | |||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
No | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | N/A | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
Object name | The object name field should be set to the exact CrossWorlds business object name. | N/A | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | N/A | No event table is used by the connector. | 17-Jul-00 | |||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Partial | If any event in a response XML document is not delivered successfully to the InterChange Server, the connector dumps that business object to the file specified by the connector property. | 17-Jul-00 | |||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Full | 17-Jul-00 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | No | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | N/A | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | N/A | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
N/A | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | No | The XML connector passes only the objects returned from the URL in response to a poll request. | 17-Jul-00 | |||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | No | The XML connector does not support the Retrieve verb. | 17-Jul-00 | |||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | N/A | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
Verb stability | The connector should send a business object with the same verb that is in the event table. | N/A | The XML connector does not interact directly with an event table. | 17-Jul-00 | |||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | N/A | 17-Jul-00 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | 17-Jul-00 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | No | This attribute is potentially used by data handlers, but not by the connector itself. | 17-Jul-00 | |||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Full | 17-Jul-00 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Full | When the business object is passed to the connector for service call request processing, only the attributes marked Required are populated with their default values if they are CxIgnore or CxBlank. | 28-Nov-01 | |||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | The connector returns FAIL only if there is an error trying to send a document or receive a response from a given URL during a poll call. | 17-Jul-00 | |||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | The connector returns FAIL only if an error is encountered when trying to post a document or read a response from a given URL. | 17-Jul-00 | |||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | No | The connector does not maintain a connection to any URL. Any problem connecting to a given URL results in a FAIL for that particular action. | 28-Nov-01 | |||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | No | The connector does not support user name/password exchanges with a URL. | 17-Jul-00 | |||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | No | The connector does not support user name/password exchanges with a URL. | 17-Jul-00 | |||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Full | 17-Jul-00 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Full | 17-Jul-00 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Full | 17-Jul-00 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Full | 07-Aug-00 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Full | 07-Aug-00 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Full | 07-Aug-00 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Full | 07-Aug-00 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Full | 07-Aug-00 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Full | 07-Aug-00 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | No | 17-Jul-00 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Full | 17-Jul-00 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Full | 17-Jul-00 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Full | 17-Jul-00 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | N/A | 17-Jul-00 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Partial | Depending on the specific data handler used, the XML connector does not send values in the document that correspond to attributes with a CxBlank value. | 17-Jul-00 | |||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Partial | Attributes in a request object that have a CxIgnore value are not included in the XML document to be sent to the URL (this is based on the XML Data Handler only; other data handlers may have different rules). | 17-Jul-00 | |||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Partial | The connector converts the entire child object to an XML document to send to the URL. The top-level wrapper object is not sent, but the information contained in that object is used for routing and to determine the format of the message sent to the URL. | 17-Jul-00 | |||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | No | 17-Jul-00 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | N/A | The connector only converts business objects to XML documents and sends them to a URL; how they are processed is solely dependent on that URL. | 17-Jul-00 | |||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | No | 17-Jul-00 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Partial | The standard is true for the connector, with the exception that the XML Data Handler requires that attribute names that represent attributes of an element in the XML document have the name of that element's attribute. | 17-Jul-00 | |||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Full | 17-Jul-00 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | No | 17-Jul-00 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | No | 17-Jul-00 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | No | 17-Jul-00 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | No | 17-Jul-00 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | No | 17-Jul-00 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | No | 17-Jul-00 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | No | 17-Jul-00 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | No | The connector does not process child objects based on their own verbs. All verbs of child objects are ignored. | 17-Jul-00 | |||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Full | 17-Jul-00 | ||||
zzCORBAOL | |||||||
Event Notification | |||||||
Connector Properties | |||||||
Event distribution | The event retrieval mechanism includes a filter that processes only events that are associated with the connector making the poll call. This feature requires adding a ConnectorId field to the event table so that multiple connectors can use the same event | Unknown | 02-Jul-03 | ||||
PollQuantity | The connector uses the PollQuantity connector property to specify the maximum number of events the connector processes for each poll call. If possible, the connector should limit the number of rows retrieved in the poll call to PollQuantity. (For example, | Unknown | 02-Jul-03 | ||||
Event Table | |||||||
Event status values | Where applicable,
the following values are used for event status: READY_FOR_POLL 0 SENT_TO_INTERCHANGE 1 UNSUBSCRIBED_EVENT 2 IN_PROGRESS 3 ERROR_PROCESSING_EVEN |
Unknown | 02-Jul-03 | ||||
Object key | The object key column must use name-value pairs to set data in the new business object. For example, if ContractId is the name of an attribute in the business object, the object key is ContractId=45381. The connector should support multiple name-value pai | Unknown | 02-Jul-03 | ||||
Object name | The object name field should be set to the exact CrossWorlds business object name. | Unknown | 02-Jul-03 | ||||
Priority | Priority is 0-n, with 0 being the highest priority. The connector polls and processes events in order of priority. Note that no decrementing is done, which could, in rare circumstances, lead to low-priority events being shut out (not processed). | Unknown | 02-Jul-03 | ||||
Misc. | |||||||
Archiving | An event is
archived once the connector has processed it, whether or not the
event was successfully
delivered to the InterChange Server. The event status is kept in
the archive table and is one of the following: Success - The event was detected, and a |
Unknown | 02-Jul-03 | ||||
CDK method gotApplEv | Call gotApplEvent() only inside PollForEvents(). | Unknown | 02-Jul-03 | ||||
Delta event notification | An event can be created that represents only the changes to a hierarchical business object, such as the addition or deletion of order lines, without creating an update event for the entire business object. [Not currently a CrossWorlds standard.] | Unknown | 02-Jul-03 | ||||
Event sequence | The connector must maintain the sequence of events from the application. (Based on priority.) | Unknown | 02-Jul-03 | ||||
Future event processin | The mechanism for specifying a future date or time at which an event should be processed. The connector does not process the event until that date or time. [Not currently a CrossWorlds standard.] | Unknown | 02-Jul-03 | ||||
In-Progress event reco | When
restarted, a connector checks
the event table for events that have a status of IN_PROGRESS. If
any of these exist, the connector performs one of these three
actions: Logs a fatal error and sends an email notification (propValue = FailOnStartup). S |
Unknown | 02-Jul-03 | ||||
Physical delete event | The connector creates an empty business object with the Delete verb, with key values populated and the rest of the attributes populated with CxIgnore, and sends the object to the InterChange Server. | Unknown | 02-Jul-03 | ||||
RetrieveAll | The connector retrieves the entire hierarchical business object during event delivery. | Unknown | 02-Jul-03 | ||||
Smart filtering | Duplicate events are not saved in the event store. Before storing a new event as a record in the event store, the event detection mechanism queries the event store for existing events that match the new event. The event detection mechanism does not genera | Unknown | 02-Jul-03 | ||||
Verb stability | The connector should send a business object with the same verb that is in the event table. | Unknown | 02-Jul-03 | ||||
General Standards | |||||||
Business Object Attrib | |||||||
Foreign key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Foreign Key attribute p | If this attribute property is set to true, the connector verifies that the value is a valid key. If the key is invalid, the connector returns FAIL. The connector assumes a foreign key is present in the application, and the connector should never try to cr | Unknown | 02-Jul-03 | ||||
Key | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Max Length | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Meta-data-driven desig | The connector can support new business objects without recompiling because the processing is based on information in the business object definition. | Unknown | 02-Jul-03 | ||||
Required | There is no standard defined. If you use this property, mark support as Full and describe how you use it in the notes field. If you do not use this property, mark support as No. | Unknown | 02-Jul-03 | ||||
Connection Lost | |||||||
Connection lost on poll | The connector detects the connection error at the time of a poll call and shuts down. It logs a fatal error and sends a return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connection lost on req | The connector detects the connection error when processing a business object service call request and shuts down. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connection lost while i | The connector shuts down as soon as the connection to the application is lost. It logs a fatal error and sends the return code of APPRESPONSE_TIMEOUT so that email notification can be triggered. | Unknown | 02-Jul-03 | ||||
Connector Properties | |||||||
ApplicationPassword | The connector should use this property value as the password to log in to the application. | Unknown | 02-Jul-03 | ||||
ApplicationUserName | The connector should use this property value as the user name to log in to the application. | Unknown | 02-Jul-03 | ||||
UseDefaults | When the connector processes a business object on a service call request with a Create verb, it calls the JCDK method initAndValidateAttributes() | Unknown | 02-Jul-03 | ||||
Message Tracing | |||||||
General messaging | The connector logs the following kinds of messages: Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEve | Unknown | 02-Jul-03 | ||||
generateMsg() | Do not use generateMsg() for tracing; hard-code the strings. | Unknown | 02-Jul-03 | ||||
Trace level 0 | Messages that identify the connector version. No other tracing is done at this level. | Unknown | 02-Jul-03 | ||||
Trace level 1 | Status messages and identifying (key) information for each business object processed. A message for each time the pollForEvents() method is executed. | Unknown | 02-Jul-03 | ||||
Trace level 2 | Messages that identify the business object handlers used for each object the connector processes. Messages that log each time a business object is posted to the InterChange Server, either from gotApplEvent() or consumeSync(). Messages that indicate each t | Unknown | 02-Jul-03 | ||||
Trace level 3 | Messages that identify the foreign keys being processed (if applicable). These messages appear when the connector has encountered a foreign key in a business object or when the connector sets a foreign key in a business object. Messages that relate to bus | Unknown | 02-Jul-03 | ||||
Trace level 4 | Messages that identify application-specific text. Examples of this text include the values returned by the functions that process the application-specific text fields in business objects. Messages that identify entry or exit functions. These messages help | Unknown | 02-Jul-03 | ||||
Trace level 5 | Messages that indicate connector initialization. The messages include the value of each configuration property that has been retrieved from the InterChange Server. Messages that detail the status of each thread the connector spawns while it is running. Th | Unknown | 02-Jul-03 | ||||
Misc. | |||||||
CDK method LogMsg | Always use generateMsg() before calling logMsg(). | Unknown | 02-Jul-03 | ||||
Java Package Names | All Java-based
connectors should follow this package-naming standard: com.CompanyName.connectors.ConnectorAgentPrefix Example: com.crossworlds.connectors.XML |
Unknown | 02-Jul-03 | ||||
Logging messages | The connector logs errors and other information that the user needs regardless of the trace level set for the system. | Unknown | 02-Jul-03 | ||||
NT service compliance | To be NT service-compliant, do not use any method/function that prints to STDOUT, for example, printf in C++. | Unknown | 02-Jul-03 | ||||
Transaction support | An entire business object service call request must be wrapped in a single transaction. All Create, Update, and Delete transactions for a top-level business object and all of its children should be wrapped in a single transaction. If any failure is detect | Unknown | 02-Jul-03 | ||||
Special Value | |||||||
CxBlank processing | On a Create operation, the connector inserts an appropriate blank value for attributes with the value CxBlank. The blank value may be configurable or specific to the application. | Unknown | 02-Jul-03 | ||||
CxIgnore processing | The connector does not set a value in the application for attributes that are passed in with the value CxIgnore when processing Create or Update verbs. | Unknown | 02-Jul-03 | ||||
Service Call Reque | |||||||
Create | |||||||
Create verb | The connector creates an object in the destination application. The application object includes all values in the business object, including child objects. | Unknown | 02-Jul-03 | ||||
Delete | |||||||
Delete verb | The connector supports the Delete verb, and when processing this verb, it does a true physical delete, not a logical delete. | Unknown | 02-Jul-03 | ||||
Logical delete | The connector supports logical delete operations with the Update verb only. The Delete verb is used only for physical deletes. | Unknown | 02-Jul-03 | ||||
Exist | |||||||
Exist verb | The connector checks for the existence of an entity in an application database. It returns SUCCESS if the object passed in exists in the application database, and FAIL if the object does not exist in the application database. | Unknown | 02-Jul-03 | ||||
Misc | |||||||
Attribute names | Attribute names in a business object should have no semantic value to the connector. Values such as application table name or column name should be stored in the application-specific information field of the attribute and not in the attribute name. | Unknown | 02-Jul-03 | ||||
Business object names | Business object names should have no semantic value to the connector. Two business objects with the same structure, data, and application-specific information but with different names should process identically in the connector. | Unknown | 02-Jul-03 | ||||
Retrieve | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in a business object's application-specific information, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 02-Jul-03 | ||||
RetrieveByContent | |||||||
Ignore missing child obj | If IgnoreMissingChildObject is set to true in the business object level application-specific text, the connector returns SUCCESS even if not all the children specified in the business object are found in the application. | Unknown | 02-Jul-03 | ||||
Multiple results | If more than one object is retrieved from the application, RetrieveByContent should return the first one and use the return code MULTIPLE_HITS. | Unknown | 02-Jul-03 | ||||
RetrieveByContent ver | The entire hierarchical image (including all child objects), based solely on a subset of non-key values, is retrieved. | Unknown | 02-Jul-03 | ||||
Update | |||||||
After-image support | The connector performs all the steps necessary to make the object in the destination application exactly match the business object received in the doVerbFor() call. | Unknown | 02-Jul-03 | ||||
Delta support | The connector processes exactly the objects and verbs that are received in the source business object. The destination application object is updated only by processing the contents of the source business object, not by making the application representatio | Unknown | 02-Jul-03 | ||||
KeepRelations | When KeepRelations is specified, child relations are not destroyed in the target application. Otherwise, all the child relations are destroyed first, then the child objects sent in from the InterChange Server are created and the relations restored. "Destr | Unknown | 02-Jul-03 | ||||
Verbs | |||||||
Retrieve verb | The entire hierarchical image (including all child business objects), based only on the key values of the business object, is retrieved from the application when the Retrieve verb is processed. | Unknown | 02-Jul-03 | ||||
Subverb support | The connector supports processing of verbs on child objects independent of the verb on the parent object. When a verb is set in a child business object, the connector agent performs the operation that the child verb indicates, regardless of the verb on th | Unknown | 02-Jul-03 | ||||
Verb stability | Verbs in a business object should remain stable throughout the service call request and response cycle. When a connector receives a business object request, the hierarchical object returned to the InterChange Server should have the same verb(s) as the ori | Unknown | 02-Jul-03 |