Skip to content

Impact Analysis Functions

The XML Services CMPONENT/IMP_ANAL/LIST and CMPONENT/XAP_ANAL/LIST have been retired. New services exist as follows:

  • IMPACT BUN LIST

  • IMPACT CMPONENT LIST

  • IMPACT TABLE LIST

IMPACT BUN LIST

This service is used to list information about appl/libtype/baseline correlations. There are three types of queries:

  • BUN01: list entry for a specific BUN (or all BUNs if the BUN input tag is omitted)

  • BUN02: list entry for a specific application and library type

  • BUN03: list all entries for a specific baseline dataset name

IMPACT BUN LIST — Request

The following request supplies only the query type, BUN01. This will produce a list of all the BUNs with their corresponding data set names and library types.

Example XML — IMPACT BUN LIST Request

<?xml version="1.0"?>
<service name="IMPACT">
    <scope name="BUN">
        <message name="LIST">  
            <header>
                <subsys>3</subsys>
                <product>CMN</product>
            </header>
            <request> 
                <queryType>BUN01</queryType> 
            </request>
        </message>  
    </scope>
</service>

Data structure details appear in Exhibit 6-11.

Exhibit 6-11 IMPACT BUN LIST <request> Data Structure

Subtag Use Occurs Data Type & Length Values & Dependencies
<appl> Optional 0 - 1 String (4), variable Application name.
<baseline> Optional 0 - 1 String (44), variable Baseline repository.
<bun> Optional 0 - 1 String (8), variable Baseline Unique Number.
<libLike> Optional 0 - 1 String (1) Library like type.
<libType> Optional 0 - 1 String (3), variable Library type.
<queryType> Required 1 - 1 String (5) Query type.

IMPACT BUN LIST — Reply

Example XML — IMPACT BUN LIST Reply

<?xml version="1.0"?>
<service name="IMPACT">
    <scope name="BUN">
        <message name="LIST">  
            <result>
                <bun>00025000</bun>
                <appl>ACTP</appl>
                <libType>CPS</libType>
                <libLike>C</libLike>
                <baseline>CMNTP.SERT3.BASE.ACTP.CPS</baseline>
            </result>
            <result>
                <bun>0002501B</bun>
                <appl>ACTP</appl>
                <libType>CPY</libType>
                <libLike>C</libLike>
                <baseline>CMNTP.SERT3.BASE.ACTP.CPY</baseline>
            </result>
            <result>
                <bun>00025036</bun>
                <appl>ACTP</appl>
                <libType>DBR</libType>
                <libLike>P</libLike>
                <baseline>CMNTP.SERT3.BASE.ACTP.DBR</baseline>
            </result>
            <result>
                <bun>00025051</bun>
                <appl>ACTP</appl>
                <libType>LCT</libType>
                <libLike>K</libLike>
                <baseline>CMNTP.SERT3.BASE.ACTP.LCT</baseline>
            </result> 
            .
            .
            .
            <response>
                <statusMessage>CMN8700I - LIST service completed</statusMessage>
                <statusReturnCode>00</statusReturnCode>
                <statusReasonCode>8700</statusReasonCode>
            </response>
        </message>
    </scope> 
</service>

Data structure details appear in Exhibit 6-12.

Exhibit 6-12 IMPACT BUN LIST <reply> Data Structure

Subtag Use Occurs Data Type & Length Values & Dependencies
<appl> Optional 0 - 1 String (4), variable Application name.
<baseline> Optional 0 - 1 String (44), variable Baseline repository.
<bun> Optional 0 - 1 String (8), variable Baseline Unique Number.
<libLike> Optional 0 - 1 String (1) Library like type.
<libType> Optional 0 - 1 String (3), variable Library type.

IMPACT CMPONENT LIST

This service can be used to list information held in the I/A table about baselined components. This will be mostly used to extract version identifier information (hash tokens, setssi values).

IMPACT CMPONENT LIST — Request

The following requests information for SRS component GNLSRS00 in the ACTP application.

Example XML — IMPACT CMPONENT LIST Request

