5 Reasons Why You need Qualified SSAs in IMS DB DL/I Calls

An SSA (segment search arguments) you can use in DLI calls. The SSAs are two types – Qualified and Unqualified. Here are the five reasons to be added qualified SSAs in IMS DB DLI calls.

Qualified SSA in IMS DB

Point-1: 

A DL/I call can be qualified or unqualified. A qualified call is one that specifies one or more SSAs (segment search arguments). An SSA provides additional information for the DL/I call.

Point-2:

The simplest SSA identifies a segment type for the call to access. Other SSAs not only identify the segment type, but they also specify a value or a set of values to select a particular segment occurrence. An unqualified call does not have any SSAs and, therefore does not specify a particular segment or set of segments.

Point-3:

If an SSA describes only the segment type to be accessed, it is an unqualified SSA. (The call is still a qualified call, but the SSA itself is unqualified.) In an unqualified SSA, you can also specify an optional command code, which might affect how the call function is performed or it might affect the qualification of a segment.

Point-4:

An unqualified SSA has the form – segment-name <command code>

where segment-name is an 8-byte field specifying the segment type, followed by a blank. A blank follows because the minimum SSA length for a DL/I call is 9 bytes. Command codes consist of an asterisk (*) followed by a letter, such as *U or *D. If an SSA provides a field name and specific value for that field, it is a qualified SSA. A qualified SSA has the form:
segment-name <command code> (field-name operator value . . .)

where segment-name is the 8-byte segment type, field-name is the 8-byte name of a sequence or search field for that segment as defined in the DBD, and operator is a 2-byte field that contains a comparison operator. Value is a value that is compared to the specified field in the segment.

In your search if you mention the value to the key, which is called qualified SSA. If you don’t mention key value, it just goes to particular segment, which is called un-qualified SSA.

Point-5:

The values for each of the segment type, field name, operator, and value must be padded to represent the total number of bytes used by the particular field in the DBD. IMS requires the padding. The first segment occurrence that satisfies the qualification or qualifications is retrieved.

For example, to retrieve a CUSTOMER segment for Hooper J. Walls, the Get (retrieve) call would be qualified with this qualified SSA:


CUSTOMER(CUSTNAME =WALLS, HOOPER J. )

The comparison operators that IMS uses in a qualified SSA, along with their alternate forms, are listed in the following table.

OperatorAlternate Form
== or EQ*
>> or GT
<< or LT
>==> or GE
<==< or LE
¬==¬ or NE
&or AND (dependent AND)
|+ or OR (logical OR)

Related Posts

Latest from the Blog

Databricks Cluster Min & Max: How to Find and Right-Size

Learn how to find and audit Min and Max worker limits in Databricks, track real cluster usage via system tables, and prevent runaway compute costs.

Tony Robbins Vocabulary: 50 Powerful Words and Phrases to Improve Your English

Learn 50 powerful Tony Robbins vocabulary words and phrases with simple meanings and example sentences to improve your English speaking skills

Migrating JSON Files from AWS S3 to PostgreSQL Using AWS Glue and PySpark

Migrating JSON files from AWS S3 to PostgreSQL using AWS Glue and PySpark is one of the most common data engineering challenges teams face today. In this guide, you will learn exactly how to build a production-grade AWS Glue JSON to PostgreSQL migration pipeline — from reading raw JSON files in S3 to writing clean,…

Discover more from Srinimf

Subscribe now to keep reading and get access to the full archive.

Continue reading