When more than one segment is defined in an IMS table definition, the Gateway returns data only when all segments exist in the specified hierarchy. For example, if the CUSTROOT and ORDER segments are defined, only information on customers that have orders is retrieved.
To directly retrieve and update specific IMS data, you should have one IMS table definition for each segment that can be uniquely identified. To do this, complete the following:
Appendix B, Samples of Recommended Table Definitions explains how to define an IMS table definition for an IMS database containing unique segments.
Appendix B, Samples of Recommended Table Definitions explains how to define an IMS table definition for an IMS database containing unique segments.
You must provide parameter values for parameterized tables. If these parameters map to unique IMS sequence keys, the Gateway can use this information to build a qualified Segment Search Argument (SSA) so IMS can directly retrieve the requested data.
If you define one IMS table definition for each unique segment, all segment occurrences can easily be retrieved using a combination of the tables. The root segment IMS table could be used as a TIBCO Object Service Broker PRM table in a nested FORALL loop to retrieve all child segments. All segments at each level can be retrieved using its parent segment IMS table definition.
When you define one IMS table definition for each unique segment, and if this data is moved into TIBCO Object Service Broker TDS tables, you can map each IMS table definition to a TDS table definition.
To sweep large amounts of IMS data, it could be more efficient to determine the necessary hierarchical paths and build an IMS table containing all required segments, with the TIBCO Object Service Broker primary key defined on the first segment.
TIBCO Object Service Broker expects the combination of parameters and primary key fields to uniquely identify an occurrence. When possible, select unique sequence keys as parameters and primary keys. To determine the unique sequence key of each segment, browse the @IMSSEGS(
dbname) table.
A field selected as a TIBCO Object Service Broker primary key, parameter, or access value must be defined in the IMS DBD. The Gateway uses these fields to build an IMS access request in conjunction with your selection criteria.
Identify unique sequence keys to TIBCO Object Service Broker by defining them as parameters, access values, or primary keys. If you select a unique sequence key as a field of an IMS table, it can cause unexpected results if this field is modified. Refer to
Using the Table Browser and Table Editor for details.
To perform INSERTs, DELETEs, REPLACEs, or if Optimize Update=Y, all fields for the segment level at which the primary key is defined must be fully defined to TIBCO Object Service Broker, including fields that are not defined in the DBD.
To perform REPLACEs, fields defined in the IMS table starting at the level at which the TIBCO Object Service Broker primary key is defined must not overlap. Use the
Off and
Len fields on the IMS Field Selection screen to determine if fields overlap.
Including large IMS fields, close to the maximum size of 3915 bytes, in your table definition increases transaction length due to an increased number of commits. This can affect the performance of your application.