<?xml version="1.0"?>
<service name="IMPACT">
    <scope name="CMPONENT">
        <message name="LIST">
            <header>
                <subsys>3</subsys>
                <product>CMN</product>
            </header>
            <request> 
                <appl>ACTP</appl> 
                <libType>SRS</libType> 
                <component>GNLSRS00</component> 
            </request>  
        </message>
    </scope> 
</service>

Data structure details appear in Exhibit 6-13.

Exhibit 6-13 IMPACT CMPONENT LIST <request> Data Structure

Subtag Use Occurs Data Type & Length Values & Dependencies
<appl> Required 1 - 1 String (4), variable Application name.
<bun> Optional 0 - 1 String (8), variable Baseline Unique Number.
<component> Required 1 - 1 String(256), variable ZMF component name. If component is PDS member, this is member name (max 8 bytes, no qualifiers). If component is HFS file, this is Unix-style long file name, optionally prefixed by path from installation root.
<currentBaseline> Optional 0 - 1 String (44), variable Current baseline? (Y/N)
<libType> Required 1 - 1 String (3), variable Library type.

IMPACT CMPONENT LIST — Reply

*Example XML — IMPACT CMPONENT LIST Reply

<?xml version="1.0"?>
<service name="IMPACT">
    <scope name="CMPONENT">
        <message name="LIST">  
            <result>
                <bun>000250D8</bun>
                <appl>ACTP</appl>
                <libType>SRS</libType>
                <component>GNLSRS00</component>
                <currentBaseline>Y</currentBaseline>
                <versionId>C8977307000002A3</versionId>
            </result>
            <response>
                <statusMessage>CMN8700I - LIST service completed</statusMessage>
                <statusReturnCode>00</statusReturnCode>
                <statusReasonCode>8700</statusReasonCode>
            </response> 
        </message> 
    </scope> 
</service>

Data structure details appear in Exhibit 6-14

Exhibit 6-14 IMPACT CMPONENT LIST <reply> Data Structure

Subtag Use Occurs Data Type & Length Values & Dependencies
<appl> Required 1 - 1 String (4), variable Application name.
<bun> Optional 0 - 1 String (8), variable Baseline Unique Number.
<component> Required 1 - 1 String (256), variable Component name. If component is PDS member, this is member name (max 8 bytes, no qualifiers). If component is HFS file, this is Unix-style long file name, optionally prefixed by path from installation root.
<currentBaseline> Required 0 - 1 String (44), variable Current baseline.
<libType> Required 1 - 1 String (3), variable Library type.
<versionid> Required 1 - 1 String (16), variable Version Identifier.

IMPACT TABLE LIST

Use this service to access impact analysis relationship information. Several types of query are available within this service and the user will have to know which one they wish to use. Current types are:

  • IAQ01: all rows for a top level component name

  • IAQ02: all rows for a top level component name and BUN

  • IAQ03: all rows for a top level component name and BUN and relationship

  • IAQ04: all rows for bottom level component name and relationship

There are further XAPnn query types where knowledge of the BUN is not required. In the descriptions that follow only the component names may be wild carded. All other specified predicates must be fully explicit. If a field is not listed in the description of the query then it plays no part in selection. A number of these queries will overlap in function if a name is fully wildcarded. To use these queries you need to decide which one you want to use. The ISPF dialog functions Q.B and Q.I will use the appropriate query based on the fields provided in the input panel.

  • XAP00:all rows for top component name, relationship and bottom component name

  • XAP01:all rows for top component name, top application, top libtype, relation and bottom component name

  • XAP02:all rows for top component name, relation and bottom component name, bottom appl, bottom libtype

  • XAP03:all rows for top component name, top application, top libtype, relation and bottom component name, bottom appl, bottom libtype

  • XAP04:all rows for top component name, top libtype, relation and bottom component name

  • XAP05:all rows for top component name, relation and bottom component name, bottom libtype

  • XAP06:all rows for top component name, top libtype, relation and bottom component name, bottom libtype

  • XAP07:all rows for top component name, and relation

  • XAP08:all rows for top component name, top application, top libtype and relation

  • XAP09:all rows for top component name, top libtype and relation

  • XAP14:all rows for top component name, top libtype, relation and bottom component name, bottom appl, bottom libtype

  • XAP15:all rows for top component name, top application, top libtype, relation and bottom component name, bottom libtype

