This report presents the exact business rules dynamically extracted from the legacy system. Rules are formatted in an Agile/BDD Given/When/Then structure, offering a bridge between business requirements and technical implementation constraints. Component rules have been logically grouped into feature sets.
🎯 US Train Scope Detected: Extracted 259 rules, Optimally Merged into 59 Feature Scenarios.
Business Justification: Dictates the expected operational logic and validation steps when iscom structure exists with a sit version field and cccom structure contains common area data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: ISCOM structure exists with a SIT version field and CCCOM structure contains common area data
Applied to: Version Check and Data Transfer
Action: The SIT version in ISCOM matches the working storage ISCOM version
Logic Flow:
IF ISCOM structure exists with a SIT version field and CCCOM structure contains common area data
AND The SIT version in ISCOM matches the working storage ISCOM version
THEN:
• Copy common area from CCCOM to ISCOM and update ISCOM SIT version to working storage version
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when iscom structure exists with incompatible sit version and cccom structure contains source data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: ISCOM structure exists with incompatible SIT version and CCCOM structure contains source data
Applied to: ISCOM Initialization
Action: The SIT version in ISCOM does not match the working storage ISCOM version
Logic Flow:
IF ISCOM structure exists with incompatible SIT version and CCCOM structure contains source data
AND The SIT version in ISCOM does not match the working storage ISCOM version
THEN:
• Initialize ISCOM with default values from ISCOMVAL, copy common area from CCCOM, and update SIT version
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when cccom and iscom structures require cross-referencing for communication.
Trigger Criteria:
Context: CCCOM and ISCOM structures require cross-referencing for communication
Applied to: Cross-Reference Address Setup
Action: ISCOM version mismatch triggers full initialization process
Logic Flow:
IF CCCOM and ISCOM structures require cross-referencing for communication
AND ISCOM version mismatch triggers full initialization process
THEN:
• Set CCCOM address in ISCOM structure and set ISCOM address in CCCOM structure
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when cccom contains lt-pcbs information and iscom requires pcb data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: CCCOM contains LT-PCBS information and ISCOM requires PCB data
Applied to: PCB Transfer
Action: Full ISCOM initialization is required due to version mismatch
Logic Flow:
IF CCCOM contains LT-PCBS information and ISCOM requires PCB data
AND Full ISCOM initialization is required due to version mismatch
THEN:
• Copy LT-PCBS data from CCCOM to ISCOM structure
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when cccom table contains database entries with names and cccom-table-size defines maximum entries.
Trigger Criteria:
Context: CCCOM table contains database entries with names and CCCOM-TABLE-SIZE defines maximum entries
Applied to: Database Name Scanning
Action: Database address scanning is initiated during ISCOM initialization
Logic Flow:
IF CCCOM table contains database entries with names and CCCOM-TABLE-SIZE defines maximum entries
AND Database address scanning is initiated during ISCOM initialization
THEN:
• Process each CCCOM entry from position 1 until reaching table size limit or finding empty database name
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when cccom entry contains database number field that may be empty or contain spaces. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: CCCOM entry contains database number field that may be empty or contain spaces
Applied to: PCB Number Processing
Action: Processing a CCCOM database entry during scanning
Logic Flow:
IF CCCOM entry contains database number field that may be empty or contain spaces
AND Processing a CCCOM database entry during scanning
THEN:
• Initialize ISCOM PCB number to zero, copy database number from CCCOM, andif database number is spaces then set CCCOM PCB number to '1'
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when cccom entry has database name and iscom table contains database entries with names.
Trigger Criteria:
Context: CCCOM entry has database name and ISCOM table contains database entries with names
Applied to: Database Name Matching
Action: Scanning ISCOM table for matching database names during address mapping
Logic Flow:
IF CCCOM entry has database name and ISCOM table contains database entries with names
AND Scanning ISCOM table for matching database names during address mapping
THEN:
• Process each ISCOM entry from position 1 until reaching table size limit or finding empty database name
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when cccom database name matches iscom database name during scanning process.
Trigger Criteria:
Context: CCCOM database name matches ISCOM database name during scanning process
Applied to: PCB Counter Management
Action: Database names are identical between CCCOM entry and ISCOM entry
Logic Flow:
IF CCCOM database name matches ISCOM database name during scanning process
AND Database names are identical between CCCOM entry and ISCOM entry
THEN:
• Increment ISCOM PCB number by 1
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when iscom pcb number equals cccom pcb number for matching database names.
Trigger Criteria:
Context: ISCOM PCB number equals CCCOM PCB number for matching database names
Applied to: PCB Address Mapping
Action: PCB numbers match after incrementing ISCOM PCB counter
Logic Flow:
IF ISCOM PCB number equals CCCOM PCB number for matching database names
AND PCB numbers match after incrementing ISCOM PCB counter
THEN:
• Set PCB address in ISCOM entry to match PCB address from corresponding CCCOM entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when cccom structure exists with sit version field and iscom structure contains source data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: CCCOM structure exists with SIT version field and ISCOM structure contains source data
Applied to: Reverse Conversion Version Check
Action: Reverse conversion entry point is accessed and CCCOM SIT version matches working storage CCCOM version
Logic Flow:
IF CCCOM structure exists with SIT version field and ISCOM structure contains source data
AND Reverse conversion entry point is accessed and CCCOM SIT version matches working storage CCCOM version
THEN:
• Copy common area from ISCOM to CCCOM and update CCCOM SIT version to working storage version
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when cccom sit version does not match working storage version and iscom contains source data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: CCCOM SIT version does not match working storage version and ISCOM contains source data
Applied to: Reverse Data Transfer
Action: Reverse conversion is initiated with version mismatch
Logic Flow:
IF CCCOM SIT version does not match working storage version and ISCOM contains source data
AND Reverse conversion is initiated with version mismatch
THEN:
• Copy common area from ISCOM to CCCOM and update CCCOM SIT version to working storage version
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when iscom contains lt-pcbs information and cccom requires pcb data during reverse conversion. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: ISCOM contains LT-PCBS information and CCCOM requires PCB data during reverse conversion
Applied to: Reverse PCB Transfer
Action: CCCOM version mismatch triggers full reverse initialization
Logic Flow:
IF ISCOM contains LT-PCBS information and CCCOM requires PCB data during reverse conversion
AND CCCOM version mismatch triggers full reverse initialization
THEN:
• Copy LT-PCBS data from ISCOM to CCCOM structure and set up cross-reference addresses
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when iscom table contains entries with pcb address fields that may be zero or non-zero.
Trigger Criteria:
Context: ISCOM table contains entries with PCB address fields that may be zero or non-zero
Applied to: Active PCB Identification
Action: Scanning ISCOM entries during reverse conversion process
Logic Flow:
IF ISCOM table contains entries with PCB address fields that may be zero or non-zero
AND Scanning ISCOM entries during reverse conversion process
THEN:
• Process only entries where PCB address is not equal to zero
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when iscom entry has non-zero pcb address and database name.
Trigger Criteria:
Context: ISCOM entry has non-zero PCB address and database name
Applied to: PCB Sequence Numbering
Action: Processing active ISCOM entry during reverse conversion
Logic Flow:
IF ISCOM entry has non-zero PCB address and database name
AND Processing active ISCOM entry during reverse conversion
THEN:
• Initialize ISCOM PCB number to 1 and count matching database names in previous entries to determine sequence number
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when active iscom entry contains database name and pcb information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Active ISCOM entry contains database name and PCB information
Applied to: Database Entry Creation
Action: Processing ISCOM entry with non-zero PCB address during reverse conversion
Logic Flow:
IF Active ISCOM entry contains database name and PCB information
AND Processing ISCOM entry with non-zero PCB address during reverse conversion
THEN:
• Increment CCCOM entry counter and copy database name from ISCOM to CCCOM entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when iscom entry contains pcb address and corresponding cccom entry has been created.
Trigger Criteria:
Context: ISCOM entry contains PCB address and corresponding CCCOM entry has been created
Applied to: Reverse PCB Address Mapping
Action: Creating CCCOM database entry from active ISCOM entry
Logic Flow:
IF ISCOM entry contains PCB address and corresponding CCCOM entry has been created
AND Creating CCCOM database entry from active ISCOM entry
THEN:
• Set PCB address in CCCOM entry to match PCB address from ISCOM entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when iscom pcb number has been calculated for database entry and cccom entry requires database number.
Trigger Criteria:
Context: ISCOM PCB number has been calculated for database entry and CCCOM entry requires database number
Applied to: Database Number Assignment
Action: Finalizing CCCOM database entry creation during reverse conversion
Logic Flow:
IF ISCOM PCB number has been calculated for database entry and CCCOM entry requires database number
AND Finalizing CCCOM database entry creation during reverse conversion
THEN:
• If ISCOM PCB number equals '1' then set CCCOM database number to spaces, otherwise set CCCOM database number to ISCOM PCB number value
Rule Belongs to : CERR.cbl
Business Justification: Defines the strict business conditions required to proceed when error processing program starts execution. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The error processing program starts execution
Applied to: Common Error Processing - Call DCCCOM
Action: The program begins error handling workflow
Logic Flow:
IF The error processing program starts execution
AND The program begins error handling workflow
THEN:
• The common communication area CCCOM is initialized through DCCCOM service
Rule Belongs to : CERR.cbl
Business Justification: Defines the strict business conditions required to proceed when common communication area has been initialized. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The common communication area has been initialized
Applied to: Dump Only Check - WS-DUMP-ONLY?
Action: The system checks the dump-only mode flag WS-DUMP-ONLY
Logic Flow:
IF The common communication area has been initialized
AND The system checks the dump-only mode flag WS-DUMP-ONLY
THEN:
• IfWS-DUMP-ONLY is true, skip environment-specific error handling and proceed directly to error notification; ifWS-DUMP-ONLY is false, continue with environment detection
Rule Belongs to : CERR.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is not in dump-only mode and environment detection is required. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is not in dump-only mode and environment detection is required
Applied to: Environment Detection - CC-PROD-TEST-IMS = WS-PROD?
Action: The system compares CC-PROD-TEST-IMS with WS-PROD value
Logic Flow:
IF The system is not in dump-only mode and environment detection is required
AND The system compares CC-PROD-TEST-IMS with WS-PROD value
THEN:
• IfCC-PROD-TEST-IMS equals WS-PROD, route to production error handling; otherwise route to test error handling
Rule Belongs to : CERR.cbl
Business Justification: Defines the strict business conditions required to proceed when system has detected production environment (cc-prod-test-ims equals ws-prod). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system has detected production environment (CC-PROD-TEST-IMS equals WS-PROD)
Applied to: Production Error Handling - Call CERRPROD
Action: Production error handling is required
Logic Flow:
IF The system has detected production environment (CC-PROD-TEST-IMS equals WS-PROD)
AND Production error handling is required
THEN:
• The CERRPROD service is invoked with CCCOM communication area to handle production-specific error processing
Rule Belongs to : CERR.cbl
Business Justification: Establishes the required business protocol to be followed when system has detected test environment (cc-prod-test-ims does not equal ws-prod). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system has detected test environment (CC-PROD-TEST-IMS does not equal WS-PROD)
Applied to: Test Error Handling - Call CERRTEST
Action: Test error handling is required
Logic Flow:
IF The system has detected test environment (CC-PROD-TEST-IMS does not equal WS-PROD)
AND Test error handling is required
THEN:
• The CERRTEST service is invoked with CCCOM communication area to handle test-specific error processing
Rule Belongs to : CERR.cbl
Business Justification: Establishes the required business protocol to be followed when error processing has completed (either environment-specific handling or dump-only mode).
Trigger Criteria:
Context: Error processing has completed (either environment-specific handling or dump-only mode)
Applied to: Error Notification Display - Display blocking error message
Action: Error notification is required
Logic Flow:
IF Error processing has completed (either environment-specific handling or dump-only mode)
AND Error notification is required
THEN:
• Display blocking error message with header and footer delimiters to system error output (SYSERR)
Rule Belongs to : CERR.cbl
Business Justification: Governs the functional prerequisites and system routing when all error processing steps and notifications have been completed.
Trigger Criteria:
Context: All error processing steps and notifications have been completed
Applied to: Program Termination - Return control
Action: The error processing workflow reaches completion
Logic Flow:
IF All error processing steps and notifications have been completed
AND The error processing workflow reaches completion
THEN:
• Return control to the calling program using GOBACK statement
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when cims program is invoked with linkage parameters.
Trigger Criteria:
Context: A CIMS program is invoked with linkage parameters
Applied to: Parameter Address Linkage Setup
Action: The system processes the parameter count and argument addresses
Logic Flow:
IF A CIMS program is invoked with linkage parameters
AND The system processes the parameter count and argument addresses
THEN:
• Memory addresses are established for CCCOM, FUNC, andADDR-AREA parameters and the argument count is stored for subsequent processing
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when parameter addresses are established and argument count is available.
Trigger Criteria:
Context: Parameter addresses are established and argument count is available
Applied to: Function and SSA Parameter Processing
Action: The system processes parameters 4 through 10 representing IO-AREA and SSA1 through SSA6
Logic Flow:
IF Parameter addresses are established and argument count is available
AND The system processes parameters 4 through 10 representing IO-AREA and SSA1 through SSA6
THEN:
• Function code is stored in CCCOM last IMS function, SSA parameters are mapped to their respective addresses and stored in CCCOM last SSA fields, andIO-AREA address is established when 4 or more arguments are provided
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when cccom iscom address is not null and not blank pointer.
Trigger Criteria:
Context: CCCOM ISCOM address is not null and not blank pointer
Applied to: ISCOM Address Validation
Action: The system checks ISCOM address availability
Logic Flow:
IF CCCOM ISCOM address is not null and not blank pointer
AND The system checks ISCOM address availability
THEN:
• ISCOM address is established for subsequent processing
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when cccom structure is available with version information.
Trigger Criteria:
Context: CCCOM structure is available with version information
Applied to: CCCOM Version Compatibility Check
Action: The system compares CCCOM SIT version with working storage CCCOM version
Logic Flow:
IF CCCOM structure is available with version information
AND The system compares CCCOM SIT version with working storage CCCOM version
THEN:
• ISCOM compatibility check is performed only when versions match
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when addr-area is not null, pcb address is valid, cccom version is compatible, and pcb copy is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context:ADDR-AREA is not null, PCB address is valid, CCCOM version is compatible, and PCB copy is available
Applied to: PCB Address Reset Logic
Action: Segment level is not '98' or '99' OR force reset flag is true
Logic Flow:
IFADDR-AREA is not null, PCB address is valid, CCCOM version is compatible, and PCB copy is available
AND Segment level is not '98' or '99' OR force reset flag is true
THEN:
• First 8 positions of ADDR-AREA are cleared with spaces
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when pcb address is null or blank pointer.
Trigger Criteria:
Context: PCB address is null or blank pointer
Applied to: PCB Address Resolution
Action: The system searches through up to 249 database name entries
Logic Flow:
IF PCB address is null or blank pointer
AND The system searches through up to 249 database name entries
THEN:
• Search continues until valid PCB address is found, maximum entries reached, or database name entry is spaces, and matching PCB address is retrieved when database name matches table entry
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when pcb address resolution process is completed.
Trigger Criteria:
Context: PCB address resolution process is completed
Applied to: PCB Address Validation
Action: PCB address remains null after resolution attempts
Logic Flow:
IF PCB address resolution process is completed
AND PCB address remains null after resolution attempts
THEN:
• Error message is generated with PCB name and number information and error handling routine CERR is invoked
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when valid pcb address exists, function code is available, and all ssa parameters are processed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Valid PCB address exists, function code is available, and all SSA parameters are processed
Applied to: IMS Function Call Execution
Action: The system invokes CBLTDLI with function, PCB copy, IO area, and SSA parameters
Logic Flow:
IF Valid PCB address exists, function code is available, and all SSA parameters are processed
AND The system invokes CBLTDLI with function, PCB copy, IO area, and SSA parameters
THEN:
• IMS database operation is executed and control returns with status information in PCB
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when ims function call is completed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: IMS function call is completed
Applied to: IO PCB Date Time Refresh
Action: Function is 'GU' (Get Unique) AND PCB address equals CCCOM IO PCB address
Logic Flow:
IF IMS function call is completed
AND Function is 'GU' (Get Unique) AND PCB address equals CCCOM IO PCB address
THEN:
• IMS call counter is reset to zero, current system date is obtained and stored in CCCOM machine century and date fields, and current system time is captured and stored in CCCOM machine time field
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when ims function call is executed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: IMS function call is executed
Applied to: IMS Call Counter Management
Action: Any IMS database operation is performed
Logic Flow:
IF IMS function call is executed
AND Any IMS database operation is performed
THEN:
• IMS call counter in CCCOM is incremented by 1
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when ims call counter is updated and pcb copy is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: IMS call counter is updated and PCB copy is available
Applied to: PCB Status Information Update
Action: PCB information needs to be synchronized with CCCOM
Logic Flow:
IF IMS call counter is updated and PCB copy is available
AND PCB information needs to be synchronized with CCCOM
THEN:
• PCB copy is moved to CCCOM copy of PCB field and feedback key length is updated in CCCOM when segment level is not '98' or '99'
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when pcb status information is updated.
Trigger Criteria:
Context: PCB status information is updated
Applied to: Terminal and User Information Capture
Action: Function is 'GU' (Get Unique) OR 'CHKP' (Checkpoint) AND PCB address equals CCCOM IO PCB address
Logic Flow:
IF PCB status information is updated
AND Function is 'GU' (Get Unique) OR 'CHKP' (Checkpoint) AND PCB address equals CCCOM IO PCB address
THEN:
• CCCOM LTERM name is copied to CCCOM original LTERM field and CCCOM user ID is copied to CCCOM ACF2 user ID field
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when ims operation is completed with status code in cccom.
Trigger Criteria:
Context: IMS operation is completed with status code in CCCOM
Applied to: Status Code Validation
Action: Status code is not blank (spaces)
Logic Flow:
IF IMS operation is completed with status code in CCCOM
AND Status code is not blank (spaces)
THEN:
• Status code is compared against up to 12 acceptable status codes in CCCOM acceptable status table
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when status code validation is completed.
Trigger Criteria:
Context: Status code validation is completed
Applied to: Error Message Generation
Action: Status code is not found in acceptable status code table after checking all 12 entries
Logic Flow:
IF Status code validation is completed
AND Status code is not found in acceptable status code table after checking all 12 entries
THEN:
• Error message is constructed with status code and 'IMS RC CODE NOT IN ACCEPTABLE LIST' text, error message is stored in CCCOM error message field, and error handling routine CERR is invoked
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when ims operation completed successfully with blank status code or acceptable status code found.
Trigger Criteria:
Context: IMS operation completed successfully with blank status code OR acceptable status code found
Applied to: Common Area Synchronization
Action: CCCOM ISCOM address is not null and not blank pointer
Logic Flow:
IF IMS operation completed successfully with blank status code OR acceptable status code found
AND CCCOM ISCOM address is not null and not blank pointer
THEN:
• CCCOM common area is copied to ISCOM common area to maintain data consistency
Rule Belongs to : WRITMSGL.cbl
Business Justification: Dictates the expected operational logic and validation steps when program has started execution.
Trigger Criteria:
Context: The program has started execution
Applied to: Message Writing Initialization
Action: The message writing initialization is triggered
Logic Flow:
IF The program has started execution
AND The message writing initialization is triggered
THEN:
• The basic message writing function WRITMSG is invoked
Rule Belongs to : WRITMSGL.cbl
Business Justification: Defines the strict business conditions required to proceed when basic message writing has been completed and six parameters p1, p2, p3, p4, p5, p6 are available.
Trigger Criteria:
Context: The basic message writing has been completed and six parameters P1, P2, P3, P4, P5, P6 are available
Applied to: Parameterized Message Writing
Action: The parameterized message writing is triggered
Logic Flow:
IF The basic message writing has been completed and six parameters P1, P2, P3, P4, P5, P6 are available
AND The parameterized message writing is triggered
THEN:
• The extended message writing function WRITMSGX is invoked with parameters P1, P2, P3, P4, P5, P6
Rule Belongs to : WRITMSGL.cbl
Business Justification: Dictates the expected operational logic and validation steps when program execution begins.
Trigger Criteria:
Context: The program execution begins
Applied to: Program Start to Program End
Action: Message processing workflow is initiated
Logic Flow:
IF The program execution begins
AND Message processing workflow is initiated
THEN:
• Basic message writing must be completed before parameterized message writing, and program terminates after both operations complete
Rule Belongs to : GCCMQERR.cbl
Business Justification: Defines the strict business conditions required to proceed when input error number is provided and an error table exists with error numbers and corresponding text messages.
Trigger Criteria:
Context: An input error number is provided and an error table exists with error numbers and corresponding text messages
Applied to: Error Code Lookup
Action: The system performs a sequential search through the error table starting from index 1 and incrementing by 1
Logic Flow:
IF An input error number is provided and an error table exists with error numbers and corresponding text messages
AND The system performs a sequential search through the error table starting from index 1 and incrementing by 1
THEN:
• The search continues until either the input error number matches an error number in the table OR an empty entry (spaces) is encountered indicating end of table
Rule Belongs to : GCCMQERR.cbl
Business Justification: Ensures correct system behavior and process compliance when error table search has completed and the input error number was found in the table.
Trigger Criteria:
Context: The error table search has completed and the input error number was found in the table
Applied to: Error Message Retrieval
Action: The error number at the current index position matches the input error number
Logic Flow:
IF The error table search has completed and the input error number was found in the table
AND The error number at the current index position matches the input error number
THEN:
• The system moves the corresponding error text from the table to the output message text field
Rule Belongs to : GCCMQERR.cbl
Business Justification: Defines the strict business conditions required to proceed when error table search has completed and the input error number was not found in the table.
Trigger Criteria:
Context: The error table search has completed and the input error number was not found in the table
Applied to: Unknown Error Handling
Action: The error number at the current index position does not match the input error number
Logic Flow:
IF The error table search has completed and the input error number was not found in the table
AND The error number at the current index position does not match the input error number
THEN:
• The system moves the input error number to the unknown number field AND moves the unknown message to the output message text field
R-CCISCOM-cbl-00018 (+2)File: CCISCOM.cblBusiness Rule: Version Check and Data Transfer
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when iscom communication area exists with a sit version field and ws-iscom-version contains the expected version. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: ISCOM communication area exists with a SIT version field and WS-ISCOM-VERSION contains the expected version
Applied to: Is ISCOM Version Already Set?
Action: The system compares CC-SIT-VERSION of ISCOM with WS-ISCOM-VERSION
Logic Flow:
IF ISCOM communication area exists with a SIT version field and WS-ISCOM-VERSION contains the expected version
AND The system compares CC-SIT-VERSION of ISCOM with WS-ISCOM-VERSION
THEN:
• If versions match, proceed with simple data transfer; if versions don't match, proceed with full initialization
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when cccom and iscom communication areas exist with cc-common-area fields. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: CCCOM and ISCOM communication areas exist with CC-COMMON-AREA fields
Applied to: Transfer Common Area Data from CCCOM to ISCOM
Action: Version compatibility check passes
Logic Flow:
IF CCCOM and ISCOM communication areas exist with CC-COMMON-AREA fields
AND Version compatibility check passes
THEN:
• Copy CC-COMMON-AREA from CCCOM to CC-COMMON-AREA of ISCOM
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when ws-iscom-version contains the current version and iscom has cc-sit-version field. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context:WS-ISCOM-VERSION contains the current version and ISCOM has CC-SIT-VERSION field
Applied to: Set ISCOM Version
Action: Common area data transfer is completed
Logic Flow:
IFWS-ISCOM-VERSION contains the current version and ISCOM has CC-SIT-VERSION field
Business Justification: Dictates the expected operational logic and validation steps when iscom version (cc-sit-version of iscom) does not equal the working storage iscom version (ws-iscom-version). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: ISCOM version (CC-SIT-VERSION OF ISCOM) does not equal the working storage ISCOM version (WS-ISCOM-VERSION)
Applied to: Initialize ISCOM with Default Values
Action: The system processes ISCOM initialization
Logic Flow:
IF ISCOM version (CC-SIT-VERSION OF ISCOM) does not equal the working storage ISCOM version (WS-ISCOM-VERSION)
AND The system processes ISCOM initialization
THEN:
• ISCOM structure is populated with default values from ISCOMVAL
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when iscom version does not match expected version and iscom has been initialized with default values. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: ISCOM version does not match expected version and ISCOM has been initialized with default values
Applied to: Copy Common Area Data from CCCOM
Action: The system processes common area data transfer
Logic Flow:
IF ISCOM version does not match expected version and ISCOM has been initialized with default values
AND The system processes common area data transfer
THEN:
• Common area data (CC-COMMON-AREA) is copied from CCCOM to ISCOM
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when iscom has been initialized and common area data has been copied. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: ISCOM has been initialized and common area data has been copied
Applied to: Set ISCOM Version Number
Action: The system finalizes ISCOM structure setup
Logic Flow:
IF ISCOM has been initialized and common area data has been copied
AND The system finalizes ISCOM structure setup
THEN:
• ISCOM version (CC-SIT-VERSION OF ISCOM) is set to the working storage ISCOM version (WS-ISCOM-VERSION)
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when iscom version does not match expected version and initialization is in progress.
Trigger Criteria:
Context: ISCOM version does not match expected version and initialization is in progress
Applied to: Initialize ISCOM with Default Values
Action: The system processes LT-PCBS data transfer
Logic Flow:
IF ISCOM version does not match expected version and initialization is in progress
AND The system processes LT-PCBS data transfer
THEN:
• LT-PCBS data (CC-LT-PCBS) is copied from CCCOM to ISCOM
Business Justification: Defines the strict business conditions required to proceed when cccom and iscom communication structures exist and need to reference each other.
Trigger Criteria:
Context: CCCOM and ISCOM communication structures exist and need to reference each other
Applied to: Cross-Reference Address Setup - Set up bidirectional address references between CCCOM and ISCOM structures
Action: Cross-reference setup is initiated
Logic Flow:
IF CCCOM and ISCOM communication structures exist and need to reference each other
AND Cross-reference setup is initiated
THEN:
• CCCOM address reference is stored in ISCOM structure AND ISCOM address reference is stored in CCCOM structure AND bidirectional references are established
R-CCISCOM-cbl-00026 (+1)File: CCISCOM.cblBusiness Rule: PCB Transfer
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when cccom and iscom structures exist and cc-sit-version of iscom does not equal ws-iscom-version. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: CCCOM and ISCOM structures exist and CC-SIT-VERSION of ISCOM does not equal WS-ISCOM-VERSION
Applied to: Transfer PCB Data to ISCOM Structure
Action: The system performs version compatibility processing
Logic Flow:
IF CCCOM and ISCOM structures exist and CC-SIT-VERSION of ISCOM does not equal WS-ISCOM-VERSION
AND The system performs version compatibility processing
THEN:
• CC-LT-PCBS data from CCCOM structure is copied to CC-LT-PCBS field in ISCOM structure
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when iscom and cccom structures exist and cc-sit-version of cccom does not equal ws-cccom-version. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: ISCOM and CCCOM structures exist and CC-SIT-VERSION of CCCOM does not equal WS-CCCOM-VERSION
Applied to: Transfer PCB Data to ISCOM Structure
Action: The system performs reverse version compatibility processing via ISCCCOM entry point
Logic Flow:
IF ISCOM and CCCOM structures exist and CC-SIT-VERSION of CCCOM does not equal WS-CCCOM-VERSION
AND The system performs reverse version compatibility processing via ISCCCOM entry point
THEN:
• CC-LT-PCBS data from ISCOM structure is copied to CC-LT-PCBS field in CCCOM structure
R-CCISCOM-cbl-00028 (+4)File: CCISCOM.cblBusiness Rule: Database Name Scanning
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when database scanning operation needs to begin.
Trigger Criteria:
Context: A database scanning operation needs to begin
Applied to: Initialize Index I = 1
Action: The system starts processing database entries
Logic Flow:
IF A database scanning operation needs to begin
AND The system starts processing database entries
THEN:
• The index counter is set to position 1 to begin scanning from the first entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when database entry scanning operation is in progress with current index position i.
Trigger Criteria:
Context: A database entry scanning operation is in progress with current index position I
Applied to: Index I > CCCOM Table Size?
Action: The system checks if the current index exceeds the CCCOM table size limit
Logic Flow:
IF A database entry scanning operation is in progress with current index position I
AND The system checks if the current index exceeds the CCCOM table size limit
THEN:
• If index I is greater than CCCOM table size, terminate the scanning process, otherwise continue to next validation
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when database entry at position i within the valid table range.
Trigger Criteria:
Context: A database entry at position I within the valid table range
Applied to: Database Name at Position I = SPACES?
Action: The system examines the database name field at the current position
Logic Flow:
IF A database entry at position I within the valid table range
AND The system examines the database name field at the current position
THEN:
• If the database name contains only spaces (empty), terminate the scanning process, otherwise proceed to process the current entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when valid database entry at position i with a non-empty database name.
Trigger Criteria:
Context: A valid database entry at position I with a non-empty database name
Applied to: Process Current Database Entry
Action: The system needs to process the database entry for address mapping
Logic Flow:
IF A valid database entry at position I with a non-empty database name
AND The system needs to process the database entry for address mapping
THEN:
• Invoke the database address scanning procedure (100-SCAN-CC-DB-ADDR) to handle PCB number processing and database name matching
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when database entry has been successfully processed at position i.
Trigger Criteria:
Context: A database entry has been successfully processed at position I
Applied to: Increment Index I by 1
Action: The system completes processing the current database entry
Logic Flow:
IF A database entry has been successfully processed at position I
AND The system completes processing the current database entry
THEN:
• Increment the index I by 1 to move to the next database entry position for continued scanning
R-CCISCOM-cbl-00033 (+1)File: CCISCOM.cblBusiness Rule: PCB Number Processing
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when database entry from cccom table with pcb number field that may be empty or contain spaces.
Trigger Criteria:
Context: A database entry from CCCOM table with PCB number field that may be empty or contain spaces
Applied to: PCB Number Processing - Process and validate PCB numbers, defaulting to '1' when spaces are found
Action: The PCB number field contains spaces or is empty
Logic Flow:
IF A database entry from CCCOM table with PCB number field that may be empty or contain spaces
AND The PCB number field contains spaces or is empty
THEN:
• The system assigns default PCB number '1' to the CCCOM PCB number field
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when database entry from cccom table with a valid pcb number that is not spaces.
Trigger Criteria:
Context: A database entry from CCCOM table with a valid PCB number that is not spaces
Applied to: PCB Number Processing - Process and validate PCB numbers, defaulting to '1' when spaces are found
Action: The PCB number field contains a valid non-space value
Logic Flow:
IF A database entry from CCCOM table with a valid PCB number that is not spaces
AND The PCB number field contains a valid non-space value
THEN:
• The system preserves the existing PCB number value without modification
R-CCISCOM-cbl-00035 (+2)File: CCISCOM.cblBusiness Rule: Database Name Matching
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when cccom database entry at position i and an iscom database entry at position j are being compared.
Trigger Criteria:
Context: A CCCOM database entry at position I and an ISCOM database entry at position J are being compared
Applied to: Do Database Names Match?
Action: The database name in CCCOM entry matches the database name in ISCOM entry
Logic Flow:
IF A CCCOM database entry at position I and an ISCOM database entry at position J are being compared
AND The database name in CCCOM entry matches the database name in ISCOM entry
THEN:
• The system identifies this as a matching database pair and proceeds with PCB number increment and address mapping operations
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when database names between cccom and iscom entries have been confirmed as matching.
Trigger Criteria:
Context: Database names between CCCOM and ISCOM entries have been confirmed as matching
Applied to: Names Match - Proceed with Processing
Action: The matching database names are identified
Logic Flow:
IF Database names between CCCOM and ISCOM entries have been confirmed as matching
AND The matching database names are identified
THEN:
• The ISCOM PCB number is incremented by 1 to maintain proper sequencing
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when database names match and iscom pcb number has been incremented.
Trigger Criteria:
Context: Database names match and ISCOM PCB number has been incremented
Applied to: Names Match - Proceed with Processing
Action: The current ISCOM PCB number equals the CCCOM PCB number for the matched database
Logic Flow:
IF Database names match and ISCOM PCB number has been incremented
AND The current ISCOM PCB number equals the CCCOM PCB number for the matched database
THEN:
• The PCB address from CCCOM entry is assigned to the corresponding ISCOM entry
Business Justification: Governs the functional prerequisites and system routing when database name from cccom entry (i) and a database name from iscom entry (j) are being compared.
Trigger Criteria:
Context: A database name from CCCOM entry (I) and a database name from ISCOM entry (J) are being compared
Applied to: Increment PCB Counter by 1
Action: The database name from CCCOM matches the database name from ISCOM
Logic Flow:
IF A database name from CCCOM entry (I) and a database name from ISCOM entry (J) are being compared
AND The database name from CCCOM matches the database name from ISCOM
THEN:
• The ISCOM PCB number counter is incremented by 1
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when database name from cccom entry at position i and a database name from iscom entry at position j.
Trigger Criteria:
Context: A database name from CCCOM entry at position I and a database name from ISCOM entry at position J
Applied to: Database Names Match?
Action: The system compares the two database names
Logic Flow:
IF A database name from CCCOM entry at position I and a database name from ISCOM entry at position J
AND The system compares the two database names
THEN:
• If the names are identical, proceed to increment PCB counter; otherwise continue to next database entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when two iscom database entries at positions i and k are being compared during reverse processing.
Trigger Criteria:
Context: Two ISCOM database entries at positions I and K are being compared during reverse processing
Applied to: Increment PCB Counter by 1
Action: The database name at position I matches the database name at position K
Logic Flow:
IF Two ISCOM database entries at positions I and K are being compared during reverse processing
AND The database name at position I matches the database name at position K
THEN:
• The ISCOM PCB number counter is incremented by 1
Business Justification: Dictates the expected operational logic and validation steps when cccom entry at position i and an iscom entry at position j both contain database names.
Trigger Criteria:
Context: A CCCOM entry at position I and an ISCOM entry at position J both contain database names
Applied to: Database Names Match Between CCCOM and ISCOM?
Action: The system compares the database name from CCCOM entry I with the database name from ISCOM entry J
Logic Flow:
IF A CCCOM entry at position I and an ISCOM entry at position J both contain database names
AND The system compares the database name from CCCOM entry I with the database name from ISCOM entry J
THEN:
• If the database names are identical, the system proceeds with PCB counter increment; otherwise, it continues to the next entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when database names match between cccom entry i and iscom entry j.
Trigger Criteria:
Context: Database names match between CCCOM entry I and ISCOM entry J
Applied to: Increment ISCOM PCB Counter
Action: The system processes the matching database entries
Logic Flow:
IF Database names match between CCCOM entry I and ISCOM entry J
AND The system processes the matching database entries
THEN:
• The ISCOM PCB number counter is incremented by 1
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when iscom pcb number has been incremented and the cccom pcb number is available.
Trigger Criteria:
Context: The ISCOM PCB number has been incremented and the CCCOM PCB number is available
Applied to: PCB Numbers Match?
Action: The system compares the ISCOM PCB number with the CCCOM PCB number
Logic Flow:
IF The ISCOM PCB number has been incremented and the CCCOM PCB number is available
AND The system compares the ISCOM PCB number with the CCCOM PCB number
THEN:
• If the PCB numbers are equal, the system proceeds with PCB address mapping; otherwise, it continues processing
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when database names match and pcb numbers are equal between cccom entry i and iscom entry j.
Trigger Criteria:
Context: Database names match and PCB numbers are equal between CCCOM entry I and ISCOM entry J
Applied to: Map PCB Address from CCCOM to ISCOM
Action: The system performs PCB address mapping
Logic Flow:
IF Database names match and PCB numbers are equal between CCCOM entry I and ISCOM entry J
AND The system performs PCB address mapping
THEN:
• The PCB address from CCCOM entry I is assigned to ISCOM entry J
R-CCISCOM-cbl-00045 (+3)File: CCISCOM.cblBusiness Rule: Reverse Conversion Version Check
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when reverse conversion process is initiated with iscom and cccom communication areas.
Trigger Criteria:
Context: A reverse conversion process is initiated with ISCOM and CCCOM communication areas
Applied to: Reverse Conversion Version Check - Check if CCCOM version is already set for reverse conversion from ISCOM to CCCOM
Action: The system checks the CCCOM SIT version against the expected CCCOM version
Logic Flow:
IF A reverse conversion process is initiated with ISCOM and CCCOM communication areas
AND The system checks the CCCOM SIT version against the expected CCCOM version
THEN:
• If versions match, only common area data is transferred and CCCOM version is updated; if versions don't match, full initialization including common area, version update, LT-PCBS transfer, cross-references setup, and database scanning is performed
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when cccom sit version equals the working storage cccom version.
Trigger Criteria:
Context: CCCOM SIT version equals the working storage CCCOM version
Applied to: Version Already Set - Transfer Common Area Data Only
Action: Reverse conversion is performed
Logic Flow:
IF CCCOM SIT version equals the working storage CCCOM version
AND Reverse conversion is performed
THEN:
• Common area data is copied from ISCOM to CCCOM and CCCOM SIT version is set to working storage CCCOM version
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when cccom sit version does not equal the working storage cccom version.
Trigger Criteria:
Context: CCCOM SIT version does not equal the working storage CCCOM version
Applied to: Version Not Set - Proceed with Full Initialization
Action: Reverse conversion is performed
Logic Flow:
IF CCCOM SIT version does not equal the working storage CCCOM version
AND Reverse conversion is performed
THEN:
• Common area is copied from ISCOM to CCCOM, CCCOM SIT version is updated, LT-PCBS are transferred from ISCOM to CCCOM, cross-reference addresses are established, and database address scanning is initiated
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when reverse conversion process is in progress.
Trigger Criteria:
Context: Reverse conversion process is in progress
Applied to: Set CCCOM Version to Expected Value
Action: Version update is required
Logic Flow:
IF Reverse conversion process is in progress
AND Version update is required
THEN:
• CCCOM SIT version is set to the working storage CCCOM version value
R-CCISCOM-cbl-00049 (+1)File: CCISCOM.cblBusiness Rule: Reverse Data Transfer
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when iscom structure contains common area data and cccom structure is available for data transfer.
Trigger Criteria:
Context: ISCOM structure contains common area data and CCCOM structure is available for data transfer
Applied to: Transfer Common Area Data from ISCOM to CCCOM
Action: Reverse conversion process is initiated from ISCOM to CCCOM
Logic Flow:
IF ISCOM structure contains common area data and CCCOM structure is available for data transfer
AND Reverse conversion process is initiated from ISCOM to CCCOM
THEN:
• Common area data from ISCOM is copied to CCCOM structure
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when cccom structure is being updated during reverse conversion and working storage contains cccom version number.
Trigger Criteria:
Context: CCCOM structure is being updated during reverse conversion and working storage contains CCCOM version number
Applied to: Set CCCOM Version Number
Action: Common area data transfer is completed
Logic Flow:
IF CCCOM structure is being updated during reverse conversion and working storage contains CCCOM version number
AND Common area data transfer is completed
THEN:
• CCCOM SIT version is set to the working storage CCCOM version number
R-CCISCOM-cbl-00051File: CCISCOM.cblBusiness Rule: Reverse PCB Transfer
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when iscom structure contains pcb information in cc-lt-pcbs field and cccom structure is available for data transfer.
Trigger Criteria:
Context: ISCOM structure contains PCB information in CC-LT-PCBS field and CCCOM structure is available for data transfer
Applied to: Transfer PCB Data to CCCOM Structure
Action: reverse conversion process is initiated and version compatibility requires PCB data synchronization
Logic Flow:
IF ISCOM structure contains PCB information in CC-LT-PCBS field and CCCOM structure is available for data transfer
AND reverse conversion process is initiated and version compatibility requires PCB data synchronization
THEN:
• PCB information from ISCOM CC-LT-PCBS field is copied to CCCOM CC-LT-PCBS field
R-CCISCOM-cbl-00052 (+5)File: CCISCOM.cblBusiness Rule: Active PCB Identification
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when iscom entry with a pcb address field.
Trigger Criteria:
Context: An ISCOM entry with a PCB address field
Applied to: PCB Address ≠ Zero?
Action: The system evaluates the PCB address value
Logic Flow:
IF An ISCOM entry with a PCB address field
AND The system evaluates the PCB address value
THEN:
• If PCB address is not equal to zero, the entry is identified as active and processing continues; if PCB address equals zero, the entry is skipped as inactive
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when active iscom entry with non-zero pcb address.
Trigger Criteria:
Context: An active ISCOM entry with non-zero PCB address
Applied to: Mark as Active PCB Entry
Action: The system begins processing the active entry
Logic Flow:
IF An active ISCOM entry with non-zero PCB address
AND The system begins processing the active entry
THEN:
• ISCOM PCB number is set to 1 to start the numbering sequence
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when active iscom entry and a target cccom entry position.
Trigger Criteria:
Context: An active ISCOM entry and a target CCCOM entry position
Applied to: Continue Processing Active Entry
Action: The system processes the active PCB entry
Logic Flow:
IF An active ISCOM entry and a target CCCOM entry position
AND The system processes the active PCB entry
THEN:
• The database name from ISCOM entry is copied to the CCCOM entry at the current position
Rule Belongs to : CCISCOM.cbl
Business Justification: Dictates the expected operational logic and validation steps when active iscom entry with non-zero pcb address and a target cccom entry.
Trigger Criteria:
Context: An active ISCOM entry with non-zero PCB address and a target CCCOM entry
Applied to: Continue Processing Active Entry
Action: The system processes the active PCB entry
Logic Flow:
IF An active ISCOM entry with non-zero PCB address and a target CCCOM entry
AND The system processes the active PCB entry
THEN:
• The PCB address from ISCOM entry is set in the corresponding CCCOM entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when calculated iscom pcb number and a target cccom entry.
Trigger Criteria:
Context: A calculated ISCOM PCB number and a target CCCOM entry
Applied to: Continue Processing Active Entry
Action: The system determines the PCB number assignment
Logic Flow:
IF A calculated ISCOM PCB number and a target CCCOM entry
AND The system determines the PCB number assignment
THEN:
• If ISCOM PCB number equals '1', CCCOM database number is set to spaces; otherwise ISCOM PCB number is copied to CCCOM database number
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when processed active iscom entry.
Trigger Criteria:
Context: A processed active ISCOM entry
Applied to: Continue Processing Active Entry
Action: The system completes processing of the active entry
Logic Flow:
IF A processed active ISCOM entry
AND The system completes processing of the active entry
Business Justification: Establishes the required business protocol to be followed when iscom table with database entries and a current database entry at position i with a specific database name.
Trigger Criteria:
Context: An ISCOM table with database entries and a current database entry at position I with a specific database name
Applied to: PCB Sequence Numbering - Calculate sequential PCB numbers for active database entries
Action: The system needs to determine the sequential PCB number for the current database entry
Logic Flow:
IF An ISCOM table with database entries and a current database entry at position I with a specific database name
AND The system needs to determine the sequential PCB number for the current database entry
THEN:
• The system counts all previous occurrences of the same database name in positions 1 through I-1and increments the PCB number for each match found, starting from an initial value of 1
Business Justification: Ensures correct system behavior and process compliance when database entry creation process is starting.
Trigger Criteria:
Context: The database entry creation process is starting
Applied to: Initialize CCCOM Entry Counter to 0
Action: The system begins processing ISCOM entries for conversion to CCCOM
Logic Flow:
IF The database entry creation process is starting
AND The system begins processing ISCOM entries for conversion to CCCOM
THEN:
• The CCCOM entry counter (J) is set to zero to track new entries
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when iscom database entry is being evaluated for conversion.
Trigger Criteria:
Context: An ISCOM database entry is being evaluated for conversion
Applied to: ISCOM Entry Has Active PCB Address?
Action: The system checks the PCB address of the ISCOM entry
Logic Flow:
IF An ISCOM database entry is being evaluated for conversion
AND The system checks the PCB address of the ISCOM entry
THEN:
• If PCB address is not zero, the entry is considered active and eligible for processing, otherwise it is skipped
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when active iscom database entry needs to be converted to cccom format.
Trigger Criteria:
Context: An active ISCOM database entry needs to be converted to CCCOM format
Applied to: Create New CCCOM Database Entry
Action: The system processes the ISCOM entry with non-zero PCB address
Logic Flow:
IF An active ISCOM database entry needs to be converted to CCCOM format
AND The system processes the ISCOM entry with non-zero PCB address
THEN:
• The system increments the CCCOM entry counter, copies the database name from ISCOM to CCCOM, sets the PCB address, and assigns the database number (spaces if PCB number is '1', otherwise the actual PCB number)
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when database entry is being processed and needs a pcb sequence number.
Trigger Criteria:
Context: A database entry is being processed and needs a PCB sequence number
Applied to: Create New CCCOM Database Entry
Action: The system encounters a database name that may have multiple instances
Logic Flow:
IF A database entry is being processed and needs a PCB sequence number
AND The system encounters a database name that may have multiple instances
THEN:
• The system counts how many times the same database name appears in ISCOM entries up to the current position to determine the correct PCB sequence number
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when pcb sequence number has been calculated for a database entry.
Trigger Criteria:
Context: A PCB sequence number has been calculated for a database entry
Applied to: Create New CCCOM Database Entry
Action: The system needs to assign the database number in CCCOM structure
Logic Flow:
IF A PCB sequence number has been calculated for a database entry
AND The system needs to assign the database number in CCCOM structure
THEN:
• If the PCB sequence number is '1', the database number is set to spaces, otherwise the actual PCB sequence number is assigned as the database number
Business Justification: Dictates the expected operational logic and validation steps when iscom entry at position i contains a valid pcb address and a corresponding cccom entry exists at position j. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An ISCOM entry at position I contains a valid PCB address and a corresponding CCCOM entry exists at position J
Applied to: Copy PCB Address from ISCOM Entry I to CCCOM Entry J
Action: The system performs reverse conversion from ISCOM to CCCOM format
Logic Flow:
IF An ISCOM entry at position I contains a valid PCB address and a corresponding CCCOM entry exists at position J
AND The system performs reverse conversion from ISCOM to CCCOM format
THEN:
• The PCB address from ISCOM entry I is copied to CCCOM entry J to establish the database access reference
R-CCISCOM-cbl-00065 (+1)File: CCISCOM.cblBusiness Rule: Database Number Assignment
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when database entry is being processed during iscom to cccom conversion and the iscom pcb number has been determined.
Trigger Criteria:
Context: A database entry is being processed during ISCOM to CCCOM conversion and the ISCOM PCB number has been determined
Applied to: Assign SPACES to Database Number - First Occurrence
Action: The ISCOM PCB number equals '1' indicating this is the first occurrence of this database name
Logic Flow:
IF A database entry is being processed during ISCOM to CCCOM conversion and the ISCOM PCB number has been determined
AND The ISCOM PCB number equals '1' indicating this is the first occurrence of this database name
THEN:
• The database number field in the CCCOM entry should be set to spaces to mark it as the primary database reference
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when database entry is being processed during iscom to cccom conversion and the iscom pcb number has been determined.
Trigger Criteria:
Context: A database entry is being processed during ISCOM to CCCOM conversion and the ISCOM PCB number has been determined
Applied to: Assign PCB Number to Database Number - Subsequent Occurrence
Action: The ISCOM PCB number is not equal to '1' indicating this is a subsequent occurrence of this database name
Logic Flow:
IF A database entry is being processed during ISCOM to CCCOM conversion and the ISCOM PCB number has been determined
AND The ISCOM PCB number is not equal to '1' indicating this is a subsequent occurrence of this database name
THEN:
• The database number field in the CCCOM entry should be set to the actual ISCOM PCB number to maintain proper sequencing
R-CCISCOM-cbl-00067 (+2)File: CCISCOM.cblBusiness Rule: Process Current Database Entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when database entry is being processed.
Trigger Criteria:
Context: A database entry is being processed
Applied to: Initialize PCB Counter to Zero
Action: The PCB counter initialization is performed
Logic Flow:
IF A database entry is being processed
AND The PCB counter initialization is performed
THEN:
• The ISCOM PCB number is set to zero
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when database entry with index i is being processed.
Trigger Criteria:
Context: A database entry with index I is being processed
Applied to: Extract PCB Number from Database Entry
Action: PCB number extraction is performed
Logic Flow:
IF A database entry with index I is being processed
AND PCB number extraction is performed
THEN:
• The PCB number from CCCOM database entry at index I is moved to CCCOM-PCB-NUMBER
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when database entry is being processed and the cccom-pcb-number is empty or contains spaces.
Trigger Criteria:
Context: A database entry is being processed and the CCCOM-PCB-NUMBER is empty or contains spaces
Applied to: Set PCB Number to Default '1'
Action: The PCB number validation is performed
Logic Flow:
IF A database entry is being processed and the CCCOM-PCB-NUMBER is empty or contains spaces
AND The PCB number validation is performed
THEN:
• The CCCOM-PCB-NUMBER is set to '1'
R-CCISCOM-cbl-00070 (+5)File: CCISCOM.cblBusiness Rule: Continue Processing Active Entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when active pcb entry has been identified for processing.
Trigger Criteria:
Context: An active PCB entry has been identified for processing
Applied to: Initialize PCB Sequence Number to 1
Action: The system begins processing the active entry
Logic Flow:
IF An active PCB entry has been identified for processing
AND The system begins processing the active entry
THEN:
• The PCB sequence number is initialized to 1
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when database entry is being processed and pcb sequence number is initialized to 1.
Trigger Criteria:
Context: A database entry is being processed and PCB sequence number is initialized to 1
Applied to: Calculate Sequential PCB Number for Current Database
Action: The system needs to determine the sequential number for the current database
Logic Flow:
IF A database entry is being processed and PCB sequence number is initialized to 1
AND The system needs to determine the sequential number for the current database
THEN:
• The system performs PCB number calculation by iterating through previous entries and incrementing the sequence number for each matching database name
Rule Belongs to : CCISCOM.cbl
Business Justification: Ensures correct system behavior and process compliance when active pcb entry is being processed.
Trigger Criteria:
Context: An active PCB entry is being processed
Applied to: Increment CCCOM Entry Counter
Action: The system is ready to create a new CCCOM entry
Logic Flow:
IF An active PCB entry is being processed
AND The system is ready to create a new CCCOM entry
THEN:
• The CCCOM entry counter (J) is incremented by 1
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when active pcb entry is being processed and cccom counter has been incremented. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An active PCB entry is being processed and CCCOM counter has been incremented
Applied to: Copy Database Name from ISCOM to CCCOM
Action: The system needs to populate the CCCOM entry with database information
Logic Flow:
IF An active PCB entry is being processed and CCCOM counter has been incremented
AND The system needs to populate the CCCOM entry with database information
THEN:
• The database name from the current ISCOM entry is copied to the corresponding CCCOM entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when database name has been copied from iscom to cccom.
Trigger Criteria:
Context: Database name has been copied from ISCOM to CCCOM
Applied to: Map PCB Address from ISCOM to CCCOM
Action: The system needs to establish address mapping
Logic Flow:
IF Database name has been copied from ISCOM to CCCOM
AND The system needs to establish address mapping
THEN:
• The PCB address from the current ISCOM entry is mapped to the corresponding CCCOM entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Governs the functional prerequisites and system routing when pcb address has been mapped and pcb sequence number has been calculated.
Trigger Criteria:
Context: PCB address has been mapped and PCB sequence number has been calculated
Applied to: Set Database Number to Spaces or PCB Sequence Number
Action: The system needs to set the database number field
Logic Flow:
IF PCB address has been mapped and PCB sequence number has been calculated
AND The system needs to set the database number field
THEN:
• If the PCB sequence number equals 1, the database number is set to spaces indicating first occurrence, otherwise the database number is set to the calculated PCB sequence number
R-CCISCOM-cbl-00076 (+2)File: CCISCOM.cblBusiness Rule: Start Loop: K = 1 to Current Position I
Rule Belongs to : CCISCOM.cbl
Business Justification: Establishes the required business protocol to be followed when iscom table with database entries and a current position i being processed.
Trigger Criteria:
Context: An ISCOM table with database entries and a current position I being processed
Applied to: K = 1 to Current Position I-1 - Iterate through previous database entries to count matching database names for sequence calculation
Action: The system needs to determine the PCB sequence number for the database at position I by examining all previous positions from 1 to I-1
Logic Flow:
IF An ISCOM table with database entries and a current position I being processed
AND The system needs to determine the PCB sequence number for the database at position I by examining all previous positions from 1 to I-1
THEN:
• The system increments the PCB sequence number for each previous entry that has the same database name as the current entry
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when two database entries in the iscom table at positions k and i.
Trigger Criteria:
Context: Two database entries in the ISCOM table at positions K and I
Applied to: ISCOM K vs ISCOM I
Action: The system compares the database names at these positions
Logic Flow:
IF Two database entries in the ISCOM table at positions K and I
AND The system compares the database names at these positions
THEN:
• If the database names match exactly, the system identifies them as the same database requiring sequential PCB numbering
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when pcb sequence number counter (iscom-pcb-num) and two database entries with matching names.
Trigger Criteria:
Context: A PCB sequence number counter (ISCOM-PCB-NUM) and two database entries with matching names
Applied to: Increment PCB Sequence Number
Action: The system finds that the database name at position K matches the database name at position I
Logic Flow:
IF A PCB sequence number counter (ISCOM-PCB-NUM) and two database entries with matching names
AND The system finds that the database name at position K matches the database name at position I
THEN:
• The system adds 1 to the PCB sequence number counter to reflect the sequential occurrence of this database
R-CCISCOM-cbl-00079File: CCISCOM.cblBusiness Rule: Compare Database Names: ISCOM K vs ISCOM I
Rule Belongs to : CCISCOM.cbl
Business Justification: Defines the strict business conditions required to proceed when two iscom table entries with positions k and i are being compared, where k represents the comparison entry and i represents the current processing entry.
Trigger Criteria:
Context: Two ISCOM table entries with positions K and I are being compared, where K represents the comparison entry and I represents the current processing entry
Applied to: ISCOM K vs ISCOM I
Action: The database name in ISCOM entry at position K equals the database name in ISCOM entry at position I
Logic Flow:
IF Two ISCOM table entries with positions K and I are being compared, where K represents the comparison entry and I represents the current processing entry
AND The database name in ISCOM entry at position K equals the database name in ISCOM entry at position I
THEN:
• The ISCOM PCB number counter is incremented by 1 to track the occurrence of matching database names
Business Justification: Establishes the required business protocol to be followed when error handling process is starting.
Trigger Criteria:
Context: The error handling process is starting
Applied to: No explicit initialization code found in provided COBOL snippet
Action: The main procedure begins execution
Logic Flow:
IF The error handling process is starting
AND The main procedure begins execution
THEN:
• The communication area CCCOM is initialized through the DCCCOM module
Rule Belongs to : CERR.cbl
Business Justification: Dictates the expected operational logic and validation steps when system has a dump-only mode flag ws-dump-only. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system has a dump-only mode flag WS-DUMP-ONLY
Applied to: No explicit initialization code found in provided COBOL snippet
Action: The dump-only mode is active (WS-DUMP-ONLY is true)
Logic Flow:
IF The system has a dump-only mode flag WS-DUMP-ONLY
AND The dump-only mode is active (WS-DUMP-ONLY is true)
THEN:
• Error processing is bypassed and control proceeds to program termination
Rule Belongs to : CERR.cbl
Business Justification: Defines the strict business conditions required to proceed when system is not in dump-only mode and environment indicator cc-prod-test-ims is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is not in dump-only mode and environment indicator CC-PROD-TEST-IMS is available
Applied to: No explicit initialization code found in provided COBOL snippet
Action: The environment indicator CC-PROD-TEST-IMS equals the production value WS-PROD
Logic Flow:
IF The system is not in dump-only mode and environment indicator CC-PROD-TEST-IMS is available
AND The environment indicator CC-PROD-TEST-IMS equals the production value WS-PROD
THEN:
• The production error handler CERRPROD is invoked with CCCOM parameters
Rule Belongs to : CERR.cbl
Business Justification: Defines the strict business conditions required to proceed when system is not in dump-only mode and environment indicator cc-prod-test-ims is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is not in dump-only mode and environment indicator CC-PROD-TEST-IMS is available
Applied to: No explicit initialization code found in provided COBOL snippet
Action: The environment indicator CC-PROD-TEST-IMS does not equal the production value WS-PROD
Logic Flow:
IF The system is not in dump-only mode and environment indicator CC-PROD-TEST-IMS is available
AND The environment indicator CC-PROD-TEST-IMS does not equal the production value WS-PROD
THEN:
• The test error handler CERRTEST is invoked with CCCOM parameters
Rule Belongs to : CERR.cbl
Business Justification: Ensures correct system behavior and process compliance when error handling process has completed initialization and conditional processing.
Trigger Criteria:
Context: The error handling process has completed initialization and conditional processing
Applied to: No explicit initialization code found in provided COBOL snippet
Action: The program reaches the notification phase
Logic Flow:
IF The error handling process has completed initialization and conditional processing
AND The program reaches the notification phase
THEN:
• A blocking error message is displayed to the system error output
Business Justification: Ensures correct system behavior and process compliance when system has access to cc-prod-test-ims environment flag and ws-prod production environment value. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system has access to CC-PROD-TEST-IMS environment flag and WS-PROD production environment value
Applied to: Compare CC-PROD-TEST-IMS with WS-PROD Value
Action: The system compares CC-PROD-TEST-IMS with WS-PROD value
Logic Flow:
IF The system has access to CC-PROD-TEST-IMS environment flag and WS-PROD production environment value
AND The system compares CC-PROD-TEST-IMS with WS-PROD value
THEN:
• IfCC-PROD-TEST-IMS equals WS-PROD then environment is identified as Production, otherwise environment is identified as Test
R-CERR-cbl-00014File: CERR.cblBusiness Rule: Dump Only Check
Rule Belongs to : CERR.cbl
Business Justification: Ensures correct system behavior and process compliance when system has initialized communication area and ws-dump-only flag is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system has initialized communication area and WS-DUMP-ONLY flag is available
Applied to: Check WS-DUMP-ONLY Flag
Action: The system checks the WS-DUMP-ONLY flag status
Logic Flow:
IF The system has initialized communication area and WS-DUMP-ONLY flag is available
AND The system checks the WS-DUMP-ONLY flag status
THEN:
• IfWS-DUMP-ONLY is set to true, skip all further error processing and proceed to program termination; IfWS-DUMP-ONLY is false, continue to environment detection for error processing
R-CERR-cbl-00015File: CERR.cblBusiness Rule: Common Error Processing
Rule Belongs to : CERR.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to perform error processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system needs to perform error processing
Applied to: Call DCCCOM Program
Action: The main error processing procedure is executed
Logic Flow:
IF The system needs to perform error processing
AND The main error processing procedure is executed
THEN:
• The system calls DCCCOM program using CCCOM communication area to perform standard error processing initialization
R-CERR-cbl-00016File: CERR.cblBusiness Rule: Production Error Handling
Rule Belongs to : CERR.cbl
Business Justification: Establishes the required business protocol to be followed when system is running in production environment (cc-prod-test-ims equals ws-prod) and dump-only mode is disabled (not ws-dump-only is true) and communication area cccom is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is running in production environment (CC-PROD-TEST-IMS equals WS-PROD) and dump-only mode is disabled (NOT WS-DUMP-ONLY is true) and communication area CCCOM is available
Applied to: Call CERRPROD with Communication Area
Action: An error condition requires processing through the production error handler
Logic Flow:
IF The system is running in production environment (CC-PROD-TEST-IMS equals WS-PROD) and dump-only mode is disabled (NOT WS-DUMP-ONLY is true) and communication area CCCOM is available
AND An error condition requires processing through the production error handler
THEN:
• The system invokes the production error handler CERRPROD with the communication area CCCOM to process the error according to production standards
R-CERR-cbl-00017 (+2)File: CERR.cblBusiness Rule: Test Error Handling
Rule Belongs to : CERR.cbl
Business Justification: Governs the functional prerequisites and system routing when system is running in test environment (cc-prod-test-ims is not equal to ws-prod) and dump-only mode is disabled (ws-dump-only is false). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is running in test environment (CC-PROD-TEST-IMS is not equal to WS-PROD) and dump-only mode is disabled (WS-DUMP-ONLY is false)
Applied to: Test Environment Detected
Action: An error condition occurs requiring error processing
Logic Flow:
IF The system is running in test environment (CC-PROD-TEST-IMS is not equal to WS-PROD) and dump-only mode is disabled (WS-DUMP-ONLY is false)
AND An error condition occurs requiring error processing
THEN:
• The system routes the error to the test error handler (CERRTEST) and passes error information through the communication area (CCCOM)
Rule Belongs to : CERR.cbl
Business Justification: Governs the functional prerequisites and system routing when system is operating in dump-only mode (ws-dump-only is true). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is operating in dump-only mode (WS-DUMP-ONLY is true)
Applied to: Route Error to Test Handler
Action: An error condition occurs
Logic Flow:
IF The system is operating in dump-only mode (WS-DUMP-ONLY is true)
AND An error condition occurs
THEN:
• The system bypasses all error processing routines and skips calling any error handlers
Rule Belongs to : CERR.cbl
Business Justification: Establishes the required business protocol to be followed when error processing is required for test environment and dump mode is not active. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Error processing is required for test environment and dump mode is not active
Applied to: Call CERRTEST Program
Action: The system determines test environment error handling is needed
Logic Flow:
IF Error processing is required for test environment and dump mode is not active
AND The system determines test environment error handling is needed
THEN:
• The system calls the CERRTEST program and passes the communication area (CCCOM) containing error details
Business Justification: Defines the strict business conditions required to proceed when blocking error condition has occurred in the cims system.
Trigger Criteria:
Context: A blocking error condition has occurred in the CIMS system
Applied to: Display blocking error message to system error output
Action: The error notification display process is executed
Logic Flow:
IF A blocking error condition has occurred in the CIMS system
AND The error notification display process is executed
THEN:
• Display a top border line of hash symbols to system error output AND display the blocking error message 'CIMS: BLOCKING ERROR.' to system error output AND display a bottom border line of hash symbols to system error output
R-CERR-cbl-00021File: CERR.cblBusiness Rule: Program Termination
Rule Belongs to : CERR.cbl
Business Justification: Ensures correct system behavior and process compliance when error processing activities have been completed including communication setup, environment-based error handler execution, and blocking error message display.
Trigger Criteria:
Context: Error processing activities have been completed including communication setup, environment-based error handler execution, and blocking error message display
Applied to: Program Termination - Return control to calling program after error processing completion
Action: The program reaches the termination point
Logic Flow:
IF Error processing activities have been completed including communication setup, environment-based error handler execution, and blocking error message display
AND The program reaches the termination point
THEN:
• The system executes program termination and returns control to the calling program
Business Justification: Ensures correct system behavior and process compliance when system has a common control area (cccom) that may contain an iscom address and the system version matches the expected cccom version.
Trigger Criteria:
Context: The system has a common control area (CCCOM) that may contain an ISCOM address and the system version matches the expected CCCOM version
Applied to: Check ISCOM Address in CCCOM
Action: The system checks for ISCOM address availability during communication setup
Logic Flow:
IF The system has a common control area (CCCOM) that may contain an ISCOM address and the system version matches the expected CCCOM version
AND The system checks for ISCOM address availability during communication setup
THEN:
• If ISCOM address is not null and not blank, the system establishes the ISCOM communication channel, otherwise it continues processing without ISCOM communication
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid iscom address exists in cccom that is not null and not blank.
Trigger Criteria:
Context: A valid ISCOM address exists in CCCOM that is not null and not blank
Applied to: Set ISCOM Address for Communication
Action: The system needs to establish ISCOM communication
Logic Flow:
IF A valid ISCOM address exists in CCCOM that is not null and not blank
AND The system needs to establish ISCOM communication
THEN:
• The system sets the address of ISCOM to the CCCOM ISCOM address to enable communication
R-CIMS-cbl-00033 (+8)File: CIMS.cblBusiness Rule: CCCOM Version Compatibility Check
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when cccom control block with a version identifier and a system with an expected cccom version.
Trigger Criteria:
Context: A CCCOM control block with a version identifier and a system with an expected CCCOM version
Applied to: Check CCCOM Version
Action: The system checks CCCOM version compatibility
Logic Flow:
IF A CCCOM control block with a version identifier and a system with an expected CCCOM version
AND The system checks CCCOM version compatibility
THEN:
• The system compares CCCOM version against expected version and determines whether to proceed with ISCOM checks
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when cccom version has been validated against expected system version.
Trigger Criteria:
Context: CCCOM version has been validated against expected system version
Applied to: CCCOM Version = Expected Version?
Action: CCCOM version equals the expected system version
Logic Flow:
IF CCCOM version has been validated against expected system version
AND CCCOM version equals the expected system version
THEN:
• System proceeds with ISCOM compatibility checks, otherwise skips ISCOM processing
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when cccom version compatibility has been confirmed and cccom contains database pcb area.
Trigger Criteria:
Context: CCCOM version compatibility has been confirmed and CCCOM contains database PCB area
Applied to: Set Base Address to CCCOM DB PCBs
Action: System needs to perform ISCOM address calculations
Logic Flow:
IF CCCOM version compatibility has been confirmed and CCCOM contains database PCB area
AND System needs to perform ISCOM address calculations
THEN:
• System sets the base address pointer to the CCCOM database PCBs area
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when base address has been set to cccom database pcbs and an address area is available.
Trigger Criteria:
Context: Base address has been set to CCCOM database PCBs and an address area is available
Applied to: Set Offset Address to Address Area
Action: System needs to calculate ISCOM address offset
Logic Flow:
IF Base address has been set to CCCOM database PCBs and an address area is available
AND System needs to calculate ISCOM address offset
THEN:
• System sets the offset address pointer to the provided address area
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when iscom structure is available with database pcbs area.
Trigger Criteria:
Context: ISCOM structure is available with database PCBs area
Applied to: Calculate ISCOM Table Size
Action: System needs to determine ISCOM table boundaries
Logic Flow:
IF ISCOM structure is available with database PCBs area
AND System needs to determine ISCOM table boundaries
THEN:
• System computes the length of ISCOM database PCBs area and stores as table size
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when base address and offset address have been established for iscom calculations.
Trigger Criteria:
Context: Base address and offset address have been established for ISCOM calculations
Applied to: Base Address > Zero?
Action: Base address value is greater than zero
Logic Flow:
IF Base address and offset address have been established for ISCOM calculations
AND Base address value is greater than zero
THEN:
• System uses method 1 for address calculation, otherwise uses method 2
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when base address is greater than zero and offset address is available.
Trigger Criteria:
Context: Base address is greater than zero and offset address is available
Applied to: Calculate Address Offset Method 1
Action: System applies address calculation method 1
Logic Flow:
IF Base address is greater than zero and offset address is available
AND System applies address calculation method 1
THEN:
• System assigns offset address to address-1 and base address to address-2 for final offset computation
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when base address is not greater than zero and offset address is available.
Trigger Criteria:
Context: Base address is not greater than zero and offset address is available
Applied to: Calculate Address Offset Method 2
Action: System applies address calculation method 2
Logic Flow:
IF Base address is not greater than zero and offset address is available
AND System applies address calculation method 2
THEN:
• System assigns base address to address-1 and offset address to address-2 for final offset computation
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when address-1 and address-2 have been assigned based on selected calculation method.
Trigger Criteria:
Context: Address-1 and address-2 have been assigned based on selected calculation method
Applied to: Compute Final Address Offset
Action: System performs final address offset calculation
Logic Flow:
IF Address-1 and address-2 have been assigned based on selected calculation method
AND System performs final address offset calculation
THEN:
• System computes address offset as the difference between address-1 and address-2
Business Justification: Ensures correct system behavior and process compliance when pcb address reset operation is initiated.
Trigger Criteria:
Context: A PCB address reset operation is initiated
Applied to: Check Address Area Availability
Action: The system checks if the address area is not null
Logic Flow:
IF A PCB address reset operation is initiated
AND The system checks if the address area is not null
THEN:
• The system proceeds with PCB address validation if address area is available, otherwise uses default CSI address area
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when address area is available for processing.
Trigger Criteria:
Context: An address area is available for processing
Applied to: PCB Address Valid and Not Blank?
Action: The system evaluates if PCB address is not null and not blank pointer
Logic Flow:
IF An address area is available for processing
AND The system evaluates if PCB address is not null and not blank pointer
THEN:
• The system continues with version compatibility check if PCB address is valid, otherwise skips PCB reset logic
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when valid pcb address exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid PCB address exists
Applied to: CCCOM Version Compatible?
Action: The system compares CC-SIT-VERSION of CCCOM with WS-CCCOM-VERSION
Logic Flow:
IF A valid PCB address exists
AND The system compares CC-SIT-VERSION of CCCOM with WS-CCCOM-VERSION
THEN:
• The system proceeds with PCB copy address setup if versions match, otherwise skips PCB reset processing
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when cccom version is compatible with system version. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: CCCOM version is compatible with system version
Applied to: Set PCB Copy Address
Action: The system sets the address of LK-COPY-OF-PCB to PCB-ADDR
Logic Flow:
IF CCCOM version is compatible with system version
AND The system sets the address of LK-COPY-OF-PCB to PCB-ADDR
THEN:
• The PCB copy address is established for subsequent segment level validation
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when pcb copy address is established. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: PCB copy address is established
Applied to: Segment Level Valid?
Action: The system checks if LK-SEG-LEVEL is not equal to '98' and not equal to '99'
Logic Flow:
IF PCB copy address is established
AND The system checks if LK-SEG-LEVEL is not equal to '98' and not equal to '99'
THEN:
• The system identifies invalid segment level requiring address reset if condition is true, otherwise checks for force reset requirement
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when segment level is valid (98 or 99).
Trigger Criteria:
Context: Segment level is valid (98 or 99)
Applied to: Force Reset Required?
Action: The system evaluates the FORCE-RESET flag
Logic Flow:
IF Segment level is valid (98 or 99)
AND The system evaluates the FORCE-RESET flag
THEN:
• The system proceeds with address reset if force reset is required, otherwise continues normal processing
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when either segment level is invalid or force reset is required.
Trigger Criteria:
Context: Either segment level is invalid or force reset is required
Applied to: Reset PCB Address Area to Spaces
Action: The system executes the address area reset operation
Logic Flow:
IF Either segment level is invalid or force reset is required
AND The system executes the address area reset operation
THEN:
• The first 8 positions of the address area are set to spaces to clear the PCB address
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when address area is null or not available.
Trigger Criteria:
Context: The address area is null or not available
Applied to: Continue Processing
Action: The system needs to continue processing without a valid address area
Logic Flow:
IF The address area is null or not available
AND The system needs to continue processing without a valid address area
THEN:
• The system sets the address area to CSI-ADDR-AREAand generates a zero PCB address error message
Business Justification: Defines the strict business conditions required to proceed when database operation request is being processed.
Trigger Criteria:
Context: A database operation request is being processed
Applied to: Check PCB Address Status
Action: The system checks the PCB address availability
Logic Flow:
IF A database operation request is being processed
AND The system checks the PCB address availability
THEN:
• The system determines if the PCB address is null or blank pointer to decide next processing step
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when pcb address validation has failed.
Trigger Criteria:
Context: PCB address validation has failed
Applied to: Set PCB Name to ZERO-PCB-NAME
Action: The system needs to generate error information
Logic Flow:
IF PCB address validation has failed
AND The system needs to generate error information
THEN:
• The system sets the PCB name from PCB-MNE to ZERO-PCB-NAME for error reporting
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when pcb address validation has failed and pcb name has been captured.
Trigger Criteria:
Context: PCB address validation has failed and PCB name has been captured
Applied to: Set PCB Number to ZERO-PCB-NUM
Action: The system continues error information collection
Logic Flow:
IF PCB address validation has failed and PCB name has been captured
AND The system continues error information collection
THEN:
• The system sets the PCB number from PCB-NUM to ZERO-PCB-NUM for error reporting
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when pcb address validation has failed and error information has been collected.
Trigger Criteria:
Context: PCB address validation has failed and error information has been collected
Applied to: Generate Zero PCB Address Error Message
Action: The system needs to create an error message
Logic Flow:
IF PCB address validation has failed and error information has been collected
AND The system needs to create an error message
THEN:
• The system moves ZERO-PCB-ADDR-ERROR-MESSAGE to CC-ERROR-MESSAGE of CCCOM
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when pcb address validation has failed and error message has been generated. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: PCB address validation has failed and error message has been generated
Applied to: Call Error Handler CERR
Action: The system needs to handle the error condition
Logic Flow:
IF PCB address validation has failed and error message has been generated
AND The system needs to handle the error condition
THEN:
• The system calls 'CERR' program using CCCOM to process the error
R-CIMS-cbl-00068 (+8)File: CIMS.cblBusiness Rule: IMS Function Call Execution
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when function code, pcb address, io area and ssa parameters are available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Function code, PCB address, IO area and SSA parameters are available
Applied to: Prepare IMS Call Parameters
Action: System prepares IMS call parameters
Logic Flow:
IF Function code, PCB address, IO area and SSA parameters are available
AND System prepares IMS call parameters
THEN:
• All parameters are set up for database call execution
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when pcb address is available and valid. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: PCB address is available and valid
Applied to: Set PCB Address to Copy Structure
Action: System sets PCB address to copy structure
Logic Flow:
IF PCB address is available and valid
AND System sets PCB address to copy structure
THEN:
• LK-COPY-OF-PCB is assigned the PCB address for database call
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when all call parameters are prepared and pcb copy structure is set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All call parameters are prepared and PCB copy structure is set
Applied to: Execute CBLTDLI Call
Action: System executes CBLTDLI call with function, PCB copy, IO area and SSA parameters
Logic Flow:
IF All call parameters are prepared and PCB copy structure is set
AND System executes CBLTDLI call with function, PCB copy, IO area and SSA parameters
THEN:
• IMS database operation is performed and control returns to program
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when function code is available in func parameter. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Function code is available in FUNC parameter
Applied to: Pass Function Code
Action: System passes function code to IMS database call
Logic Flow:
IF Function code is available in FUNC parameter
AND System passes function code to IMS database call
THEN:
• Function code is included as parameter in CBLTDLI call
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when lk-copy-of-pcb is set with pcb address. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context:LK-COPY-OF-PCB is set with PCB address
Applied to: Pass PCB Copy
Action: System passes PCB copy to IMS database call
Logic Flow:
IFLK-COPY-OF-PCB is set with PCB address
AND System passes PCB copy to IMS database call
THEN:
• PCB copy is included as parameter in CBLTDLI call
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when io-area is available for data transfer. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context:IO-AREA is available for data transfer
Applied to: Pass IO Area
Action: System passes IO area to IMS database call
Logic Flow:
IFIO-AREA is available for data transfer
AND System passes IO area to IMS database call
THEN:
• IO area is included as parameter in CBLTDLI call
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when ssa1 through ssa6 parameters are available based on argument count. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: SSA1 through SSA6 parameters are available based on argument count
Applied to: Pass SSA Parameters 1-6
Action: System passes SSA parameters to IMS database call
Logic Flow:
IF SSA1 through SSA6 parameters are available based on argument count
AND System passes SSA parameters to IMS database call
THEN:
• All available SSA parameters are included in CBLTDLI call
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when all parameters are passed to cbltdli call. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All parameters are passed to CBLTDLI call
Applied to: IMS Database Processing
Action: IMS processes the database operation
Logic Flow:
IF All parameters are passed to CBLTDLI call
AND IMS processes the database operation
THEN:
• Database operation is executed and results are returned in PCB and IO area
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when ims database processing is completed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: IMS database processing is completed
Applied to: Return Control to Program
Action: Control returns to the program
Logic Flow:
IF IMS database processing is completed
AND Control returns to the program
THEN:
• Program continues with post-database call processing
R-CIMS-cbl-00077 (+5)File: CIMS.cblBusiness Rule: IO PCB Date Time Refresh
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when database function call is being processed with a specific function type and pcb address. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A database function call is being processed with a specific function type and PCB address
Applied to: Check Function Type and PCB
Action: The function is 'GU' (Get Unique) AND the PCB address matches the IO PCB address in CCCOM
Logic Flow:
IF A database function call is being processed with a specific function type and PCB address
AND The function is 'GU' (Get Unique) AND the PCB address matches the IO PCB address in CCCOM
THEN:
• The system should proceed to refresh date and time information
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when gu function is being executed on the io pcb. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A GU function is being executed on the IO PCB
Applied to: Reset IMS Call Counter to Zero
Action: The date and time refresh process is initiated
Logic Flow:
IF A GU function is being executed on the IO PCB
AND The date and time refresh process is initiated
THEN:
• The IMS call counter in CCCOM should be reset to zero
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when date and time refresh is required for io pcb operation.
Trigger Criteria:
Context: Date and time refresh is required for IO PCB operation
Applied to: Get Current System Date
Action: The system needs to update machine date information
Logic Flow:
IF Date and time refresh is required for IO PCB operation
AND The system needs to update machine date information
THEN:
• The current system date should be retrieved in CCYYMMDD format
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when current system date has been retrieved in ccyymmdd format.
Trigger Criteria:
Context: Current system date has been retrieved in CCYYMMDD format
Applied to: Update Machine Century in CCCOM & Update Machine Date in CCCOM
Action: Machine date information needs to be updated in CCCOM
Logic Flow:
IF Current system date has been retrieved in CCYYMMDD format
AND Machine date information needs to be updated in CCCOM
THEN:
• The century portion (CC) should be moved to the machine century field in CCCOM
• The date portion (YYMMDD) should be moved to the machine date field in CCCOM
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when machine date has been updated in cccom.
Trigger Criteria:
Context: Machine date has been updated in CCCOM
Applied to: Get Current System Time
Action: Machine time information needs to be updated
Logic Flow:
IF Machine date has been updated in CCCOM
AND Machine time information needs to be updated
THEN:
• The current system time should be retrieved and stored in the machine time field of CCCOM
Business Justification: Defines the strict business conditions required to proceed when ims database function has been executed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An IMS database function has been executed
Applied to: Reset IMS Call Counter to Zero
Action: The function is 'GU' (Get Unique) AND the PCB address equals the IO PCB address
Logic Flow:
IF An IMS database function has been executed
AND The function is 'GU' (Get Unique) AND the PCB address equals the IO PCB address
THEN:
• The IMS call counter is reset to zero
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when ims database function call has been completed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An IMS database function call has been completed
Applied to: Increment IMS Call Counter by 1
Action: Any IMS database operation is executed
Logic Flow:
IF An IMS database function call has been completed
AND Any IMS database operation is executed
THEN:
• The IMS call counter is incremented by 1
R-CIMS-cbl-00085 (+2)File: CIMS.cblBusiness Rule: PCB Status Information Update
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when database operation has been completed and pcb status information is available in lk-copy-of-pcb. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A database operation has been completed and PCB status information is available in LK-COPY-OF-PCB
Applied to: Copy PCB Status Information to CCCOM
Action: The system processes the PCB status information update
Logic Flow:
IF A database operation has been completed and PCB status information is available in LK-COPY-OF-PCB
AND The system processes the PCB status information update
THEN:
• The complete PCB status information is copied from LK-COPY-OF-PCB to CC-COPY-OF-PCB in CCCOM structure
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when pcb status information contains a segment level code in lk-seg-level. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: PCB status information contains a segment level code in LK-SEG-LEVEL
Applied to: Segment Level Valid?
Action: The segment level is not equal to '98' and not equal to '99'
Logic Flow:
IF PCB status information contains a segment level code in LK-SEG-LEVEL
AND The segment level is not equal to '98' and not equal to '99'
THEN:
• The system proceeds to copy the feedback key length information
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when segment level validation has passed (segment level is not '98' or '99'). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Segment level validation has passed (segment level is not '98' or '99')
Applied to: Copy Feedback Key Length to CCCOM
Action: The system processes feedback key length information
Logic Flow:
IF Segment level validation has passed (segment level is not '98' or '99')
AND The system processes feedback key length information
THEN:
• The feedback key length is copied from LK-LENGTH-FB-KEY to CC-LENGTH-FB-KEY in CCCOM structure
R-CIMS-cbl-00088File: CIMS.cblBusiness Rule: Terminal and User Information Capture
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when database function is being executed with a specific pcb address.
Trigger Criteria:
Context: A database function is being executed with a specific PCB address
Applied to: Terminal and User Information Capture - Captures original terminal name and user ID for GU and CHKP functions on IO PCB
Action: The function is either 'GU' (Get Unique) or 'CHKP' (Checkpoint) AND the PCB address matches the IO PCB address in the common control area
Logic Flow:
IF A database function is being executed with a specific PCB address
AND The function is either 'GU' (Get Unique) or 'CHKP' (Checkpoint) AND the PCB address matches the IO PCB address in the common control area
THEN:
• The system captures the original terminal name from the common control area to the original terminal field AND captures the user ID from the common control area to the ACF2 user ID field
R-CIMS-cbl-00089 (+4)File: CIMS.cblBusiness Rule: Status Code Validation
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when ims database operation has been executed and returned a status code.
Trigger Criteria:
Context: An IMS database operation has been executed and returned a status code
Applied to: Status Code = Spaces?
Action: The status code is evaluated for success condition
Logic Flow:
IF An IMS database operation has been executed and returned a status code
AND The status code is evaluated for success condition
THEN:
• If the status code equals spaces, the operation is considered successful and processing continues with common area updates
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when ims operation has returned a non-blank status code and validation against acceptable status table is required.
Trigger Criteria:
Context: An IMS operation has returned a non-blank status code and validation against acceptable status table is required
Applied to: I <= 12?
Action: The system iterates through the acceptable status code table
Logic Flow:
IF An IMS operation has returned a non-blank status code and validation against acceptable status table is required
AND The system iterates through the acceptable status code table
THEN:
• The validation loop continues while the counter is less than or equal to 12 entries in the acceptable status table
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when ims status code needs validation and the system is checking against acceptable status table entries.
Trigger Criteria:
Context: An IMS status code needs validation and the system is checking against acceptable status table entries
Applied to: Status Code Matches Entry?
Action: The current status code is compared with the current table entry
Logic Flow:
IF An IMS status code needs validation and the system is checking against acceptable status table entries
AND The current status code is compared with the current table entry
THEN:
• If the status code matches the acceptable status table entry, the operation is validated successfully and processing continues
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when current ims status code does not match the current acceptable status table entry.
Trigger Criteria:
Context: The current IMS status code does not match the current acceptable status table entry
Applied to: Increment Counter I
Action: The system needs to check the next entry in the acceptable status table
Logic Flow:
IF The current IMS status code does not match the current acceptable status table entry
AND The system needs to check the next entry in the acceptable status table
THEN:
• The counter is incremented by 1 to move to the next table entry for comparison
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when ims operation has returned a status code that has been checked against all entries in the acceptable status table.
Trigger Criteria:
Context: An IMS operation has returned a status code that has been checked against all entries in the acceptable status table
Applied to: Status Code Not in Acceptable List
Action: The status code is not found in any of the acceptable status table entries
Logic Flow:
IF An IMS operation has returned a status code that has been checked against all entries in the acceptable status table
AND The status code is not found in any of the acceptable status table entries
THEN:
• An error message is generated indicating the IMS return code is not in the acceptable list and error processing is invoked
Business Justification: Defines the strict business conditions required to proceed when ims database operation has completed and returned a status code that is not found in the acceptable status code table after checking all 12 entries.
Trigger Criteria:
Context: An IMS database operation has completed and returned a status code that is not found in the acceptable status code table after checking all 12 entries
Applied to: Error Message Generation - Generates error message for unacceptable IMS status codes
Action: The system needs to handle the unacceptable status code
Logic Flow:
IF An IMS database operation has completed and returned a status code that is not found in the acceptable status code table after checking all 12 entries
AND The system needs to handle the unacceptable status code
THEN:
• The system constructs an error message by concatenating the status code with the text ': IMS RC CODE NOT IN ACCEPTABLE LIST', stores this message in the CCCOM error message field, and calls the error handler 'CERR' with the CCCOM control block
R-CIMS-cbl-00095 (+8)File: CIMS.cblBusiness Rule: ISCOM to CCCOM Conversion Detection
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when system needs to detect iscom format usage.
Trigger Criteria:
Context: The system needs to detect ISCOM format usage
Applied to: Set Base Address to CCCOM DB PCBs
Action: ISCOM detection process begins
Logic Flow:
IF The system needs to detect ISCOM format usage
AND ISCOM detection process begins
THEN:
• The base address pointer is set to the CCCOM database PCB control blocks area
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when base address has been established for iscom detection.
Trigger Criteria:
Context: The base address has been established for ISCOM detection
Applied to: Set Offset Address to Current PCB Area
Action: Setting up address comparison parameters
Logic Flow:
IF The base address has been established for ISCOM detection
AND Setting up address comparison parameters
THEN:
• The offset address pointer is set to the current PCB address area
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when iscom detection addresses are established.
Trigger Criteria:
Context: ISCOM detection addresses are established
Applied to: Calculate ISCOM Table Size
Action: Calculating table boundaries for validation
Logic Flow:
IF ISCOM detection addresses are established
AND Calculating table boundaries for validation
THEN:
• The ISCOM table size is computed based on the length of CCCOM database PCBs
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when base and offset addresses are established for iscom detection.
Trigger Criteria:
Context: Base and offset addresses are established for ISCOM detection
Applied to: Base Address > Zero?
Action: The base address value is evaluated
Logic Flow:
IF Base and offset addresses are established for ISCOM detection
AND The base address value is evaluated
THEN:
• If base address is greater than zero, use offset minus base calculation method, otherwise use base minus offset calculation method
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when base address is greater than zero.
Trigger Criteria:
Context: Base address is greater than zero
Applied to: Offset - Base
Action: Computing address difference for ISCOM detection
Logic Flow:
IF Base address is greater than zero
AND Computing address difference for ISCOM detection
THEN:
• Address difference is calculated as offset address minus base address
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when base address is not greater than zero.
Trigger Criteria:
Context: Base address is not greater than zero
Applied to: Base - Offset
Action: Computing address difference for ISCOM detection
Logic Flow:
IF Base address is not greater than zero
AND Computing address difference for ISCOM detection
THEN:
• Address difference is calculated as base address minus offset address
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when address offset has been determined and is within iscom range.
Trigger Criteria:
Context: Address offset has been determined and is within ISCOM range
Applied to: PCB Table Index Calculation
Action: Converting ISCOM PCB to CCCOM format
Logic Flow:
IF Address offset has been determined and is within ISCOM range
AND Converting ISCOM PCB to CCCOM format
THEN:
• Table index is calculated as (address offset + 8) divided by 12
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when table index has been calculated for pcb conversion.
Trigger Criteria:
Context: Table index has been calculated for PCB conversion
Applied to: ISCOM PCB Conversion
Action: ISCOM format PCB needs to be converted to CCCOM format
Logic Flow:
IF Table index has been calculated for PCB conversion
AND ISCOM format PCB needs to be converted to CCCOM format
THEN:
• External conversion service CIMSCONV is invoked with ISCOM PCB data, PCB pointer, and table index to perform the conversion
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when iscom pcb has been successfully converted to cccom format.
Trigger Criteria:
Context: ISCOM PCB has been successfully converted to CCCOM format
Applied to: Set New PCB Address
Action: Finalizing the conversion process
Logic Flow:
IF ISCOM PCB has been successfully converted to CCCOM format
AND Finalizing the conversion process
THEN:
• The address area is updated to point to the converted ISCOM PCB pointer
R-CIMS-cbl-00104 (+2)File: CIMS.cblBusiness Rule: PCB Table Index Calculation
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when address offset value exists from the difference between base and offset addresses.
Trigger Criteria:
Context: An address offset value exists from the difference between base and offset addresses
Applied to: PCB Table Index Calculation - Calculates table index for ISCOM to CCCOM PCB conversion based on address offset
Action: The system needs to determine the table index for PCB conversion
Logic Flow:
IF An address offset value exists from the difference between base and offset addresses
AND The system needs to determine the table index for PCB conversion
THEN:
• Add 8 to the address offset, divide the result by 12, and store as the table index
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when table index has been calculated for pcb conversion and iscom pcb data exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A table index has been calculated for PCB conversion and ISCOM PCB data exists
Applied to: Call CIMSCONV with Table Index
Action: The system needs to convert ISCOM PCB structure to CCCOM format
Logic Flow:
IF A table index has been calculated for PCB conversion and ISCOM PCB data exists
AND The system needs to convert ISCOM PCB structure to CCCOM format
THEN:
• Call the CIMSCONV service with the ISCOM PCB data, PCB pointer, and calculated table index
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when cimsconv service has successfully converted iscom pcb data and returned a pcb pointer.
Trigger Criteria:
Context: The CIMSCONV service has successfully converted ISCOM PCB data and returned a PCB pointer
Applied to: Set PCB Address Area
Action: The conversion process is complete
Logic Flow:
IF The CIMSCONV service has successfully converted ISCOM PCB data and returned a PCB pointer
AND The conversion process is complete
THEN:
• Set the address area to point to the converted PCB pointer location
Business Justification: Dictates the expected operational logic and validation steps when address offset value is available from iscom pcb processing.
Trigger Criteria:
Context: An address offset value is available from ISCOM PCB processing
Applied to: Calculate Table Index from Address Offset
Action: The system needs to determine the table index for PCB conversion
Logic Flow:
IF An address offset value is available from ISCOM PCB processing
AND The system needs to determine the table index for PCB conversion
THEN:
• The table index is calculated by adding 8 to the address offset and dividing by 12
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when iscom pcb data exists and table index has been calculated. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: ISCOM PCB data exists and table index has been calculated
Applied to: Call CIMSCONV Utility with ISCOM PCB Parameters
Action: PCB format conversion is required from ISCOM to CCCOM
Logic Flow:
IF ISCOM PCB data exists and table index has been calculated
AND PCB format conversion is required from ISCOM to CCCOM
THEN:
• The CIMSCONV utility is called with ISCOM PCB parameters and calculated table index to perform the conversion
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when cimsconv utility has successfully converted iscom pcb to cccom format.
Trigger Criteria:
Context: CIMSCONV utility has successfully converted ISCOM PCB to CCCOM format
Applied to: Set Address Area to Converted PCB Pointer
Action: The conversion process is complete
Logic Flow:
IF CIMSCONV utility has successfully converted ISCOM PCB to CCCOM format
AND The conversion process is complete
THEN:
• The address area is updated to point to the converted PCB pointer location
R-CIMS-cbl-00110File: CIMS.cblBusiness Rule: Common Area Synchronization
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when system has both cccom and iscom control structures available and the iscom address is valid and not blank. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system has both CCCOM and ISCOM control structures available and the ISCOM address is valid and not blank
Applied to: Copy Common Area Data from CCCOM to ISCOM
Action: The common area synchronization process is invoked
Logic Flow:
IF The system has both CCCOM and ISCOM control structures available and the ISCOM address is valid and not blank
AND The common area synchronization process is invoked
THEN:
• The common area data from CCCOM is copied to ISCOM to ensure both structures contain identical shared information
R-CIMS-cbl-00111 (+1)File: CIMS.cblBusiness Rule: PCB Name Normalization and Validation
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when pcb number value is provided.
Trigger Criteria:
Context: A PCB number value is provided
Applied to: PCB Number = '1'?
Action: The PCB number equals '1'
Logic Flow:
IF A PCB number value is provided
AND The PCB number equals '1'
THEN:
• The PCB number should be converted to spaces
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when pcb name is provided and database name table exists with entries.
Trigger Criteria:
Context: A PCB name is provided and database name table exists with entries
Applied to: PCB Name Matches Database Name in Table?
Action: The PCB name matches an entry in the database name table at position I
Logic Flow:
IF A PCB name is provided and database name table exists with entries
AND The PCB name matches an entry in the database name table at position I
THEN:
• The PCB address should be set to the corresponding PCB address from the table at position I
R-CIMS-cbl-00113 (+3)File: CIMS.cblBusiness Rule: PCB Table Search and Matching Logic
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when pcb number value is provided for table search.
Trigger Criteria:
Context: A PCB number value is provided for table search
Applied to: PCB Number = '1'?
Action: The PCB number equals '1'
Logic Flow:
IF A PCB number value is provided for table search
AND The PCB number equals '1'
THEN:
• The PCB number should be cleared to spaces to standardize the search criteria
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when pcb name and a database name table with multiple entries.
Trigger Criteria:
Context: A PCB name and a database name table with multiple entries
Applied to: PCB Name Matches Table Entry?
Action: The PCB name matches a database name entry in the table at position I
Logic Flow:
IF A PCB name and a database name table with multiple entries
AND The PCB name matches a database name entry in the table at position I
THEN:
• The system should retrieve the corresponding PCB address from the same table position
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when matching pcb name has been found in the database name table at position i.
Trigger Criteria:
Context: A matching PCB name has been found in the database name table at position I
Applied to: Set PCB Address from Table Entry
Action: The PCB name matches the table entry
Logic Flow:
IF A matching PCB name has been found in the database name table at position I
AND The PCB name matches the table entry
THEN:
• The PCB address should be set to the corresponding address value from the same table position
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when pcb table search is in progress with current index i.
Trigger Criteria:
Context: A PCB table search is in progress with current index I
Applied to: More Table Entries Available?
Action: The search has not found a matching PCB name and current index I is less than or equal to 249 and the database name at position I is not spaces
Logic Flow:
IF A PCB table search is in progress with current index I
AND The search has not found a matching PCB name and current index I is less than or equal to 249 and the database name at position I is not spaces
THEN:
• The search should continue to the next table entry by incrementing the index
R-CIMS-cbl-00117 (+9)File: CIMS.cblBusiness Rule: IMS Call Parameter Assembly and Validation
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when ims database function code is provided in func parameter. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An IMS database function code is provided in FUNC parameter
Applied to: Set Function Parameter from FUNC
Action: The system processes the IMS call parameters
Logic Flow:
IF An IMS database function code is provided in FUNC parameter
AND The system processes the IMS call parameters
THEN:
• The function code is stored in CC-LAST-IMS-FUNC field of the common control area for tracking purposes
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when argument count is 5 or greater. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The argument count is 5 or greater
Applied to: Include SSA1 Parameter
Action: The system assembles IMS call parameters
Logic Flow:
IF The argument count is 5 or greater
AND The system assembles IMS call parameters
THEN:
• SSA1 parameter is included in the call and stored in CC-LAST-SSA1 field of the common control area
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when argument count is 6 or greater. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The argument count is 6 or greater
Applied to: Include SSA2 Parameter
Action: The system assembles IMS call parameters
Logic Flow:
IF The argument count is 6 or greater
AND The system assembles IMS call parameters
THEN:
• SSA2 parameter is included in the call and stored in CC-LAST-SSA2 field of the common control area
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when argument count is 7 or greater. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The argument count is 7 or greater
Applied to: Include SSA3 Parameter
Action: The system assembles IMS call parameters
Logic Flow:
IF The argument count is 7 or greater
AND The system assembles IMS call parameters
THEN:
• SSA3 parameter is included in the call and stored in CC-LAST-SSA3 field of the common control area
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when argument count is 8 or greater. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The argument count is 8 or greater
Applied to: Include SSA4 Parameter
Action: The system assembles IMS call parameters
Logic Flow:
IF The argument count is 8 or greater
AND The system assembles IMS call parameters
THEN:
• SSA4 parameter is included in the call and stored in CC-LAST-SSA4 field of the common control area
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when argument count is 9 or greater. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The argument count is 9 or greater
Applied to: Include SSA5 Parameter
Action: The system assembles IMS call parameters
Logic Flow:
IF The argument count is 9 or greater
AND The system assembles IMS call parameters
THEN:
• SSA5 parameter is included in the call and stored in CC-LAST-SSA5 field of the common control area
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when argument count is 10 or greater. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The argument count is 10 or greater
Applied to: Include SSA6 Parameter
Action: The system assembles IMS call parameters
Logic Flow:
IF The argument count is 10 or greater
AND The system assembles IMS call parameters
THEN:
• SSA6 parameter is included in the call and stored in CC-LAST-SSA6 field of the common control area
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when total argument count has been determined. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The total argument count has been determined
Applied to: Calculate Parameter Count
Action: The system prepares for IMS call execution
Logic Flow:
IF The total argument count has been determined
AND The system prepares for IMS call execution
THEN:
• The parameter count is calculated by subtracting 1 from argument count and stored in CC-NUMB-OF-ARGS field
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is preparing to execute an ims database call. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is preparing to execute an IMS database call
Applied to: Initialize Status Code to '**'
Action: All parameters have been assembled
Logic Flow:
IF The system is preparing to execute an IMS database call
AND All parameters have been assembled
THEN:
• The status code is set to '**' in CC-STATUS-CODE field to indicate call in progress
Rule Belongs to : CIMS.cbl
Business Justification: Defines the strict business conditions required to proceed when all ims call parameters have been validated and assembled. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All IMS call parameters have been validated and assembled
Applied to: Execute CBLTDLI Call
Action: The system executes the database operation
Logic Flow:
IF All IMS call parameters have been validated and assembled
AND The system executes the database operation
THEN:
• The CBLTDLI program is called with the function, PCB, IO area, and all applicable SSA parameters
R-CIMS-cbl-00127 (+3)File: CIMS.cblBusiness Rule: Acceptable Status Code Table Lookup
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when database operation has completed and returned a status code, and there exists a table of acceptable status codes with up to 12 entries.
Trigger Criteria:
Context: A database operation has completed and returned a status code, and there exists a table of acceptable status codes with up to 12 entries
Applied to: Acceptable Status Code Table Lookup - Searches through the acceptable status code table to validate IMS return codes
Action: The system performs status code validation by iterating through the acceptable status code table
Logic Flow:
IF A database operation has completed and returned a status code, and there exists a table of acceptable status codes with up to 12 entries
AND The system performs status code validation by iterating through the acceptable status code table
THEN:
• If the status code matches any entry in the acceptable status table, the operation is considered valid and processing continues with common area updates, otherwise the status code is deemed unacceptable
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when status code from a database operation and a specific entry from the acceptable status code table at index position i.
Trigger Criteria:
Context: A status code from a database operation and a specific entry from the acceptable status code table at index position I
Applied to: Current Status Code = Table Entry?
Action: The system compares the current status code with the table entry at the current index
Logic Flow:
IF A status code from a database operation and a specific entry from the acceptable status code table at index position I
AND The system compares the current status code with the table entry at the current index
THEN:
• If the status code equals the table entry, the status is validated as acceptable and common area updates are performed, otherwise the comparison continues with the next table entry
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when system is iterating through the acceptable status code table with a current index value i.
Trigger Criteria:
Context: The system is iterating through the acceptable status code table with a current index value I
Applied to: Index I > 12?
Action: The system checks if the current index I exceeds the maximum table size of 12 entries
Logic Flow:
IF The system is iterating through the acceptable status code table with a current index value I
AND The system checks if the current index I exceeds the maximum table size of 12 entries
THEN:
• If the index is greater than 12, all table entries have been checked and the status code is considered unacceptable, otherwise the iteration continues to the next table entry
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when database operation status code that has been compared against all entries in the acceptable status code table without finding a match.
Trigger Criteria:
Context: A database operation status code that has been compared against all entries in the acceptable status code table without finding a match
Applied to: All Table Entries Checked - Invalid Status
Action: All 12 entries in the acceptable status code table have been checked and no match was found
Logic Flow:
IF A database operation status code that has been compared against all entries in the acceptable status code table without finding a match
AND All 12 entries in the acceptable status code table have been checked and no match was found
THEN:
• An error message is constructed containing the status code and the text 'IMS RC CODE NOT IN ACCEPTABLE LIST' and error processing is invoked
Business Justification: Governs the functional prerequisites and system routing when base address is set to cccom db-pcbs address and offset address is set to addr-area address.
Trigger Criteria:
Context: Base address is set to CCCOM DB-PCBS address and offset address is set to ADDR-AREA address
Applied to: Base Address > Zero?
Action: Base address value is greater than zero
Logic Flow:
IF Base address is set to CCCOM DB-PCBS address and offset address is set to ADDR-AREA address
AND Base address value is greater than zero
THEN:
• Address-1 is set to offset address value and Address-2 is set to base address value
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when base address is set to cccom db-pcbs address and offset address is set to addr-area address.
Trigger Criteria:
Context: Base address is set to CCCOM DB-PCBS address and offset address is set to ADDR-AREA address
Applied to: Set Address-1 = Base Address Set Address-2 = Offset Address
Action: Base address value is not greater than zero
Logic Flow:
IF Base address is set to CCCOM DB-PCBS address and offset address is set to ADDR-AREA address
AND Base address value is not greater than zero
THEN:
• Address-1 is set to base address value and Address-2 is set to offset address value
Rule Belongs to : CIMS.cbl
Business Justification: Establishes the required business protocol to be followed when address-1 and address-2 values have been determined based on base address evaluation.
Trigger Criteria:
Context: Address-1 and Address-2 values have been determined based on base address evaluation
Applied to: Calculate Final Offset Offset = Address-1 - Address-2
Action: Final offset calculation is performed
Logic Flow:
IF Address-1 and Address-2 values have been determined based on base address evaluation
AND Final offset calculation is performed
THEN:
• Address offset equals Address-1 minus Address-2
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when cccom and iscom structures are available.
Trigger Criteria:
Context: CCCOM and ISCOM structures are available
Applied to: Calculate CIMS Table Size
Action: CIMS table size calculation is required
Logic Flow:
IF CCCOM and ISCOM structures are available
AND CIMS table size calculation is required
THEN:
• Table size is set to the length of CC-DB-PCBS structure in ISCOM
R-CIMS-cbl-00135 (+5)File: CIMS.cblBusiness Rule: ISCOM Range Validation
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when cccom structure contains pcb control block information.
Trigger Criteria:
Context: The CCCOM structure contains PCB control block information
Applied to: Get CCCOM PCB Base Address
Action: The system needs to validate ISCOM table range
Logic Flow:
IF The CCCOM structure contains PCB control block information
AND The system needs to validate ISCOM table range
THEN:
• The base address of CC-DB-PCBS is retrieved and stored for address calculation
Rule Belongs to : CIMS.cbl
Business Justification: Dictates the expected operational logic and validation steps when address area contains valid offset information.
Trigger Criteria:
Context: The address area contains valid offset information
Applied to: Get Address Area Offset Address
Action: The system performs ISCOM range validation
Logic Flow:
IF The address area contains valid offset information
AND The system performs ISCOM range validation
THEN:
• The offset address is retrieved and stored for comparison with the base address
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when iscom structure cc-db-pcbs is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The ISCOM structure CC-DB-PCBS is available
Applied to: Calculate ISCOM Table Size
Action: The system needs to validate address offset ranges
Logic Flow:
IF The ISCOM structure CC-DB-PCBS is available
AND The system needs to validate address offset ranges
THEN:
• The table size is calculated using the length of CC-DB-PCBSand stored in WS-CIMS-TABLE-SIZE
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when base address and offset address are available for calculation.
Trigger Criteria:
Context: Base address and offset address are available for calculation
Applied to: Base Address > Zero?
Action: The base address is greater than zero
Logic Flow:
IF Base address and offset address are available for calculation
AND The base address is greater than zero
THEN:
• Address 1 is set to offset address and Address 2 is set to base address, otherwise Address 1 is set to base address and Address 2 is set to offset address
Rule Belongs to : CIMS.cbl
Business Justification: Governs the functional prerequisites and system routing when address 1 and address 2 are properly ordered based on base address sign. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Address 1 and Address 2 are properly ordered based on base address sign
Applied to: Calculate Final Address Offset
Action: The system calculates the final offset
Logic Flow:
IF Address 1 and Address 2 are properly ordered based on base address sign
AND The system calculates the final offset
THEN:
• The address offset is computed as Address 1 minus Address 2 and stored in WS-ADDR-OFFSET
Rule Belongs to : CIMS.cbl
Business Justification: Ensures correct system behavior and process compliance when address offset has been calculated and iscom table size is known.
Trigger Criteria:
Context: The address offset has been calculated and ISCOM table size is known
Applied to: Offset Within ISCOM Table Range?
Action: The system validates the offset against table boundaries
Logic Flow:
IF The address offset has been calculated and ISCOM table size is known
AND The system validates the offset against table boundaries
THEN:
• If the offset is within the valid ISCOM table range, ISCOM conversion processing is initiated, otherwise standard PCB processing is used
Business Justification: Establishes the required business protocol to be followed when error number needs to be looked up in the error message table.
Trigger Criteria:
Context: An error number needs to be looked up in the error message table
Applied to: Initialize Search Index to 1
Action: The error lookup process begins
Logic Flow:
IF An error number needs to be looked up in the error message table
AND The error lookup process begins
THEN:
• The search index is set to position 1 to start searching from the beginning of the error table
Rule Belongs to : GCCMQERR.cbl
Business Justification: Establishes the required business protocol to be followed when system is examining an error number at the current table position.
Trigger Criteria:
Context: The system is examining an error number at the current table position
Applied to: Does Error Number Match Input?
Action: The error number at the current index is compared with the input error number
Logic Flow:
IF The system is examining an error number at the current table position
AND The error number at the current index is compared with the input error number
THEN:
• If the error numbers match exactly, the search is successful and the corresponding error message is identified
Rule Belongs to : GCCMQERR.cbl
Business Justification: Defines the strict business conditions required to proceed when system is examining an error number at the current table position and no match was found.
Trigger Criteria:
Context: The system is examining an error number at the current table position and no match was found
Applied to: Is Error Number Empty/Spaces?
Action: The error number at the current index contains spaces or is empty
Logic Flow:
IF The system is examining an error number at the current table position and no match was found
AND The error number at the current index contains spaces or is empty
THEN:
• The search process recognizes that the end of the error table has been reached
Rule Belongs to : GCCMQERR.cbl
Business Justification: Governs the functional prerequisites and system routing when current error number does not match the input and the end of table has not been reached.
Trigger Criteria:
Context: The current error number does not match the input and the end of table has not been reached
Applied to: Increment Index by 1
Action: The system needs to continue searching the error table
Logic Flow:
IF The current error number does not match the input and the end of table has not been reached
AND The system needs to continue searching the error table
THEN:
• The search index is incremented by 1 to examine the next error number in the table
Rule Belongs to : GCCMQERR.cbl
Business Justification: Defines the strict business conditions required to proceed when matching error number has been found in the error table.
Trigger Criteria:
Context: A matching error number has been found in the error table
Applied to: Search Complete - Match Found
Action: The search process completes successfully
Logic Flow:
IF A matching error number has been found in the error table
AND The search process completes successfully
THEN:
• The corresponding error message text is moved to the output message field
Rule Belongs to : GCCMQERR.cbl
Business Justification: Ensures correct system behavior and process compliance when end of the error table has been reached without finding a matching error number.
Trigger Criteria:
Context: The end of the error table has been reached without finding a matching error number
Applied to: Search Complete - End of Table Reached
Action: The search process completes without success
Logic Flow:
IF The end of the error table has been reached without finding a matching error number
AND The search process completes without success
THEN:
• The input error number is stored in the unknown number field and a default unknown error message is moved to the output message field
Business Justification: Dictates the expected operational logic and validation steps when error code has been found in the error message table at a specific index position.
Trigger Criteria:
Context: An error code has been found in the error message table at a specific index position
Applied to: Retrieve Error Message Text from Table
Action: The error code at the current index position equals the input error number
Logic Flow:
IF An error code has been found in the error message table at a specific index position
AND The error code at the current index position equals the input error number
THEN:
• The corresponding error message text at that same index position is moved to the output message field
Business Justification: Ensures correct system behavior and process compliance when error code has been searched in the error message table and error-number (error-index) does not equal input-error-number.
Trigger Criteria:
Context: An error code has been searched in the error message table and ERROR-NUMBER (ERROR-INDEX) does not equal INPUT-ERROR-NUMBER
Applied to: Move Input Error Number to Unknown Number Field
Action: The system determines the error code is not found in the table
Logic Flow:
IF An error code has been searched in the error message table and ERROR-NUMBER (ERROR-INDEX) does not equal INPUT-ERROR-NUMBER
AND The system determines the error code is not found in the table
THEN:
• The input error number is moved to the unknown number field for inclusion in the default message
Rule Belongs to : GCCMQERR.cbl
Business Justification: Governs the functional prerequisites and system routing when error code is not found in the error message table and the unknown number field has been populated.
Trigger Criteria:
Context: An error code is not found in the error message table and the unknown number field has been populated
Applied to: Move Unknown Message Template to Output
Action: The system needs to provide an error message for an unrecognized error code
Logic Flow:
IF An error code is not found in the error message table and the unknown number field has been populated
AND The system needs to provide an error message for an unrecognized error code
THEN:
• The unknown message template is moved to the output message text field
Business Justification: Ensures correct system behavior and process compliance when message writing system needs to be initialized.
Trigger Criteria:
Context: The message writing system needs to be initialized
Applied to: Message Writing Initialization - Calls the WRITMSG program to initialize message writing functionality
Action: The program execution begins
Logic Flow:
IF The message writing system needs to be initialized
AND The program execution begins
THEN:
• The WRITMSG program is called to initialize message writing functionality
Rule Belongs to : WRITMSGL.cbl
Business Justification: Dictates the expected operational logic and validation steps when message writing system is initialized and six parameters p1, p2, p3, p4, p5, p6 are available.
Trigger Criteria:
Context: The message writing system is initialized and six parameters P1, P2, P3, P4, P5, P6 are available
Applied to: Message Writing Initialization - Calls the WRITMSG program to initialize message writing functionality
Action: Extended message writing is required
Logic Flow:
IF The message writing system is initialized and six parameters P1, P2, P3, P4, P5, P6 are available
AND Extended message writing is required
THEN:
• The WRITMSGX program is called with parameters P1, P2, P3, P4, P5, P6
Rule Belongs to : WRITMSGL.cbl
Business Justification: Governs the functional prerequisites and system routing when both basic and extended message writing operations are required.
Trigger Criteria:
Context: Both basic and extended message writing operations are required
Applied to: Message Writing Initialization - Calls the WRITMSG program to initialize message writing functionality
Action: Message processing is initiated
Logic Flow:
IF Both basic and extended message writing operations are required
AND Message processing is initiated
THEN:
• WRITMSG is called first, followed by WRITMSGX with parameters
Business Justification: Establishes the required business protocol to be followed when six input parameters p1, p2, p3, p4, p5, p6 are available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Six input parameters P1, P2, P3, P4, P5, P6 are available
Applied to: Call WRITMSGX Program with Parameters
Action: The system needs to write a formatted message
Logic Flow:
IF Six input parameters P1, P2, P3, P4, P5, P6 are available
AND The system needs to write a formatted message
THEN:
• The WRITMSGX program is called with all six parameters to produce the formatted message output