IMPACT TABLE LIST — Request

The following requests information for CPY component GNLCPY00.

Example XML — IMPACT TABLE LIST Request

<?xml version="1.0"?>
<service name="IMPACT">
    <scope name="TABLE">
        <message name="LIST"> <header>
            <subsys>3</subsys>
                <product>CMN</product>
            </header>
            <request> 
                <queryType>XAP00</queryType> 
                <topLevelComponent>*</topLevelComponent> 
                <topLevelAppl>*</topLevelAppl>
                <topLevelType>*</topLevelType> 
                <relation>CPY</relation> 
                <bottomLevelComponent>GNLCPY00</bottomLevelComponent> 
            </request> 
        </message> 
    </scope>
</service>

Data structure details appear in Exhibit 6-13

Exhibit 6-15 IMPACT TABLE LIST <request> Data Structure

Subtag Use Occurs Data Type & Length Values & Dependencies
<bottomLevelAppl> Required 1 - 1 String (4), variable Bottom level component application name.
<bottomLevelBUN> Optional 0 - 1 String (8), variable Bottom level BUN.
<bottomLevelComponent> Optional 1 - 1 String(16), variable Bottom level Component name.
<bottomLevelType> Optional 0 - 1 String (4), variable Bottom level library type
<bottomVerID> Optional 0 - 1 String (16), variable Bottom level version ID.
<queryType> Required 1 - 1 String (5) Query type.
<relation> Optional 1 - 1 String (3) Relationship.
<topLevelAppl> Optional 1 - 1 String (4),variable. Top level application name.
<topLevelBUN> Optional 1 - 1 String (8),variable. Top level BUN.
<topLevelComponent> Optional 1 - 1 String (256), variable. Top level component name.
<topLevelType> Optional 1 - 1 String (3) Top level library type.

IMPACT TABLE LIST — Reply

The following requests information for CPY component GNLCPY00.

Example XML — IMPACT TABLE LIST Reply

<?xml version="1.0"?>
<service name="IMPACT">
    <scope name="TABLE">
        <message name="LIST">
            <result>
                <topLevelComponent>ACPSRC1A</topLevelComponent>
                <topLevelAppl>ACTP</topLevelAppl>
                <topLevelType>SRC</topLevelType>
                <topLevelBUN>000250BD</topLevelBUN>
                <topVerID>0B5DEB4D000004BA</topVerID>
                <relation>CPY</relation>

...

                <bottomLevelComponent>GNLCPY00</bottomLevelComponent>
                <bottomLevelAppl>ACTP</bottomLevelAppl>
                <bottomLevelType>CPY</bottomLevelType>
                <bottomLevelBUN>0002501B</bottomLevelBUN>
                <bottomVerID>0000000000000000</bottomVerID> 
            </result>
            <result>
                <topLevelComponent>ACPSRC1A</topLevelComponent>
                <topLevelAppl>ACTP</topLevelAppl>
                <topLevelType>SRS</topLevelType>
                <topLevelBUN>000250D8</topLevelBUN>
                <topVerID>0B5DEB4D000004BA</topVerID>
                <relation>CPY</relation>
                <bottomLevelComponent>GNLCPY00</bottomLevelComponent>
                <bottomLevelAppl>ACTP</bottomLevelAppl>
                <bottomLevelType>CPY</bottomLevelType>
                <bottomLevelBUN>0002501B</bottomLevelBUN>
                <bottomVerID>7CD43F6F00000155</bottomVerID>
            </result>
            .
            .
            <result>
                <topLevelComponent>GNLSRS5C</topLevelComponent>
                <topLevelAppl>GENL</topLevelAppl>
                <topLevelType>SRS</topLevelType>
                <topLevelBUN>000251F2</topLevelBUN>
                <topVerID>414E1E1300000244</topVerID>
                <relation>CPY</relation>
                <bottomLevelComponent>GNLCPY00</bottomLevelComponent>
                <bottomLevelAppl>GENL</bottomLevelAppl>
                <bottomLevelType>CPY</bottomLevelType>
                <bottomLevelBUN>00025135</bottomLevelBUN>
                <bottomVerID>7CD43F6F00000155</bottomVerID>
            </result>
            <response>
                <statusMessage>CMN8700I - LIST service completed</statusMessage>
                <statusReturnCode>00</statusReturnCode>
                <statusReasonCode>8700</statusReasonCode>
            </response>
        </message>
    </scope>
</service>

Data structure details appear in Exhibit 6-16.

Exhibit 6-16 IMPACT TABLE LIST <reply> Data Structure

Subtag Use Occurs Data Type & Length Values & Dependencies
<bottomLevelAppl> Optional 1 - 1 String (4), variable Bottom level component application name.
<bottomLevelBUN> Optional 0 - 1 String (8), variable Bottom level BUN.
<bottomLevelComponent> Optional 1 - 1 String(16), variable Bottom level Component name.
<bottomLevelType> Optional 0 - 1 String (4), variable Bottom level library type
<bottomVerID> Optional 0 - 1 String (16), variable Bottom level version ID.
<queryType> Optional 1 - 1 String (5) Query type.
<relation> Optional 1 - 1 String (3) Relationship.
<topLevelAppl> Optional 1 - 1 String (4),variable. Top level application name.
<topLevelBUN> Optional 1 - 1 String (8),variable. Top level BUN.
<topLevelComponent> Optional 1 - 1 String (256), variable. Top level component name.
<topLevelType> Optional 1 - 1 String (3) Top level library type.
<topVerID> Optional 1 - 1 String (16), variable. Top level version ID.

The ISPF I/A query function is largely unchanged from the DB2 license version currently in force. It is sometimes difficult to comprehend the difference between the "Bill of Materials" query (Q.B) and the "Impact Analysis" query. Q.B is intended for a top down search, i.e. I know the name of the top level component I want enquire about, now show me its constituent parts (Bill of Materials). The Q.I function is focussed on a bottom up search, i.e. given this particular subcomponent show me all components that reference it. This approach has not changed but will be new for all current non-DB2 license customers.

There have been some minor changes to the functionality. We no longer accept partially wildcarded applications or library types in these queries, they can be fully explicit or omitted (or fully wildcarded).

We no longer attempt to convert applications and library types to BUNs and use those for lookup, we will use the appl/libtype as supplied by the customer (as is) and match against those recorded in the i/a table. If a customer wishes to see all relationships for a shared baseline (in a Q.I query) then they need to leave application and/or library type as fully wildcarded. As a corollary of this, we also no longer display the full list of appl/libtypes which share the same baseline as the component in question.

The preceding XML IMPACT TABLE LIST request is the same query issued by option Q.I from the ISPF interface, as shown below.

Example ISPF Request — Q.I

IMPACT ANALYSIS OF SUBORDINATE COMPONENTS
COMMAND ===>

SPECIFY SEARCH CRITERIA:

Subordinate component name ===> GNLCPY00
              Library type ===>
               Application ===>

      Type of relationship ===> C

SPECIFY RESULTS FILTER CRITERIA:

   Superior component name ===> *
              Library type ===> *
               Application ===> *

Press ENTER to process; Enter END command to exit.

Example ISPF Reply — Q.I

Impact Analysis Results Selection List Row 1 to 11
Command ===>                                               Scroll ===>

List of components which reference 
  Appl:Type *     : *    Name GNLCPY00 
with a relationship of        COPYBOOK 
which satisfy these criteria 
  Appl:Type *     : *    Name *

Found in
Appl:Lib    Component Name
_ ACTP:SRC  ACPSRC1A
_ ACTP:SRS  ACPSRC1A
_ GENL:SRC  GNLSRC1A
_ GENL:SRS  GNLSRC1A
_ ACTP:SRS  GNLSRS00
_ GENL:SRS  GNLSRS00
_ GENL:SRS  GNLSRS1B
_ GENL:SRS  GNLSRS1C
_ GENL:SRS  GNLSRS5A
_ GENL:SRS  GNLSRS5B
_ GENL:SRS  GNLSRS5C
**************************** Bottom of data ***************************