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.
🎯 CA Cargo Scope Detected: Extracted 4752 rules, Optimally Merged into 435 Feature Scenarios.
Business Justification: Ensures correct system behavior and process compliance when ccn key is provided for processing.
Trigger Criteria:
Context: A CCN key is provided for processing
Applied to: Get First Follower Manifest
Action: The system initializes follower manifest processing
Logic Flow:
IF A CCN key is provided for processing
AND The system initializes follower manifest processing
THEN:
• The first follower manifest record matching the CCN key is retrieved and processing status is set based on record availability
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when system is processing follower manifest records.
Trigger Criteria:
Context: The system is processing follower manifest records
Applied to: More Follower Manifests?
Action: A database operation is performed to retrieve records
Logic Flow:
IF The system is processing follower manifest records
AND A database operation is performed to retrieve records
THEN:
• Processing continues if status code is spaces, otherwise processing stops
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when follower manifest record is retrieved.
Trigger Criteria:
Context: A follower manifest record is retrieved
Applied to: Validate Manifest for Processing
Action: The system compares the manifest CCN key with the input CCN key
Logic Flow:
IF A follower manifest record is retrieved
AND The system compares the manifest CCN key with the input CCN key
THEN:
• The manifest is processed only if the CCN keys are different, otherwise it is skipped
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest is being processed for cancel release.
Trigger Criteria:
Context: A manifest is being processed for cancel release
Applied to: Set Manifest Status Based on CSA Indicator
Action: The system checks the CSA indicator status
Logic Flow:
IF A manifest is being processed for cancel release
AND The system checks the CSA indicator status
THEN:
• If CSA indicator is ON, status is set to CSA-DLV, otherwise status is set to MANUAL
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest is being processed for cancel release.
Trigger Criteria:
Context: A manifest is being processed for cancel release
Applied to: Set Manual Change Flag
Action: The system updates manifest data
Logic Flow:
IF A manifest is being processed for cancel release
AND The system updates manifest data
THEN:
• The 309 manual change flag is set to true
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being cancelled.
Trigger Criteria:
Context: A manifest is being cancelled
Applied to: Update Release Information
Action: The system updates release information
Logic Flow:
IF A manifest is being cancelled
AND The system updates release information
THEN:
• Current machine date is recorded as unrelease date, current user ID is recorded, original release date is preserved, release information is cleared, and unrelease reason is set
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest has a destination station name.
Trigger Criteria:
Context: A manifest has a destination station name
Applied to: Lookup Station Information
Action: The system performs station lookup using table ID 'MC'
Logic Flow:
IF A manifest has a destination station name
AND The system performs station lookup using table ID 'MC'
THEN:
• If lookup is successful (return flag = '0'), station number from lookup is used, otherwise existing destination station number is retained
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has an in-transit status.
Trigger Criteria:
Context: A manifest has an in-transit status
Applied to: Update In-Transit Status
Action: The in-transit status is 'Z' or 'E'
Logic Flow:
IF A manifest has an in-transit status
AND The in-transit status is 'Z' or 'E'
THEN:
• The in-transit status is changed to 'L'
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has an in-transit status.
Trigger Criteria:
Context: A manifest has an in-transit status
Applied to: Handle Special Transit Cases
Action: The in-transit status is 'R' or 'T'
Logic Flow:
IF A manifest has an in-transit status
AND The in-transit status is 'R' or 'T'
THEN:
• The destination station number for index is cleared to spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has an in-transit status.
Trigger Criteria:
Context: A manifest has an in-transit status
Applied to: M10 Segment Processing
Action: The in-transit status is 'T'
Logic Flow:
IF A manifest has an in-transit status
AND The in-transit status is 'T'
THEN:
• The system should set application type to '29', otherwise set to '27'
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed.
Trigger Criteria:
Context: A manifest is being processed
Applied to: Clear Delete Status
Action: The current status is not equal to 'DELETED'
Logic Flow:
IF A manifest is being processed
AND The current status is not equal to 'DELETED'
THEN:
• The delete status field is cleared to spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed.
Trigger Criteria:
Context: A manifest is being processed
Applied to: Manifest from 66MASTER station?
Action: The manifest from station equals '66MASTER'
Logic Flow:
IF A manifest is being processed
AND The manifest from station equals '66MASTER'
THEN:
• The system should exit processing immediately without performing any manifest operations
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed.
Trigger Criteria:
Context: A manifest is being processed
Applied to: Post-Emanifest Amendment Flag?
Action: The post-emanifest amendment flag is set to true
Logic Flow:
IF A manifest is being processed
AND The post-emanifest amendment flag is set to true
THEN:
• The system should process the M13 amendment segment
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release has been processed.
Trigger Criteria:
Context: A manifest cancel release has been processed
Applied to: Log Cancel Release Activity
Action: The system logs the activity
Logic Flow:
IF A manifest cancel release has been processed
AND The system logs the activity
THEN:
• An audit record is created with CCN key, user ID, current date and time, and cargo release removed action code
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when current follower manifest processing is complete.
Trigger Criteria:
Context: Current follower manifest processing is complete
Applied to: Get Next Follower Manifest
Action: The system retrieves the next follower manifest
Logic Flow:
IF Current follower manifest processing is complete
AND The system retrieves the next follower manifest
THEN:
• If status code is spaces and CCN key matches the master manifest CCN, processing continues, otherwise processing stops
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo report program is starting.
Trigger Criteria:
Context: The cargo report program is starting
Applied to: Initialize Program
Action: Program initialization begins
Logic Flow:
IF The cargo report program is starting
AND Program initialization begins
THEN:
• Description arrays are cleared to spaces, index counters are set to 1, and cargo control number array is initialized to spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when valid shipment root key exists.
Trigger Criteria:
Context: A valid shipment root key exists
Applied to: Get Shipment Root Data
Action: The system needs to access shipment root data
Logic Flow:
IF A valid shipment root key exists
AND The system needs to access shipment root data
THEN:
• The SHIPROOT segment is retrieved using the root key with 'GU' function code
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when shipment mine data has been retrieved.
Trigger Criteria:
Context: Shipment mine data has been retrieved
Applied to: Extract EDI BOL Key
Action: The system needs to identify the EDI BOL key
Logic Flow:
IF Shipment mine data has been retrieved
AND The system needs to identify the EDI BOL key
THEN:
• If shipment mine data is found, the first data line becomes the EDI BOL key, otherwise the key is set to spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to identify the customs broker.
Trigger Criteria:
Context: The system needs to identify the customs broker
Applied to: Build Broker Information
Action: Building broker information
Logic Flow:
IF The system needs to identify the customs broker
AND Building broker information
THEN:
• First attempt to get broker from EDI BOL data, if not found then search Fastway system data, if still not found then set broker name to 'UNKNOWN'
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when multiple broker records exist in edi bol data.
Trigger Criteria:
Context: Multiple broker records exist in EDI BOL data
Applied to: Build Broker Information
Action: Processing broker information from EDI BOL
Logic Flow:
IF Multiple broker records exist in EDI BOL data
AND Processing broker information from EDI BOL
THEN:
• If organization ID is 'XQ', use that broker name and stop searching; if organization ID is 'CB' and no XQ found yet and custom ID is not 'XR' or 'XU', store as temporary broker
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when broker name needs to be extracted from special handling instructions.
Trigger Criteria:
Context: Broker name needs to be extracted from special handling instructions
Applied to: Build Broker Information
Action: Processing Fastway data for broker information
Logic Flow:
IF Broker name needs to be extracted from special handling instructions
AND Processing Fastway data for broker information
THEN:
• Remove standard prefixes ('CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', 'BROKER: ', 'CB ', 'XQ ', 'CB: ', 'XQ: ') from the instruction text to get the actual broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when broker long name has been determined.
Trigger Criteria:
Context: A broker long name has been determined
Applied to: Build Broker Information
Action: Finalizing broker information
Logic Flow:
IF A broker long name has been determined
AND Finalizing broker information
THEN:
• Look up the broker in GCST2RT table andif found use the short name, otherwise use the long name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data is available and reference number processing is needed.
Trigger Criteria:
Context: EDI BOL data is available and reference number processing is needed
Applied to: Build N9 Reference Numbers
Action: Building N9 reference numbers from BOL data
Logic Flow:
IF EDI BOL data is available and reference number processing is needed
AND Building N9 reference numbers from BOL data
THEN:
• Search for 'BM' and 'SI' qualified reference numbers, set empty references to 'N/A', and add them to the reference array up to maximum of 10 entries
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment data contains a non-empty shipment id number.
Trigger Criteria:
Context: Shipment data contains a non-empty shipment ID number
Applied to: Build N9 Reference Numbers
Action: Processing reference numbers from BOL data
Logic Flow:
IF Shipment data contains a non-empty shipment ID number
AND Processing reference numbers from BOL data
THEN:
• Add the shipment ID as a 'CN' (Container Number) qualified reference to the reference array
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when bm or si reference numbers are missing from edi bol and space is available in reference array.
Trigger Criteria:
Context: BM or SI reference numbers are missing from EDI BOL and space is available in reference array
Applied to: Build N9 Reference Numbers
Action: Building reference numbers
Logic Flow:
IF BM or SI reference numbers are missing from EDI BOL and space is available in reference array
AND Building reference numbers
THEN:
• Use shipper bill number as 'BM' reference and search special handling codes for 'SI' type references
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when reference numbers may contain leading spaces.
Trigger Criteria:
Context: Reference numbers may contain leading spaces
Applied to: Compress Reference Numbers
Action: Compressing reference number data
Logic Flow:
IF Reference numbers may contain leading spaces
AND Compressing reference number data
THEN:
• For each reference number that starts with spaces, shift all non-space characters to the left to remove leading spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when equipment seal records exist with 'sn' type.
Trigger Criteria:
Context: Equipment seal records exist with 'SN' type
Applied to: Build Seal Numbers
Action: Building seal number information
Logic Flow:
IF Equipment seal records exist with 'SN' type
AND Building seal number information
THEN:
• Extract up to 4 seal numbers from each record, excluding spaces and low-values, up to a maximum of 20 total seal numbers
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment processing is in progress.
Trigger Criteria:
Context: Shipment processing is in progress
Applied to: Multi-Bill Shipment?
Action: Determining processing path
Logic Flow:
IF Shipment processing is in progress
AND Determining processing path
THEN:
• IfGCCC-MULTI-BILL-TO-BE-CREATED flag is true, proceed with multi-bill CCN processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when multi-bill processing is required and edi bol data exists.
Trigger Criteria:
Context: Multi-bill processing is required and EDI BOL data exists
Applied to: Find Multi-Bill CCNs
Action: Finding related cargo control numbers
Logic Flow:
IF Multi-bill processing is required and EDI BOL data exists
AND Finding related cargo control numbers
THEN:
• Search 'RF' type records for 'XC' qualified cargo control numbers and add them to the CCN array, excluding the current cargo control number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment processing requires manifest checking.
• IfMULTI-MANIFEST-IND equals 'Y', set multi-bill shipment flag and process N10 data, otherwise set not-multi-bill shipment flag
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when multi-manifest shipment with matching cargo control number found.
Trigger Criteria:
Context: Multi-manifest shipment with matching cargo control number found
Applied to: Process Multi-Bill N10 Data
Action: Processing N10 lading data
Logic Flow:
IF Multi-manifest shipment with matching cargo control number found
AND Processing N10 lading data
THEN:
• Extract numeric quantity from right to left, pad with leading zeros, set lading quantity and origin country, and collect description lines
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when lading description processing is required.
Trigger Criteria:
Context: Lading description processing is required
Applied to: Process Lading Descriptions
Action: Building cargo descriptions
Logic Flow:
IF Lading description processing is required
AND Building cargo descriptions
THEN:
• Collect primary descriptions from L5 segments, additional descriptions from related records, special instructions with codes 'VA', 'VS', or 'EV', and vehicle identification numbers
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when description data has been collected and is not empty. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description data has been collected and is not empty
Applied to: Process Lading Descriptions
Action: Finalizing description processing
Logic Flow:
IF Description data has been collected and is not empty
AND Finalizing description processing
THEN:
• Call GCCCOMP to compress descriptions, move compressed result to lading description field, andif extra descriptions exist, call GCCDESC to store them separately
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment processing is complete.
Trigger Criteria:
Context: Shipment processing is complete
Applied to: Process CSA Data
Action: Checking for CSA requirements
Logic Flow:
IF Shipment processing is complete
AND Checking for CSA requirements
THEN:
• If destination road number is 105 (Canada) and haulage right carrier is empty, proceed with CSA data processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when csa processing is required and edi bol importer segment is found. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: CSA processing is required and EDI BOL importer segment is found
Applied to: Process CSA Data
Action: Validating importer information
Logic Flow:
IF CSA processing is required and EDI BOL importer segment is found
AND Validating importer information
THEN:
• If entity ID is 'IM' with non-empty name and ID code qualifier is 'M5' with non-empty ID code, set CSA indicator ON and copy importer data; if qualifier is 'BN' or 'AI', only copy importer data without setting CSA indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when csa processing is required but edi bol importer segment is not found.
Trigger Criteria:
Context: CSA processing is required but EDI BOL importer segment is not found
Applied to: Process CSA Data
Action: Searching Fastway data for CSA information
Logic Flow:
IF CSA processing is required but EDI BOL importer segment is not found
AND Searching Fastway data for CSA information
THEN:
• Search for 'N1-01 IM' segments followed by 'N1-02' importer name, 'N1-03' qualifier ('M5', 'BN', or 'AI'), and 'N1-04' business number; set CSA indicator ON only for 'M5' qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when waybill key is provided for cargo manifest processing.
Trigger Criteria:
Context: A waybill key is provided for cargo manifest processing
Applied to: Waybill Key Valid?
Action: The system validates the waybill key format and retrieves shipment data
Logic Flow:
IF A waybill key is provided for cargo manifest processing
AND The system validates the waybill key format and retrieves shipment data
THEN:
• If the waybill key is blank or non-numeric, set return status to invalid waybill key. If the waybill key is valid but no shipment is found, set return status to waybill not found. If the waybill key is valid and shipment exists, set return status to OK
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer name, business number, and business number qualifier are all provided.
Trigger Criteria:
Context: Importer name, business number, and business number qualifier are all provided
Applied to: Importer Data Backup
Action: The system searches through customs records sequence 3 to 24 for existing importer data
Logic Flow:
IF Importer name, business number, and business number qualifier are all provided
AND The system searches through customs records sequence 3 to 24 for existing importer data
THEN:
• For each sequence, retrieve customs record type 55. If entity ID equals 'IM', extract all importer details including name, address, contact information, and CSA indicator. Set importer found flag and clear importer fields from input
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when waybill date is available from the shipment root.
Trigger Criteria:
Context: A waybill date is available from the shipment root
Applied to: Border Arrival Date Calculation
Action: The system calculates the border arrival ETA using the date calculation service
Logic Flow:
IF A waybill date is available from the shipment root
AND The system calculates the border arrival ETA using the date calculation service
THEN:
• Add the configured number of days to the waybill date to determine border arrival ETA. If the date calculation fails, add an error message for invalid waybill date
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when origin and destination station information from shipment data.
Trigger Criteria:
Context: Origin and destination station information from shipment data
Applied to: Station Information Retrieval
Action: The system validates station names and state codes
Logic Flow:
IF Origin and destination station information from shipment data
AND The system validates station names and state codes
THEN:
• If origin station name is blank, add error message for invalid origin station name. If origin station state code is blank, add error message for invalid origin province/state code, otherwise determine origin country from state code lookup. If destination station name is blank, add error message for invalid destination station name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when action code and multi-manifest indicator from the request.
Trigger Criteria:
Context: An action code and multi-manifest indicator from the request
Applied to: Manifest Port Determination
Action: The system determines manifest port requirements
Logic Flow:
IF An action code and multi-manifest indicator from the request
AND The system determines manifest port requirements
THEN:
• If action is IIS-A6or multi-manifest indicator equals 'Y' and manifest from port is blank, set manifest from port to 'IIS-A6'. If action is IIS-A6or multi-manifest indicator equals 'Y' and manifest to port is blank, set manifest to port to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ccn with type '9' and manifest port information.
Trigger Criteria:
Context: A CCN with type '9' and manifest port information
Applied to: Special Port Code Processing
Action: The system evaluates special port processing conditions
Logic Flow:
IF A CCN with type '9' and manifest port information
AND The system evaluates special port processing conditions
THEN:
• If CCN type equals '9' and US exit code is not '00000' or manifest from station is not 'IIS-A6' or manifest to station is not 'IIS-A6' or manifest stations are different, force both manifest from and to stations to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest from and to port names requiring customs code validation.
Trigger Criteria:
Context: Manifest from and to port names requiring customs code validation
Applied to: Customs Code Validation
Action: The system looks up ports in the MC table and validates customs codes
Logic Flow:
IF Manifest from and to port names requiring customs code validation
AND The system looks up ports in the MC table and validates customs codes
THEN:
• For manifest from port: if lookup successful but Canadian customs code equals '00000', add error for invalid Canadian customs code. If lookup fails, add error for invalid manifest port. For manifest to port: if blank, set error flag 1. If lookup successful but Canadian customs code equals '00000', set error flag 2. If lookup fails, set error flag 3
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest to station name and destination country information.
Trigger Criteria:
Context: Manifest to station name and destination country information
Applied to: Sub-location Code Determination
Action: The system determines sub-location code requirements
Logic Flow:
IF Manifest to station name and destination country information
AND The system determines sub-location code requirements
THEN:
• If manifest to station equals 'IIS-A6' and destination is not US, lookup destination station in CM table to get port manifest information and set sub-location code from lookup results
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when consignee chop code and destination station number.
Trigger Criteria:
Context: Consignee chop code and destination station number
Applied to: Bonded Siding Location Check
Action: The system looks up the consignee in the RF bonded siding table
Logic Flow:
IF Consignee chop code and destination station number
AND The system looks up the consignee in the RF bonded siding table
THEN:
• If consignee is found in RF table, set customer bonded status to TRUE and get sub-location code from RF record. If consignee is not found in RF table, set customer bonded status to FALSE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when sub-location code, csa indicator, manifest station information, destination country, and arrival indicator.
Trigger Criteria:
Context: Sub-location code, CSA indicator, manifest station information, destination country, and arrival indicator
Applied to: Sub-location Requirement Validation
Action: The system evaluates sub-location code requirements
Logic Flow:
IF Sub-location code, CSA indicator, manifest station information, destination country, and arrival indicator
AND The system evaluates sub-location code requirements
THEN:
• If sub-location code is present OR (sub-location code is blank AND (CSA indicator is on OR manifest stations are the same but not 'IIS-A6' OR destination is US OR arrival indicator is 'Y')), continue processing. Otherwise, set sub-location error flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when conveying car initial and number from shipment data, and tofc/cofc indicator.
Trigger Criteria:
Context: Conveying car initial and number from shipment data, and TOFC/COFC indicator
Applied to: Conveying Car Processing
Action: The system processes conveying car information
Logic Flow:
IF Conveying car initial and number from shipment data, and TOFC/COFC indicator
AND The system processes conveying car information
THEN:
• If conveying car initial is present, use conveying car data from shipment. If conveying car initial is blank and TOFC/COFC indicator equals 'T' or 'C', set default conveying car to 'UNKN' and '00000001'. If conveying car initial is blank and not TOFC/COFC, clear conveying car fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when conveying car initial that is not blank. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A conveying car initial that is not blank
Applied to: Equipment Validation
Action: The system validates the car ID using the GCCCARID service
Logic Flow:
IF A conveying car initial that is not blank
AND The system validates the car ID using the GCCCARID service
THEN:
• Call GCCCARID service to validate the conveying car. If validation returns all asterisks, add error message for invalid conveying car. If validation succeeds, update conveying car with validated value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when previous carrier number and previous cargo control number from shipment data.
Trigger Criteria:
Context: Previous carrier number and previous cargo control number from shipment data
Applied to: Previous Carrier Control Processing
Action: The system processes previous carrier control information
Logic Flow:
IF Previous carrier number and previous cargo control number from shipment data
AND The system processes previous carrier control information
THEN:
• If previous carrier number is not '0000' and not blank, combine previous carrier number (positions 1-4) with previous cargo control number (positions 5-21) to form complete previous CCN
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol commodity data or fastway shipment commodity data.
Trigger Criteria:
Context: EDI BOL commodity data or FastWay shipment commodity data
Applied to: Weight and Quantity Roll-up
Action: The system rolls up weight and quantity information
Logic Flow:
IF EDI BOL commodity data or FastWay shipment commodity data
AND The system rolls up weight and quantity information
THEN:
• For each commodity sequence 1-98, retrieve EDI commodity data and add lading quantity to total units. For first sequence, get weight data and set weight unit based on metric indicator. If no EDI data found, retrieve FastWay commodity data using GU then GN functions, adding units and weight from each commodity record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when equipment load/empty status and current quantity qualifier.
Trigger Criteria:
Context: Equipment load/empty status and current quantity qualifier
Applied to: Quantity Qualifier Setting
Action: The system determines the appropriate quantity qualifier
Logic Flow:
IF Equipment load/empty status and current quantity qualifier
AND The system determines the appropriate quantity qualifier
THEN:
• If equipment status is 'E' (empty), set quantity qualifier to 'UNT'. If equipment is loaded and quantity qualifier indicates carload ('C/L', 'CLD', 'CL ', ' CL'), set quantity qualifier to 'PCS'. If quantity qualifier is blank, default to 'PCS'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol special handling data.
Trigger Criteria:
Context: EDI BOL special handling data
Applied to: Consolidated Load Indicator Retrieval
Action: The system checks for consolidated load indicators
Logic Flow:
IF EDI BOL special handling data
AND The system checks for consolidated load indicators
THEN:
• For each special handling sequence 1-98, retrieve EDI special handling data. If special handling code equals 'CNS', set consolidated indicator to 'Y'. If no CNS code found, set consolidated indicator to blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipper information from shipment root data.
Trigger Criteria:
Context: Shipper information from shipment root data
Applied to: Shipper Data Extraction
Action: The system extracts and validates shipper data
Logic Flow:
IF Shipper information from shipment root data
AND The system extracts and validates shipper data
THEN:
• Extract shipper chop, name, and address from shipment data. If shipper name is blank, add error message for invalid shipper name. If shipper address line 1 is blank, set to 'NA'. Process address line 2 with special formatting rules and set default country to 'US' if address is incomplete
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when consignee information from shipment root data.
Trigger Criteria:
Context: Consignee information from shipment root data
Applied to: Consignee Data Extraction
Action: The system extracts and validates consignee data
Logic Flow:
IF Consignee information from shipment root data
AND The system extracts and validates consignee data
THEN:
• Extract consignee name, chop, and address from shipment data. If consignee name is blank, add error message for invalid consignee name. If consignee address line 1 is blank, set to 'NA'. Process address line 2 with special formatting rules and set default country to 'CA' if address is incomplete
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state/province codes for shipper and consignee addresses.
Trigger Criteria:
Context: State/province codes for shipper and consignee addresses
Applied to: Address Validation
Action: The system validates address information
Logic Flow:
IF State/province codes for shipper and consignee addresses
AND The system validates address information
THEN:
• For each address with state/province code, search state-country table to find matching entry and set corresponding country code. If state/province code is not found in table, add error message for invalid state/province code and leave country code blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address fields that may be blank or incomplete.
Trigger Criteria:
Context: Address fields that may be blank or incomplete
Applied to: Default Address Setting
Action: The system processes address information
Logic Flow:
IF Address fields that may be blank or incomplete
AND The system processes address information
THEN:
• If address line 1 is blank, set to 'NA'. If address line 2 is blank or has only first character with remaining 18 characters blank, set first 18 characters to 'NA' and set appropriate default country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when commodity descriptions from shipment commodity data, shipment root free-form descriptions, and special handling instructions.
Trigger Criteria:
Context: Commodity descriptions from shipment commodity data, shipment root free-form descriptions, and special handling instructions
Applied to: Commodity Description Building
Action: The system builds the complete commodity description
Logic Flow:
IF Commodity descriptions from shipment commodity data, shipment root free-form descriptions, and special handling instructions
AND The system builds the complete commodity description
THEN:
• Extract descriptions from 10 commodity description fields and 2 free-form description fields. For special handling codes 'VA', 'EV', or 'VS', combine handling code with handling instruction and add to description in available special handling description slots (up to 3 slots)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when complete description data assembled from various sources. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Complete description data assembled from various sources
Applied to: Description Data Compression
Action: The system compresses the description data
Logic Flow:
IF Complete description data assembled from various sources
AND The system compresses the description data
THEN:
• Call GCCCOMP service with 45000 byte source description and 22500 byte target description lengths. Move compressed description to cargo record lading description field. Distribute compressed description data across 46 cargo data segments in customs record 53
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when potential hazardous material data from edi bol, fastway shipment, or commodity master.
Trigger Criteria:
Context: Potential hazardous material data from EDI BOL, FastWay shipment, or commodity master
Applied to: Hazardous Material Processing
Action: The system processes hazardous material information
Logic Flow:
IF Potential hazardous material data from EDI BOL, FastWay shipment, or commodity master
AND The system processes hazardous material information
THEN:
• First check EDI hazmat data for UN numbers and proper shipping names. If not found in EDI, check FastWay emergency response data for UN codes. If still not found, lookup commodity master for hazmat classification and UN numbers. Extract UN number and commodity description for dangerous goods
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when bill of lading data and potential multiple ccn requirements. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Bill of lading data and potential multiple CCN requirements
Applied to: Bill of Lading Processing
Action: The system processes bill of lading information using GCCCBOL service
Logic Flow:
IF Bill of lading data and potential multiple CCN requirements
AND The system processes bill of lading information using GCCCBOL service
THEN:
• Call GCCCBOL service with cargo record, customs records, and shipment data. If multiple CCN array is returned with data, process each CCN in the array (up to 99) and spawn GCT0111E process for each additional manifest with waybill key, waybill date, CCN, and action code 'AM'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when csa indicator status, au table data availability, and existing importer information.
Trigger Criteria:
Context: CSA indicator status, AU table data availability, and existing importer information
Applied to: Importer Data Processing
Action: The system determines importer data source and processing
Logic Flow:
IF CSA indicator status, AU table data availability, and existing importer information
AND The system determines importer data source and processing
THEN:
• If CSA indicator is on or AU table is blank or existing importer data is present, continue with current importer data. Otherwise, if AU table contains importer and business number, use AU importer data, set business number qualifier to 'M5', and turn on CSA indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when in-transit status (transit or return) and csa indicator status.
Trigger Criteria:
Context: In-transit status (transit or return) and CSA indicator status
Applied to: CSA Indicator Management
Action: The system processes CSA indicator for transit shipments
Logic Flow:
IF In-transit status (transit or return) and CSA indicator status
AND The system processes CSA indicator for transit shipments
THEN:
• If in-transit status is transit or return and CSA indicator is on, turn off CSA indicator, set AU importer not found flag, and clear importer name, business number qualifier, and business number fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when action code of 'us' or 'rt' and a description source ccn provided.
Trigger Criteria:
Context: Action code of 'US' or 'RT' and a description source CCN provided
Applied to: Description Capture from Related CCN
Action: The system captures description from the related CCN
Logic Flow:
IF Action code of 'US' or 'RT' and a description source CCN provided
AND The system captures description from the related CCN
THEN:
• Retrieve description data from specified CCN using GCCCCIO2 service. If successful, extract lading description and cargo data. For 'US' action, prepend CCN and ' MOVING IN TRANSIT THROUGH CANADA ' to description. For 'RT' action, prepend CCN and ' MOVING IN TRANSIT THROUGH US ' to description. Compress modified description and update cargo records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when origin and destination station state codes.
Trigger Criteria:
Context: Origin and destination station state codes
Applied to: Country Code Determination
Action: The system determines country codes
Logic Flow:
IF Origin and destination station state codes
AND The system determines country codes
THEN:
• For origin station state code, search state-country table to find matching entry and set origin country. For destination station state code, search state-country table to find matching entry and set destination country. If no match found, leave country code blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when notify party name and consignee country code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Notify party name and consignee country code
Applied to: Notify Party Country Setting
Action: The system processes notify party information
Logic Flow:
IF Notify party name and consignee country code
AND The system processes notify party information
THEN:
• If notify party name is not blank, copy consignee country code to notify party country code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when origin country and destination country codes.
Trigger Criteria:
Context: Origin country and destination country codes
Applied to: Application Type Determination
Action: The system determines application type
Logic Flow:
IF Origin country and destination country codes
AND The system determines application type
THEN:
• Search application type table using origin-destination country combination. If match found, set application type code and in-transit status from table entry. If CCN key starts with '6105E' and in-transit status is ocean, set broker name to 'NOT-REQ'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when action code not 'rt' or 'us' and ccn key starting with '6105e' or '6105p'. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Action code not 'RT' or 'US' and CCN key starting with '6105E' or '6105P'
Applied to: Broker Information Retrieval
Action: The system retrieves broker information
Logic Flow:
IF Action code not 'RT' or 'US' and CCN key starting with '6105E' or '6105P'
AND The system retrieves broker information
THEN:
• Call GCCCROS2 service with shipper chop, consignee chop, origin station, destination station, origin SPLC wildcard, destination road number, and commodity code. If no data found, retry with shipper chop and origin station wildcards. If still no data found, retry with commodity code wildcard
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when broker data from crossing table lookup and existing broker information.
Trigger Criteria:
Context: Broker data from crossing table lookup and existing broker information
Applied to: Broker Data Validation
Action: The system validates and applies broker data
Logic Flow:
IF Broker data from crossing table lookup and existing broker information
AND The system validates and applies broker data
THEN:
• If crossing table data found and override flag equals 'Y', apply broker data. If crossing table data found and override flag not 'Y', apply broker data only if current broker name is blank, 'UNKNOWN', or 'NOT-REQ'. If broker specifies Canadian manifest to station, update manifest to station information and validate customs codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when action code of 'rt' (return) or 'us' (transit).
Trigger Criteria:
Context: Action code of 'RT' (return) or 'US' (transit)
Applied to: Customs 2000 Detour Processing
Action: The system processes transit/return actions
Logic Flow:
IF Action code of 'RT' (return) or 'US' (transit)
AND The system processes transit/return actions
THEN:
• Set broker name to 'NOT-REQ' and clear broker name 2. For 'RT' action: set in-transit status to RETURN, application type to '33', clear destination station information, and update origin station from port lookup. For 'US' action: set in-transit status to TRANSIT and application type to '33'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when in-transit status determination and ccn key information.
Trigger Criteria:
Context: In-transit status determination and CCN key information
Applied to: In-Transit Status Setting
Action: The system sets in-transit status and manages indexes
Logic Flow:
IF In-transit status determination and CCN key information
AND The system sets in-transit status and manages indexes
THEN:
• If in-transit status is RETURN, clear destination station index, destination station index station, and error/release status index. If CCN key does not start with '6105E', set in-transit status to LOCAL and clear destination station and error/release status indexes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol shipper data or fastway shipment shipper data.
Trigger Criteria:
Context: EDI BOL shipper data or FastWay shipment shipper data
Applied to: Shipper Record Building
Action: The system builds the shipper customs record
Logic Flow:
IF EDI BOL shipper data or FastWay shipment shipper data
AND The system builds the shipper customs record
THEN:
• Set entity ID to 'SH', sequence to '0001'. If EDI shipper data found, use consignor name and shipper chop from EDI, get address from EDI address segments, get contact information from EDI contact segments. If EDI data not found, use shipper data from FastWay shipment root. Validate all segments and insert customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol consignee data or fastway shipment consignee data.
Trigger Criteria:
Context: EDI BOL consignee data or FastWay shipment consignee data
Applied to: Consignee Record Building
Action: The system builds the consignee customs record
Logic Flow:
IF EDI BOL consignee data or FastWay shipment consignee data
AND The system builds the consignee customs record
THEN:
• Set entity ID to 'CN', sequence to '0002'. If EDI consignee data found, use shipper name and consignee chop from EDI, get address from EDI address segments, get contact information from EDI contact segments. If EDI data not found, use consignee data from FastWay shipment root. Validate all segments and insert customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi transportation data or fastway shipment data for various entity types.
Trigger Criteria:
Context: EDI transportation data or FastWay shipment data for various entity types
Applied to: N1 Entity Segment Building
Action: The system builds N1 entity segments
Logic Flow:
IF EDI transportation data or FastWay shipment data for various entity types
AND The system builds N1 entity segments
THEN:
• For each entity type (SF, UC, BN, C1, N1, PF, SS, 11, MC, OO, FW, NN), search EDI transportation data for matching organization ID. If found, extract entity information, address data, and contact information. Build complete N1 segment with entity ID, name, address, and contact details. Validate segment data and insert customs record with appropriate sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact information from edi or fastway data sources.
Trigger Criteria:
Context: Contact information from EDI or FastWay data sources
Applied to: Contact Information Processing
Action: The system processes contact information for entity records
Logic Flow:
IF Contact information from EDI or FastWay data sources
AND The system processes contact information for entity records
THEN:
• Extract contact function code, contact name, communication number qualifier, and communication number. Validate communication qualifier is blank, 'FX', or 'TE'. If contact information is incomplete, generate appropriate error messages for missing required fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when completed customs record 55 data with ccn key, record type, and sequence number.
Trigger Criteria:
Context: Completed customs record 55 data with CCN key, record type, and sequence number
Applied to: Customs Record 55 Insertion
Action: The system inserts customs record 55
Logic Flow:
IF Completed customs record 55 data with CCN key, record type, and sequence number
AND The system inserts customs record 55
THEN:
• If sequence index is within maximum sequence limit, set CCN key, record type to '55', and sequence number. Move complete record to customs record array and increment sequence index. Validate all required fields before insertion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi importer data, au table importer data, or backed up importer information.
Trigger Criteria:
Context: EDI importer data, AU table importer data, or backed up importer information
Applied to: Importer Segment Building
Action: The system builds the importer segment
Logic Flow:
IF EDI importer data, AU table importer data, or backed up importer information
AND The system builds the importer segment
THEN:
• If EDI importer data found, create importer record with EDI details and manage CSA indicator based on business number qualifier. If EDI data not found but backed up importer data exists, use backed up data. If AU table data found and no other importer data, create importer record from AU table with business number qualifier 'M5' and turn on CSA indicator
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo processing request is received with an action type.
Trigger Criteria:
Context: A cargo processing request is received with an action type
Applied to: Action Type?
Action: The system evaluates the action type
Logic Flow:
IF A cargo processing request is received with an action type
AND The system evaluates the action type
THEN:
• The system routes to release processing if action is RELEASE, routes to cancel release processing if action is CANCEL-RELEASE, or continues without action for any other action type
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when container control number key is provided for cargo processing.
Trigger Criteria:
Context: A Container Control Number key is provided for cargo processing
Applied to: Manifest Data Retrieval
Action: The system attempts to retrieve the corresponding manifest data
Logic Flow:
IF A Container Control Number key is provided for cargo processing
AND The system attempts to retrieve the corresponding manifest data
THEN:
• The system loads the manifest record if found, or displays error message 'CAN NOT LOCATE MANIFEST FOR RELEASE/CANCEL RELEASE' if the manifest cannot be located
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo release request is initiated.
Trigger Criteria:
Context: A cargo release request is initiated
Applied to: Manifest Release Processing
Action: The system processes the manual release
Logic Flow:
IF A cargo release request is initiated
AND The system processes the manual release
THEN:
• The system sets message ID to GCW123, sets manual release flag to true, copies the CCN key, clears the release quantity field, and moves the release reason to comments
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cancel release operation is being processed.
Trigger Criteria:
Context: A cancel release operation is being processed
Applied to: CSA Cargo Status Management
Action: The CSA indicator is ON
Logic Flow:
IF A cancel release operation is being processed
AND The CSA indicator is ON
THEN:
• The system sets the cargo status to CSA-DLV (CSA Delivery)
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cancel release operation is being processed.
Trigger Criteria:
Context: A cancel release operation is being processed
Applied to: Release Audit Trail Creation
Action: The system creates audit trail data
Logic Flow:
IF A cancel release operation is being processed
AND The system creates audit trail data
THEN:
• The system records current machine date as unreleased date, captures ACF2 user ID as the user who performed cancel, saves original release date, clears release information, and sets the unrelease reason
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cancel release operation is being processed.
Trigger Criteria:
Context: A cancel release operation is being processed
Applied to: Master Manifest Processing
Action: The manifest is identified as a master manifest
Logic Flow:
IF A cancel release operation is being processed
AND The manifest is identified as a master manifest
THEN:
• The system calls GCCCANRL program with CCCOM and CCN key parameters for additional cancel release processing
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cancel release operation is being processed and csa indicator is off.
Trigger Criteria:
Context: A cancel release operation is being processed and CSA indicator is OFF
Applied to: Manifest Status Determination
Action: The system evaluates the original CCN and manifest type
Logic Flow:
IF A cancel release operation is being processed and CSA indicator is OFF
AND The system evaluates the original CCN and manifest type
THEN:
• The system sets status to MANUAL if original CCN is blank OR it's a follower manifest, otherwise sets status to SENT
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cancel release operation requires station information.
Trigger Criteria:
Context: A cancel release operation requires station information
Applied to: Station Information Lookup
Action: The system performs station lookup using manifest destination station name
Logic Flow:
IF A cancel release operation requires station information
AND The system performs station lookup using manifest destination station name
THEN:
• The system uses station number from lookup table if successful (return flag = '0'), otherwise uses existing destination station number and initializes station data
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when cancel release operation is processing cargo with in-transit status.
Trigger Criteria:
Context: A cancel release operation is processing cargo with in-transit status
Applied to: In-Transit Status Management
Action: The in-transit status is 'Z' OR 'E'
Logic Flow:
IF A cancel release operation is processing cargo with in-transit status
AND The in-transit status is 'Z' OR 'E'
THEN:
• The system changes the in-transit status to LOCAL
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cancel release operation has been processed.
Trigger Criteria:
Context: A cancel release operation has been processed
Applied to: Cargo Release Logging
Action: The system creates audit log entry
Logic Flow:
IF A cancel release operation has been processed
AND The system creates audit log entry
THEN:
• The system initializes logging input, sets action code to LOG-CARGO-RELEASE-REMOVED, and spawns GCT1051E message with security information, CCN key, cargo type CA-CARGO, transaction details, user ID and timestamp
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo release has been processed.
Trigger Criteria:
Context: A cargo release has been processed
Applied to: Release Notification Generation
Action: The operation is NOT an export operation
Logic Flow:
IF A cargo release has been processed
AND The operation is NOT an export operation
THEN:
• The system generates and sends GCT1231E notification message with release details
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo processing operations have been completed.
Trigger Criteria:
Context: Cargo processing operations have been completed
Applied to: Manifest Data Update
Action: The system finalizes the transaction
Logic Flow:
IF Cargo processing operations have been completed
AND The system finalizes the transaction
THEN:
• The system updates the manifest record with all changes made during processing using REPL function
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when ccn key is provided for manifest processing.
Trigger Criteria:
Context: A CCN key is provided for manifest processing
Applied to: Initialize manifest data retrieval
Action: The system initializes manifest data retrieval
Logic Flow:
IF A CCN key is provided for manifest processing
AND The system initializes manifest data retrieval
THEN:
• The system should fetch all manifest segments and set up data structures for processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when action code is provided in the input parameters.
Trigger Criteria:
Context: An action code is provided in the input parameters
Applied to: Action Code Processing
Action: The system processes the action code
Logic Flow:
IF An action code is provided in the input parameters
AND The system processes the action code
THEN:
• The system should store the action code for use in subsequent manifest processing steps
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has commodity and origin country information.
Trigger Criteria:
Context: A manifest has commodity and origin country information
Applied to: Automotive Release Check
Action: The origin country is US, CA, or blank OR the origin country is MX with automotive type code 'C' in position 2, AND the CSA indicator is off
Logic Flow:
IF A manifest has commodity and origin country information
AND The origin country is US, CA, or blank OR the origin country is MX with automotive type code 'C' in position 2, AND the CSA indicator is off
THEN:
• The system should set the automotive flag to true
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest is being processed with broker notification enabled.
Trigger Criteria:
Context: A manifest is being processed with broker notification enabled
Applied to: Broker Notification Processing
Action: The notify broker flag is set to true
Logic Flow:
IF A manifest is being processed with broker notification enabled
AND The notify broker flag is set to true
THEN:
• The system should prepare broker message with action code 'ZZZ' and spawn GCT1051E transaction
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when transaction type is specified for processing.
Trigger Criteria:
Context: A transaction type is specified for processing
Applied to: Transmission Number Generation
Action: The transaction type is 'GCT036', 'GCT0021E', 'GCT1251E', 'GCT0111E', or other
Logic Flow:
IF A transaction type is specified for processing
AND The transaction type is 'GCT036', 'GCT0021E', 'GCT1251E', 'GCT0111E', or other
THEN:
• The system should assign transmission prefix 036, 002, 125, 011, or 901 respectively
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest requires customs notification.
Trigger Criteria:
Context: A manifest requires customs notification
Applied to: Destination Address Setup
Action: The notify customs flag is true AND the manifest is not a pre-emanifest
Logic Flow:
IF A manifest requires customs notification
AND The notify customs flag is true AND the manifest is not a pre-emanifest
THEN:
• The system should set destination to 309-DESTINATION-5040, otherwise set to 309-DESTINATION
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when transmission number is generated.
Trigger Criteria:
Context: A transmission number is generated
Applied to: Root Transaction Creation
Action: The system creates the root transaction
Logic Flow:
IF A transmission number is generated
AND The system creates the root transaction
THEN:
• The system should create transaction root with transmission number, transaction set '309', and handle duplicate transmission numbers by incrementing
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when transaction is being processed.
Trigger Criteria:
Context: A transaction is being processed
Applied to: ST Segment Processing
Action: The ST segment is created
Logic Flow:
IF A transaction is being processed
AND The ST segment is created
THEN:
• The system should create ST segment with identifier 'ST', destination address, and transaction code '309'
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest is being processed with arrival and program information.
Trigger Criteria:
Context: A manifest is being processed with arrival and program information
Applied to: M10 Segment Processing
Action: The arrival indicator is 'Y' OR program name is 'GCX148'
Logic Flow:
IF A manifest is being processed with arrival and program information
AND The arrival indicator is 'Y' OR program name is 'GCX148'
THEN:
• The system should set manifest type code to 'A' for arrival, otherwise evaluate Canadian customs train ID and program name to set 'C' for customs or 'P' for pre-manifest, with special case of spaces for 5040 destination
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has an action code and border arrival information.
Trigger Criteria:
Context: A manifest has an action code and border arrival information
Applied to: M10 Segment Processing
Action: The action code is '04', '05', or '06' AND border arrival date is not blank AND manifest is not pre-emanifest
Logic Flow:
IF A manifest has an action code and border arrival information
AND The action code is '04', '05', or '06' AND border arrival date is not blank AND manifest is not pre-emanifest
THEN:
• The system should set transaction purpose code to 'CO' and set post-emanifest amendment flag to true, otherwise use the action code as transaction purpose code
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest requires eta date processing.
Trigger Criteria:
Context: A manifest requires ETA date processing
Applied to: P4 Segment Processing
Action: The destination is 309-DESTINATION
Logic Flow:
IF A manifest requires ETA date processing
AND The destination is 309-DESTINATION
THEN:
• The system should use current machine date, otherwise use border arrival ETA or calculate from waybill date plus configured days if ETA is blank
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when transaction requires line number identification.
Trigger Criteria:
Context: A transaction requires line number identification
Applied to: LX Segment Processing
Action: The LX segment is processed
Logic Flow:
IF A transaction requires line number identification
AND The LX segment is processed
THEN:
• The system should create LX segment with identifier 'LX' and assigned number '000001'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when post-emanifest amendment is required.
Trigger Criteria:
Context: A post-emanifest amendment is required
Applied to: M13 Segment Processing
Action: The M13 segment is processed
Logic Flow:
IF A post-emanifest amendment is required
AND The M13 segment is processed
THEN:
• The system should create M13 segment with SCAC 'CPRS', manifest from station name, CCN key, and amendment code '60' if blank or use existing amendment code
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has consolidated shipment information.
Trigger Criteria:
Context: A manifest has consolidated shipment information
Applied to: M11 Segment Processing
Action: The consolidated indicator is 'Y'
Logic Flow:
IF A manifest has consolidated shipment information
AND The consolidated indicator is 'Y'
THEN:
• The system should set bill of lading type code to 'Y', otherwise set to spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has weight unit qualifier information.
Trigger Criteria:
Context: A manifest has weight unit qualifier information
Applied to: M11 Segment Processing
Action: The weight unit qualifier is 'KG ' or ' KG'
Logic Flow:
IF A manifest has weight unit qualifier information
AND The weight unit qualifier is 'KG ' or ' KG'
THEN:
• The system should set weight unit code to 'K', otherwise set to 'L'
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has csa indicator information.
Trigger Criteria:
Context: A manifest has CSA indicator information
Applied to: N9 Reference Processing
Action: The CSA indicator is on
Logic Flow:
IF A manifest has CSA indicator information
AND The CSA indicator is on
THEN:
• The system should set reference number to '01', otherwise set to '00'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has in-transit status and origin country information.
Trigger Criteria:
Context: A manifest has in-transit status and origin country information
Applied to: N9 Reference Processing
Action: The in-transit status is 'T' OR (status is 'L' AND origin country is not 'CA' AND table lookup is successful) OR (status is 'E' AND origin country is not 'CA')
Logic Flow:
IF A manifest has in-transit status and origin country information
AND The in-transit status is 'T' OR (status is 'L' AND origin country is not 'CA' AND table lookup is successful) OR (status is 'E' AND origin country is not 'CA')
THEN:
• The system should create N9 segment with qualifier 'KD' and reference number 'IN-TRANSIT'
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when entity information is being processed for a specific destination type.
Trigger Criteria:
Context: Entity information is being processed for a specific destination type
Applied to:N1-N3-N4 Entity Processing
Action: The destination is 309-DESTINATION
Logic Flow:
IF Entity information is being processed for a specific destination type
AND The destination is 309-DESTINATION
THEN:
• The system should validate N1 codes against 4040 table, otherwise validate against 5040 table and require city name, country code, and postal/state codes for US/CA addresses
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest requires in-bond processing.
Trigger Criteria:
Context: A manifest requires in-bond processing
Applied to: M12 Segment Processing
Action: The M12 segment is created
Logic Flow:
IF A manifest requires in-bond processing
AND The M12 segment is created
THEN:
• The system should set in-bond type code to '61'
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when port information is being processed for different locations.
Trigger Criteria:
Context: Port information is being processed for different locations
Applied to: R4 Port Processing
Action: Multiple R4 segments are created for origin, border crossing, and destination
Logic Flow:
IF Port information is being processed for different locations
AND Multiple R4 segments are created for origin, border crossing, and destination
THEN:
• The system should assign function codes 'O'/'J' for origin (based on destination type), '3' for border crossing, '4' for destination border, and 'E'/'R' for final destination (based on destination type)
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when equipment information is being processed.
Trigger Criteria:
Context: Equipment information is being processed
Applied to: VID Equipment Processing
Action: The conveying car field is blank
Logic Flow:
IF Equipment information is being processed
AND The conveying car field is blank
THEN:
• The system should set equipment description code to 'RR' for railroad, otherwise set to 'CN' for container
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest is being processed with a specific destination type.
Trigger Criteria:
Context: A manifest is being processed with a specific destination type
Applied to: Destination Type?
Action: The destination type is 5040
Logic Flow:
IF A manifest is being processed with a specific destination type
AND The destination type is 5040
THEN:
• The system should skip M7 seal processing and proceed to N10 description processing, otherwise process M7 seals first
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has seal number information.
Trigger Criteria:
Context: A manifest has seal number information
Applied to: M7 Seal Processing
Action: Seal numbers are available in the manifest data
Logic Flow:
IF A manifest has seal number information
AND Seal numbers are available in the manifest data
THEN:
• The system should create M7 segments with up to 4 seal numbers per segment, processing up to 20 total seal numbers
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest is being processed with equipment information.
Trigger Criteria:
Context: A manifest is being processed with equipment information
Applied to: N10 Description Processing
Action: An idler car is found in the shipment
Logic Flow:
IF A manifest is being processed with equipment information
AND An idler car is found in the shipment
THEN:
• The system should set quantity to zero for the N10 segment, otherwise use the lading quantity from the manifest
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest has commodity information.
Trigger Criteria:
Context: A manifest has commodity information
Applied to: Hazardous Material?
Action: The UN number is blank OR starts with 'NA' OR commodity description danger field is blank
Logic Flow:
IF A manifest has commodity information
AND The UN number is blank OR starts with 'NA' OR commodity description danger field is blank
THEN:
• The system should skip hazardous material processing, otherwise process H1-H2 segments
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when hazardous material information is being processed.
Trigger Criteria:
Context: Hazardous material information is being processed
Applied to:H1-H2 Hazardous Material Processing
Action: The destination is 309-DESTINATION
Logic Flow:
IF Hazardous material information is being processed
AND The destination is 309-DESTINATION
THEN:
• The system should use the full UN number, otherwise use positions 3-4 of the UN number
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest is classified as an idler shipment.
Trigger Criteria:
Context: A manifest is classified as an idler shipment
Applied to: Idler Shipment?
Action: The manifest is an idler shipment AND customs notification is required
Logic Flow:
IF A manifest is classified as an idler shipment
AND The manifest is an idler shipment AND customs notification is required
THEN:
• The system should process additional idler cars in the consist
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when idler shipment requires processing of follower cars.
Trigger Criteria:
Context: An idler shipment requires processing of follower cars
Applied to: Idler Car Processing
Action: Additional idler cars are found in the consist
Logic Flow:
IF An idler shipment requires processing of follower cars
AND Additional idler cars are found in the consist
THEN:
• The system should process VID segments for each idler car and include N10 andH1-H2 segments based on destination type and hazardous material presence
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when all required segments have been processed.
Trigger Criteria:
Context: All required segments have been processed
Applied to: Transaction Completion
Action: The transaction completion phase is reached
Logic Flow:
IF All required segments have been processed
AND The transaction completion phase is reached
THEN:
• The system should finalize the EDI transaction structure
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when transaction has been completed.
Trigger Criteria:
Context: A transaction has been completed
Applied to: Transaction Completion Notification
Action: The transaction completion notification is triggered
Logic Flow:
IF A transaction has been completed
AND The transaction completion notification is triggered
THEN:
• The system should spawn GCT1211E transaction with the transmission number
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when program is executing and the first-time processing flag is set.
Trigger Criteria:
Context: The program is executing and the first-time processing flag is set
Applied to: Process Merlin Configuration
Action: The system checks if this is the first OTI processing
Logic Flow:
IF The program is executing and the first-time processing flag is set
AND The system checks if this is the first OTI processing
THEN:
• The system processes Merlin configuration, validates Merlin IDs, and initializes reference data, then sets the flag to indicate subsequent processing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when four merlin user ids are retrieved from the admin table (dc-p-merlin-1 through 4).
Trigger Criteria:
Context: Four Merlin user IDs are retrieved from the admin table (DC-P-MERLIN-1 through 4)
Applied to: Control Merlin ID Validation
Action: Each Merlin ID is validated against the EMTZ segment
Logic Flow:
IF Four Merlin user IDs are retrieved from the admin table (DC-P-MERLIN-1 through 4)
AND Each Merlin ID is validated against the EMTZ segment
THEN:
• IfDC-P-MERLIN-1 is invalid, use default 'OM01247' and set not-found flag; for other invalid IDs (2,3,4), fall back to DC-P-MERLIN-1 value
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when reference number and transaction type indicator are provided.
Trigger Criteria:
Context: A reference number and transaction type indicator are provided
Applied to: Initialize Reference Data
Action: The system initializes reference data and processing flags
Logic Flow:
IF A reference number and transaction type indicator are provided
AND The system initializes reference data and processing flags
THEN:
• Set message label to 'TRAIN REPORT NUMBER :' for train transactions, 'CARGO CONTROL NUMBER :' for cargo transactions, or 'REFERENCE NUMBER :' for other types
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when incoming message with a specific type indicator.
Trigger Criteria:
Context: An incoming message with a specific type indicator
Applied to: Message Type?
Action: The system evaluates the message type
Logic Flow:
IF An incoming message with a specific type indicator
AND The system evaluates the message type
THEN:
• Route to acknowledgment processing for ACK messages, or route to error processing for ERROR and WARNING messages
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when acknowledgment message is received.
Trigger Criteria:
Context: An acknowledgment message is received
Applied to: Process Acknowledgment Messages
Action: The system processes the acknowledgment
Logic Flow:
IF An acknowledgment message is received
AND The system processes the acknowledgment
THEN:
• Set MST processing flag to false and route to train or cargo acknowledgment processing based on transaction type
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train acknowledgment message with a reference number.
Trigger Criteria:
Context: A train acknowledgment message with a reference number
Applied to: Process Train Acknowledgment
Action: The system looks up the train report
Logic Flow:
IF A train acknowledgment message with a reference number
AND The system looks up the train report
THEN:
• If train not found, set error flag and add error message; if found, clear security errors for deleted records, set ACK status with timestamp, and send AEI notification if flag is 'Y'
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo acknowledgment message with a control number.
Trigger Criteria:
Context: A cargo acknowledgment message with a control number
Applied to: Process Cargo Acknowledgment
Action: The system looks up the cargo control record
Logic Flow:
IF A cargo acknowledgment message with a control number
AND The system looks up the cargo control record
THEN:
• If cargo not found, add error message and set DCP interface error flag; if found, set status to 'ACK' when current status is 'SENT', determine processing terminal, and process arrival if indicator is 'Y'
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when error or warning message is received.
Trigger Criteria:
Context: An error or warning message is received
Applied to: Process Error Messages
Action: The system processes the error message
Logic Flow:
IF An error or warning message is received
AND The system processes the error message
THEN:
• Check if message is test data first; if not test data, route to train or cargo error processing based on transaction type
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train error message with a reference number.
Trigger Criteria:
Context: A train error message with a reference number
Applied to: Process Train Errors
Action: The system processes the train error
Logic Flow:
IF A train error message with a reference number
AND The system processes the train error
THEN:
• If train not found, add appropriate error message (V67 warning or general train error); if found, determine processing terminal and handle V67 warnings specially
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo error message with a control number.
Trigger Criteria:
Context: A cargo error message with a control number
Applied to: Process Cargo Errors
Action: The system processes the cargo error
Logic Flow:
IF A cargo error message with a control number
AND The system processes the cargo error
THEN:
• If cargo not found and message is V67, process as train error; if cargo not found and not V67, add cargo error message; if found, save current status and determine processing terminal
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when error code from the message.
Trigger Criteria:
Context: An error code from the message
Applied to: Retrieve Error Message Text
Action: The system looks up the error message text in the MS table
Logic Flow:
IF An error code from the message
AND The system looks up the error message text in the MS table
THEN:
• If message found, use English text from table; if not found, use free-form message text and add 'message not found' error
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when error message with error type and a found train or cargo record.
Trigger Criteria:
Context: An error message with error type and a found train or cargo record
Applied to: Update Train/Cargo Status
Action: The system updates the record status
Logic Flow:
IF An error message with error type and a found train or cargo record
AND The system updates the record status
THEN:
• If error type is 'X', set status to 'WARNING' or 'INFO' and exit; for train records not deleted, set error resend flag and status to 'REJECT' for type 'R' or 'ERROR' otherwise; for cargo records, set status to 'REJECT' for type 'R' or 'ERROR' otherwise
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when message with a reference number.
Trigger Criteria:
Context: A message with a reference number
Applied to: Test Message?
Action: The system checks if the message is test data
Logic Flow:
IF A message with a reference number
AND The system checks if the message is test data
THEN:
• Identify as train test if reference equals '6105ETESTTRAIN00000000000', or cargo test if reference starts with '6105ECPRSTESTCARGO' or '6105ETESTCARGO'
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when message identified as test data.
Trigger Criteria:
Context: A message identified as test data
Applied to: Handle Test Messages
Action: The system processes the test message
Logic Flow:
IF A message identified as test data
AND The system processes the test message
THEN:
• Set appropriate test flags (TEST-TRAINorTEST-CARGO) and proceed to special check processing, bypassing normal error message handling
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train record with aei send flag set to 'y' and a status change.
Trigger Criteria:
Context: A train record with AEI send flag set to 'Y' and a status change
Applied to: Send AEI Messages
Action: The system processes the train acknowledgment or status update
Logic Flow:
IF A train record with AEI send flag set to 'Y' and a status change
AND The system processes the train acknowledgment or status update
THEN:
• Look up email addresses for the port code, send notification with train ID and status, and fall back to default recipients if lookup fails
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when messages need to be sent to users.
Trigger Criteria:
Context: Messages need to be sent to users
Applied to: Process Message Routing
Action: The system processes message routing
Logic Flow:
IF Messages need to be sent to users
AND The system processes message routing
THEN:
• Get supervisor Merlin ID from terminal table, validate DC-P Merlin IDs, and prepare for sending messages to MST system and Merlin users
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when processing terminal identifier.
Trigger Criteria:
Context: A processing terminal identifier
Applied to: Get Supervisor Merlin ID
Action: The system looks up supervisor information in the LT table
Logic Flow:
IF A processing terminal identifier
AND The system looks up supervisor information in the LT table
THEN:
• If table entry found, use alternate terminal if specified and retrieve supervisor Merlin ID; if supervisor ID invalid, add error message and clear user Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id needs validation for message sending.
Trigger Criteria:
Context:DC-P Merlin ID needs validation for message sending
Applied to: Validate Merlin User IDs
Action: The system validates the Merlin user ID
Logic Flow:
IFDC-P Merlin ID needs validation for message sending
AND The system validates the Merlin user ID
THEN:
• IfDC-P1 ID not found, add error message indicating invalid DC&P Merlin userid
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when error message that needs to be sent to users.
Trigger Criteria:
Context: An error message that needs to be sent to users
Applied to: Train Error?
Action: The system determines the routing destination
Logic Flow:
IF An error message that needs to be sent to users
AND The system determines the routing destination
THEN:
• Route to train message sending if train error flag is set, otherwise route to cargo message sending
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo-related message and validated user merlin id.
Trigger Criteria:
Context: A cargo-related message and validated user Merlin ID
Applied to: Send Cargo Messages to Merlin
Action: The system sends the message to Merlin users
Logic Flow:
IF A cargo-related message and validated user Merlin ID
AND The system sends the message to Merlin users
THEN:
• Send message to user Merlin ID; if sending fails, fall back to sending to default recipient 'OM01247'
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train-related message and validated user merlin id. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A train-related message and validated user Merlin ID
Applied to: Send Train Messages to Merlin
Action: The system sends the message to Merlin users
Logic Flow:
IF A train-related message and validated user Merlin ID
AND The system sends the message to Merlin users
THEN:
• Send message to user Merlin ID with fallback to 'OM01247' if failed, and additionally send a copy to 'CAERROR' file with 'OM01247' as recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when messages ready for distribution and mst processing flag is enabled. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Messages ready for distribution and MST processing flag is enabled
Applied to: Send MST Messages
Action: The system sends messages to MST
Logic Flow:
IF Messages ready for distribution and MST processing flag is enabled
AND The system sends messages to MST
THEN:
• Send header message first, then send each message entry using terminal call letters, and finally send wrap-up message
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo record with arrival indicator set to 'y'.
Trigger Criteria:
Context: A cargo record with arrival indicator set to 'Y'
Applied to: Process Arrival Notifications
Action: The system processes the cargo acknowledgment
Logic Flow:
IF A cargo record with arrival indicator set to 'Y'
AND The system processes the cargo acknowledgment
THEN:
• Create arrival notification message with cargo control number, set action code to 'CAA', and send to GCT1481E transaction
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo record with status change and iron highway configuration. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo record with status change and Iron Highway configuration
Applied to: Update Iron Highway Records
Action: The system updates the cargo record and status differs from saved status
Logic Flow:
IF A cargo record with status change and Iron Highway configuration
AND The system updates the cargo record and status differs from saved status
THEN:
• Look up Iron Highway configuration, populate record with cargo details including status, car ID, waybill, and shipment ID from N9 segments, then call Iron Highway update program
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when processed transaction with current status and reference number.
Trigger Criteria:
Context: A processed transaction with current status and reference number
Applied to: Log Transaction Activities
Action: The system logs the transaction activity
Logic Flow:
IF A processed transaction with current status and reference number
AND The system logs the transaction activity
THEN:
• Create log message with current status, include transaction number for ACK status, set appropriate cargo or train indicator, and send to GCT1051E logging transaction
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when test message (train or cargo) being processed.
Trigger Criteria:
Context: A test message (train or cargo) being processed
Applied to: Process Special Checks
Action: The system performs special check processing
Logic Flow:
IF A test message (train or cargo) being processed
AND The system performs special check processing
THEN:
• Look up T2 table entry, update 358-ACK timestamp for train test messages or309-ACK timestamp for cargo test messages with current machine date, century, and time
R-GCCCANRL-cbl-00013 (+20)File: GCCCANRL.cblFile: GCCCBOL.cblFile: GCX122A.cblBusiness Rule: Initialize Program
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when program is currently executing with an active program name.
Trigger Criteria:
Context: A program is currently executing with an active program name
Applied to: Save Current Program Name
Action: The system needs to switch to a new module for processing
Logic Flow:
IF A program is currently executing with an active program name
AND The system needs to switch to a new module for processing
THEN:
• The current program name must be saved for later restoration
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when module name is defined for the current processing operation.
Trigger Criteria:
Context: A module name is defined for the current processing operation
Applied to: Set Module Name as Active Program
Action: The system begins processing operations
Logic Flow:
IF A module name is defined for the current processing operation
AND The system begins processing operations
THEN:
• The module name must be set as the active program identifier
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when ccn key is provided as input for manifest processing.
Trigger Criteria:
Context: A CCN key is provided as input for manifest processing
Applied to: Set Up CCN Key for Search
Action: The system prepares to search for follower manifests
Logic Flow:
IF A CCN key is provided as input for manifest processing
AND The system prepares to search for follower manifests
THEN:
• The CCN key must be configured in the search parameters
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when ccn key is configured for searching follower manifests.
Trigger Criteria:
Context: The CCN key is configured for searching follower manifests
Applied to: Position to First Follower Manifest
Action: The system initiates the search for follower manifests
Logic Flow:
IF The CCN key is configured for searching follower manifests
AND The system initiates the search for follower manifests
THEN:
• The system must attempt to retrieve the first follower manifest record
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system has attempted to retrieve the first follower manifest.
Trigger Criteria:
Context: The system has attempted to retrieve the first follower manifest
Applied to: First Follower Found?
Action: The database search operation completes
Logic Flow:
IF The system has attempted to retrieve the first follower manifest
AND The database search operation completes
THEN:
• If a follower manifest is found, the processing flag must be set to continue, otherwise it must be set to stop
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when follower manifest record has been successfully retrieved.
Trigger Criteria:
Context: A follower manifest record has been successfully retrieved
Applied to: Set Processing Flag to Continue
Action: The system evaluates the search results
Logic Flow:
IF A follower manifest record has been successfully retrieved
AND The system evaluates the search results
THEN:
• The processing flag must be set to indicate continuation of processing
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when no follower manifest records are found in the database search.
Trigger Criteria:
Context: No follower manifest records are found in the database search
Applied to: Set Processing Flag to Stop
Action: The system evaluates the search results
Logic Flow:
IF No follower manifest records are found in the database search
AND The system evaluates the search results
THEN:
• The processing flag must be set to indicate termination of processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo report processing program is initiated.
Trigger Criteria:
Context: The cargo report processing program is initiated
Applied to: Get System Date and Time
Action: The system begins execution
Logic Flow:
IF The cargo report processing program is initiated
AND The system begins execution
THEN:
• The current system date and time are captured and stored for processing audit trail
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo report processing module is about to be executed.
Trigger Criteria:
Context: A cargo report processing module is about to be executed
Applied to: Save Current Program Name
Action: The module processing begins
Logic Flow:
IF A cargo report processing module is about to be executed
AND The module processing begins
THEN:
• The current program name from the common control area is saved to a temporary storage location
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo report processing module needs to establish its identity.
Trigger Criteria:
Context: The cargo report processing module needs to establish its identity
Applied to: Set Module Name to Current Program
Action: Module processing context is being set up
Logic Flow:
IF The cargo report processing module needs to establish its identity
AND Module processing context is being set up
THEN:
• The module name is assigned to the program identifier in the common control area
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo report processing is starting. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Cargo report processing is starting
Applied to: Clear Description Fields
Action: Working storage areas need to be prepared for description data
Logic Flow:
IF Cargo report processing is starting
AND Working storage areas need to be prepared for description data
THEN:
• The primary description field WS-DESC-1 is cleared to spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when description array processing is about to begin. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description array processing is about to begin
Applied to: Reset Array Indexes
Action: Array indexes need to be initialized
Logic Flow:
IF Description array processing is about to begin
AND Array indexes need to be initialized
THEN:
• The description array index WS-INDEXEB is set to position 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when multi-bill cargo processing is about to begin.
Trigger Criteria:
Context: Multi-bill cargo processing is about to begin
Applied to: Clear CCN Array Table
Action: CCN array storage needs to be prepared
Logic Flow:
IF Multi-bill cargo processing is about to begin
AND CCN array storage needs to be prepared
THEN:
• The GCWCBOL CCN array table is cleared to spaces
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when program is executing with an active program name in the control communication block.
Trigger Criteria:
Context: A program is executing with an active program name in the control communication block
Applied to: Save Current Program Name
Action: The system needs to execute a specific module
Logic Flow:
IF A program is executing with an active program name in the control communication block
AND The system needs to execute a specific module
THEN:
• The current program name must be saved before setting the new module name and restored after module completion
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when module needs to be executed within the system.
Trigger Criteria:
Context: A module needs to be executed within the system
Applied to: Set Module Name in Control Block
Action: The processing context is being established
Logic Flow:
IF A module needs to be executed within the system
AND The processing context is being established
THEN:
• The module name must be assigned to the program field in the control communication block
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is initializing for message processing.
Trigger Criteria:
Context: The system is initializing for message processing
Applied to: Initialize Test Message Indicators
Action: Test message indicators need to be reset
Logic Flow:
IF The system is initializing for message processing
AND Test message indicators need to be reset
THEN:
• Both train test indicator and cargo test indicator must be cleared to spaces
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when system is preparing for message processing operations.
Trigger Criteria:
Context: The system is preparing for message processing operations
Applied to: Initialize Communication Areas
Action: Communication areas need to be initialized
Logic Flow:
IF The system is preparing for message processing operations
AND Communication areas need to be initialized
THEN:
• The system communication block (ISCOM) must be initialized to default values
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is checking processing state.
Trigger Criteria:
Context: The system is checking processing state
Applied to: First Time Processing?
Action: Determining if Merlin setup is needed
Logic Flow:
IF The system is checking processing state
AND Determining if Merlin setup is needed
THEN:
• If the first-time processing switch is true, Merlin configuration must be processed, otherwise skip to completion
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when this is the first time the system is processing messages.
Trigger Criteria:
Context: This is the first time the system is processing messages
Applied to: Process Merlin Configuration Setup
Action: Merlin configuration setup is required
Logic Flow:
IF This is the first time the system is processing messages
AND Merlin configuration setup is required
THEN:
• The system must execute Merlin processing routine to retrieve and validate user configurations
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when first-time merlin configuration setup has been completed.
Trigger Criteria:
Context: First-time Merlin configuration setup has been completed
Applied to: Set Processing Flag to Not First Time
Action: The processing state needs to be updated
Logic Flow:
IF First-time Merlin configuration setup has been completed
AND The processing state needs to be updated
THEN:
• The first-time processing switch must be set to false to indicate setup is complete
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when system initialization is being completed.
Trigger Criteria:
Context: System initialization is being completed
Applied to: Complete Initialization
Action: SMST processing needs to be enabled
Logic Flow:
IF System initialization is being completed
AND SMST processing needs to be enabled
THEN:
• The SMST-only first record flag must be set to 'Y' to indicate first record processing
R-GCCCANRL-cbl-00020 (+4)File: GCCCANRL.cblBusiness Rule: Get First Follower Manifest
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when lead manifest ccn number is provided as input.
Trigger Criteria:
Context: A lead manifest CCN number is provided as input
Applied to: Set Search Key to Lead Manifest CCN Number
Action: The system initializes the follower manifest search process
Logic Flow:
IF A lead manifest CCN number is provided as input
AND The system initializes the follower manifest search process
THEN:
• The search key is set to the lead manifest CCN number for database query
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when search key is set to the lead manifest ccn number.
Trigger Criteria:
Context: The search key is set to the lead manifest CCN number
Applied to: Execute Database Query for First Follower Manifest
Action: The system executes the database query for the first follower manifest
Logic Flow:
IF The search key is set to the lead manifest CCN number
AND The system executes the database query for the first follower manifest
THEN:
• The database is queried using GU operation with the CCN key and status is returned
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when database query for follower manifest has been executed.
Trigger Criteria:
Context: A database query for follower manifest has been executed
Applied to: Follower Manifest Found?
Action: The system checks the query status code
Logic Flow:
IF A database query for follower manifest has been executed
AND The system checks the query status code
THEN:
• If status code is spaces then manifest is found, otherwise no manifest is available
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when follower manifest record was successfully found in the database.
Trigger Criteria:
Context: A follower manifest record was successfully found in the database
Applied to: More Manifests Available for Processing
Action: The system processes the successful query result
Logic Flow:
IF A follower manifest record was successfully found in the database
AND The system processes the successful query result
THEN:
• The processing flag is set to indicate more manifests are available for processing
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when no follower manifest record was found in the database.
Trigger Criteria:
Context: No follower manifest record was found in the database
Applied to: No Manifests Available for Processing
Action: The system processes the unsuccessful query result
Logic Flow:
IF No follower manifest record was found in the database
AND The system processes the unsuccessful query result
THEN:
• The processing flag is set to indicate no manifests are available for processing
R-GCCCANRL-cbl-00025 (+12)File: GCCCANRL.cblBusiness Rule: Process Each Follower Manifest
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when follower manifest record is being processed.
Trigger Criteria:
Context: A follower manifest record is being processed
Applied to: Is Current Manifest Different from Lead Manifest?
Action: The current manifest CCN key equals the input lead manifest CCN key
Logic Flow:
IF A follower manifest record is being processed
AND The current manifest CCN key equals the input lead manifest CCN key
THEN:
• Skip all cancel release processing for this manifest and move to the next follower manifest
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when follower manifest record is being processed.
Trigger Criteria:
Context: A follower manifest record is being processed
Applied to: Is Current Manifest Different from Lead Manifest?
Action: The current manifest CCN key is not equal to the input lead manifest CCN key
Logic Flow:
IF A follower manifest record is being processed
AND The current manifest CCN key is not equal to the input lead manifest CCN key
THEN:
• Proceed with getting manifest for hold and update, setting cancel release data, logging activity, and updating the manifest record
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when follower manifest needs to be processed for cancel release.
Trigger Criteria:
Context: A follower manifest needs to be processed for cancel release
Applied to: Get Manifest for Hold and Update
Action: The manifest CCN key is different from the lead manifest
Logic Flow:
IF A follower manifest needs to be processed for cancel release
AND The manifest CCN key is different from the lead manifest
THEN:
• Retrieve the manifest record using GHU (Get Hold for Update) operation with the manifest CCN key
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for cancel release.
Trigger Criteria:
Context: A manifest is being processed for cancel release
Applied to: Set Cancel Release Data
Action: The CSA indicator is on
Logic Flow:
IF A manifest is being processed for cancel release
AND The CSA indicator is on
THEN:
• Set the manifest status to CSA delivery
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for cancel release.
Trigger Criteria:
Context: A manifest is being processed for cancel release
Applied to: Set Cancel Release Data
Action: The CSA indicator is not on
Logic Flow:
IF A manifest is being processed for cancel release
AND The CSA indicator is not on
THEN:
• Set the manifest status to manual
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for cancel release.
Trigger Criteria:
Context: A manifest is being processed for cancel release
Applied to: Set Cancel Release Data
Action: Station information lookup is performed using the manifest destination station name
Logic Flow:
IF A manifest is being processed for cancel release
AND Station information lookup is performed using the manifest destination station name
THEN:
• If lookup is successful, use the station number from the lookup result; otherwise, use the existing destination station number
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for cancel release.
Trigger Criteria:
Context: A manifest is being processed for cancel release
Applied to: Set Cancel Release Data
Action: The in-transit status is Z or E
Logic Flow:
IF A manifest is being processed for cancel release
AND The in-transit status is Z or E
THEN:
• Change the in-transit status to L
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for cancel release.
Trigger Criteria:
Context: A manifest is being processed for cancel release
Applied to: Set Cancel Release Data
Action: The in-transit status is R or T
Logic Flow:
IF A manifest is being processed for cancel release
AND The in-transit status is R or T
THEN:
• Clear the destination station number for index
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for cancel release.
Trigger Criteria:
Context: A manifest is being processed for cancel release
Applied to: Set Cancel Release Data
Action: The current status is not DELETED
Logic Flow:
IF A manifest is being processed for cancel release
AND The current status is not DELETED
THEN:
• Clear the delete status
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when manifest release is being canceled.
Trigger Criteria:
Context: A manifest release is being canceled
Applied to: Set Cancel Release Data
Action: Cancel release data is being set
Logic Flow:
IF A manifest release is being canceled
AND Cancel release data is being set
THEN:
• Record the current machine date as unrelease date, current user ID as unreleasing user, preserve original release date, clear release information, and set the unrelease reason
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when manifest release has been canceled.
Trigger Criteria:
Context: A manifest release has been canceled
Applied to: Log Cancel Release Activity
Action: Cancel release processing is complete
Logic Flow:
IF A manifest release has been canceled
AND Cancel release processing is complete
THEN:
• Create audit log entry with security information, CCN key, transaction details, user ID, timestamp, and cargo release removal action code, then write the log message to the system
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when cancel release data has been set and logged.
Trigger Criteria:
Context: Cancel release data has been set and logged
Applied to: Update Manifest Record
Action: All cancel release processing is complete for a manifest
Logic Flow:
IF Cancel release data has been set and logged
AND All cancel release processing is complete for a manifest
THEN:
• Update the manifest record using REPL operation to save all changes
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when current follower manifest processing is complete.
Trigger Criteria:
Context: Current follower manifest processing is complete
Applied to: Get Next Follower Manifest
Action: Getting the next follower manifest
Logic Flow:
IF Current follower manifest processing is complete
AND Getting the next follower manifest
THEN:
• Retrieve next follower record andif successful, verify the master manifest CCN matches the input CCN key to continue processing, otherwise stop processing
R-GCCCANRL-cbl-00038File: GCCCANRL.cblBusiness Rule: Validate Manifest for Processing
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest record has been retrieved for cancel release processing.
Trigger Criteria:
Context: A manifest record has been retrieved for cancel release processing
Applied to: Check if the retrieved manifest is not the lead manifest to avoid processing it
Action: The system compares the current manifest CCN key with the input lead manifest CCN key
Logic Flow:
IF A manifest record has been retrieved for cancel release processing
AND The system compares the current manifest CCN key with the input lead manifest CCN key
THEN:
• If the CCN keys are the same, skip processing as this is the lead manifest; if the CCN keys are different, proceed with cancel release processing for the follower manifest
R-GCCCANRL-cbl-00039 (+2)File: GCCCANRL.cblBusiness Rule: Get Manifest for Hold and Update
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest retrieval operation is about to be performed.
Trigger Criteria:
Context: A manifest retrieval operation is about to be performed
Applied to: Clear Accept Status
Action: The system prepares to get a manifest record with hold for update
Logic Flow:
IF A manifest retrieval operation is about to be performed
AND The system prepares to get a manifest record with hold for update
THEN:
• The system accept status must be cleared to ensure clean retrieval operation
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when specific manifest record needs to be retrieved for update.
Trigger Criteria:
Context: A specific manifest record needs to be retrieved for update
Applied to: Set Manifest CCN Key for Retrieval
Action: The system prepares the retrieval parameters
Logic Flow:
IF A specific manifest record needs to be retrieved for update
AND The system prepares the retrieval parameters
THEN:
• The manifest CCN key must be set to the target record's CCN key to ensure correct record identification
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest ccn key has been set for a specific record.
Trigger Criteria:
Context: The manifest CCN key has been set for a specific record
Applied to: Execute Get Hold for Update Command
Action: The system needs to retrieve and lock the manifest record for update
Logic Flow:
IF The manifest CCN key has been set for a specific record
AND The system needs to retrieve and lock the manifest record for update
THEN:
• A get hold update command must be executed to retrieve the record with exclusive lock
R-GCCCANRL-cbl-00042File: GCCCANRL.cblBusiness Rule: Set Manifest Status Based on CSA Indicator
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo manifest record is being processed for cancel release.
Trigger Criteria:
Context: A cargo manifest record is being processed for cancel release
Applied to: Set Manifest Status Based on CSA Indicator - Update manifest status to CSA-DLV if CSA indicator is on, otherwise set to MANUAL
Action: The system evaluates the CSA indicator status
Logic Flow:
IF A cargo manifest record is being processed for cancel release
AND The system evaluates the CSA indicator status
THEN:
• If CSA indicator is ON, set manifest status to CSA-DLV, otherwise set manifest status to MANUAL
R-GCCCANRL-cbl-00043 (+4)File: GCCCANRL.cblBusiness Rule: Update Release Information
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo release is being canceled.
Trigger Criteria:
Context: A cargo release is being canceled
Applied to: Capture Current Date for Unrelease & Clear All Release Information
Action: The system processes the cancel release request
Logic Flow:
IF A cargo release is being canceled
AND The system processes the cancel release request
THEN:
• The current machine date is captured and stored as the unrelease date
• All release information fields are cleared and set to spaces
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo release is being canceled by a user.
Trigger Criteria:
Context: A cargo release is being canceled by a user
Applied to: Capture Current User ID
Action: The system processes the cancel release request
Logic Flow:
IF A cargo release is being canceled by a user
AND The system processes the cancel release request
THEN:
• The current user's ACF2 user ID is captured and stored as the unreleasing user
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo release with an existing release date is being canceled.
Trigger Criteria:
Context: A cargo release with an existing release date is being canceled
Applied to: Save Original Release Date
Action: The system processes the cancel release request
Logic Flow:
IF A cargo release with an existing release date is being canceled
AND The system processes the cancel release request
THEN:
• The original release date is saved before any release information is cleared
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo release is being canceled with a specific unrelease reason.
Trigger Criteria:
Context: A cargo release is being canceled with a specific unrelease reason
Applied to: Set Unrelease Reason with Details
Action: The system processes the cancel release request
Logic Flow:
IF A cargo release is being canceled with a specific unrelease reason
AND The system processes the cancel release request
THEN:
• The unrelease reason is recorded in the release reason field
R-GCCCANRL-cbl-00048 (+8)File: GCCCANRL.cblBusiness Rule: Lookup Station Information
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when station lookup operation is being initiated.
Trigger Criteria:
Context: A station lookup operation is being initiated
Applied to: Initialize Table Access Parameters
Action: The system prepares to access the master control table
Logic Flow:
IF A station lookup operation is being initiated
AND The system prepares to access the master control table
THEN:
• All table key values and control flags are cleared to spaces to ensure clean lookup parameters
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when station lookup operation requires access to the master control table.
Trigger Criteria:
Context: A station lookup operation requires access to the master control table
Applied to: Set Table ID to 'MC' for Master Control
Action: The system sets up table access parameters
Logic Flow:
IF A station lookup operation requires access to the master control table
AND The system sets up table access parameters
THEN:
• The table identifier is set to 'MC' to specify Master Control table access
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest record contains a destination station name.
Trigger Criteria:
Context: A manifest record contains a destination station name
Applied to: Use Manifest Destination Station Name as Key
Action: The system performs a station lookup
Logic Flow:
IF A manifest record contains a destination station name
AND The system performs a station lookup
THEN:
• The manifest destination station name is used as the search key for the master control table lookup
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when all lookup parameters are properly initialized with table id 'mc' and station name key. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All lookup parameters are properly initialized with table ID 'MC' and station name key
Applied to: Call Master Control Table Service
Action: The system needs to retrieve station information
Logic Flow:
IF All lookup parameters are properly initialized with table ID 'MC' and station name key
AND The system needs to retrieve station information
THEN:
• The GCCTBIO service is called with GU function code to perform the table lookup
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when master control table lookup has been performed.
Trigger Criteria:
Context: A master control table lookup has been performed
Applied to: Station Found Successfully?
Action: The system checks the lookup result
Logic Flow:
IF A master control table lookup has been performed
AND The system checks the lookup result
THEN:
• If the return flag equals '0', the station was found successfully, otherwise the station was not found
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when station record was successfully retrieved from the master control table.
Trigger Criteria:
Context: A station record was successfully retrieved from the master control table
Applied to: Extract Station Number from Retrieved Record
Action: The system processes the retrieved station information
Logic Flow:
IF A station record was successfully retrieved from the master control table
AND The system processes the retrieved station information
THEN:
• The station number is extracted from the master control segment and moved to the table segment
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when station number was successfully retrieved from the master control table lookup.
Trigger Criteria:
Context: A station number was successfully retrieved from the master control table lookup
Applied to: Set Destination Station Number for Index
Action: The system updates the destination station information
Logic Flow:
IF A station number was successfully retrieved from the master control table lookup
AND The system updates the destination station information
THEN:
• The retrieved station number is assigned to the destination station number for index field
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when station lookup operation failed to find the station in the master control table.
Trigger Criteria:
Context: A station lookup operation failed to find the station in the master control table
Applied to: Use Current Manifest Station Number
Action: The system handles the lookup failure
Logic Flow:
IF A station lookup operation failed to find the station in the master control table
AND The system handles the lookup failure
THEN:
• The master control segment is initialized to empty values
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when station lookup failed and the master control segment was initialized.
Trigger Criteria:
Context: A station lookup failed and the master control segment was initialized
Applied to: Set Destination Station Number for Index
Action: The system needs to set the destination station number for indexing
Logic Flow:
IF A station lookup failed and the master control segment was initialized
AND The system needs to set the destination station number for indexing
THEN:
• The existing destination station number from the manifest is used for the index field
R-GCCCANRL-cbl-00057File: GCCCANRL.cblBusiness Rule: Update In
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo manifest record is being processed for cancel release.
Trigger Criteria:
Context: A cargo manifest record is being processed for cancel release
Applied to: Update In-Transit Status - Change in-transit status from Z or E to L (Local) if applicable
Action: The current in-transit status is Z or E
Logic Flow:
IF A cargo manifest record is being processed for cancel release
AND The current in-transit status is Z or E
THEN:
• The in-transit status is changed to L (Local)
R-GCCCANRL-cbl-00058File: GCCCANRL.cblBusiness Rule: Handle Special Transit Cases
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest record is being processed for cancel release.
Trigger Criteria:
Context: A manifest record is being processed for cancel release
Applied to: Handle Special Transit Cases - Clear destination station number for returning (R) or transit (T) status manifests
Action: The manifest in-transit status is 'R' (Returning) or 'T' (Transit)
Logic Flow:
IF A manifest record is being processed for cancel release
AND The manifest in-transit status is 'R' (Returning) or 'T' (Transit)
THEN:
• The destination station number for index should be cleared to spaces
R-GCCCANRL-cbl-00059File: GCCCANRL.cblBusiness Rule: Set Manual Change Flag
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo manifest is being processed for cancellation or release changes.
Trigger Criteria:
Context: A cargo manifest is being processed for cancellation or release changes
Applied to: Set Manual Change Flag to TRUE
Action: The system is setting cancel release data for the manifest
Logic Flow:
IF A cargo manifest is being processed for cancellation or release changes
AND The system is setting cancel release data for the manifest
THEN:
• The manual change flag (309-MANUAL-CHANGE) must be set to TRUE to indicate manual intervention
R-GCCCANRL-cbl-00060File: GCCCANRL.cblBusiness Rule: Clear Delete Status
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest record is being processed for cancel release.
Trigger Criteria:
Context: A manifest record is being processed for cancel release
Applied to: Clear Delete Status Field
Action: The manifest current status is not equal to 'DELETED'
Logic Flow:
IF A manifest record is being processed for cancel release
AND The manifest current status is not equal to 'DELETED'
THEN:
• The delete status field should be cleared to spaces
Business Justification: Establishes the required business protocol to be followed when cancel release activity needs to be logged.
Trigger Criteria:
Context: A cancel release activity needs to be logged
Applied to: Set Security Information
Action: The logging process begins
Logic Flow:
IF A cancel release activity needs to be logged
AND The logging process begins
THEN:
• The security byte should be set to high values
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest with a ccn key exists.
Trigger Criteria:
Context: A manifest with a CCN key exists
Applied to: Record Manifest CCN Number
Action: Creating an audit log entry
Logic Flow:
IF A manifest with a CCN key exists
AND Creating an audit log entry
THEN:
• The manifest CCN key should be recorded as the train or US CCN in the log
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when cancel release activity is being logged.
Trigger Criteria:
Context: A cancel release activity is being logged
Applied to: Set Transaction Type to Cargo
Action: Setting up the audit log entry
Logic Flow:
IF A cancel release activity is being logged
AND Setting up the audit log entry
THEN:
• The transaction type should be set to cargo
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when user is performing a cancel release transaction.
Trigger Criteria:
Context: A user is performing a cancel release transaction
Applied to: Record User ID and Transaction Code
Action: Creating the audit log entry
Logic Flow:
IF A user is performing a cancel release transaction
AND Creating the audit log entry
THEN:
• The user's ACF2 ID and the transaction code should be recorded in the log
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when cancel release activity is being processed.
Trigger Criteria:
Context: A cancel release activity is being processed
Applied to: Capture Current Date and Time
Action: Creating the audit log entry
Logic Flow:
IF A cancel release activity is being processed
AND Creating the audit log entry
THEN:
• The current machine date, century, and time should be captured and recorded in the log
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo release is being cancelled.
Trigger Criteria:
Context: A cargo release is being cancelled
Applied to: Set Action Code to 'Cargo Release Removed'
Action: Creating the audit log entry
Logic Flow:
IF A cargo release is being cancelled
AND Creating the audit log entry
THEN:
• The action code should be set to indicate cargo release removal
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when all audit information has been collected.
Trigger Criteria:
Context: All audit information has been collected
Applied to: Prepare Log Message
Action: Preparing to send the log entry
Logic Flow:
IF All audit information has been collected
AND Preparing to send the log entry
THEN:
• The audit information should be formatted into the message structure and the accept status should be cleared
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when formatted audit log message is ready. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A formatted audit log message is ready
Applied to: Send Log Entry to Audit System
Action: Sending the log entry to the audit system
Logic Flow:
IF A formatted audit log message is ready
AND Sending the log entry to the audit system
THEN:
• The system should call the audit service to process the log entry
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when audit log entry has been prepared.
Trigger Criteria:
Context: An audit log entry has been prepared
Applied to: Write Message to Log
Action: Writing to the system log
Logic Flow:
IF An audit log entry has been prepared
AND Writing to the system log
THEN:
• The message should be written to the log with proper message code, content, length, and module name
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when audit log entry has been written.
Trigger Criteria:
Context: The audit log entry has been written
Applied to: Complete Logging Process
Action: Completing the logging process
Logic Flow:
IF The audit log entry has been written
AND Completing the logging process
THEN:
• The system should purge any temporary logging resources
R-GCCCANRL-cbl-00071 (+1)File: GCCCANRL.cblBusiness Rule: Update Manifest Record
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when manifest record update operation is about to be performed.
Trigger Criteria:
Context: A manifest record update operation is about to be performed
Applied to: Clear Accept Status
Action: The system prepares to replace the manifest record
Logic Flow:
IF A manifest record update operation is about to be performed
AND The system prepares to replace the manifest record
THEN:
• The accept status field must be cleared to spaces to reset operation status
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest record has been retrieved and updated with cancellation data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The manifest record has been retrieved and updated with cancellation data
Applied to: Execute Database Replace Operation
Action: The system needs to persist the updated manifest information
Logic Flow:
IF The manifest record has been retrieved and updated with cancellation data
AND The system needs to persist the updated manifest information
THEN:
• The system must call the database interface program with replace operation to update the manifest record
R-GCCCANRL-cbl-00073 (+4)File: GCCCANRL.cblBusiness Rule: Get Next Follower Manifest
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when system is processing follower manifests in sequence.
Trigger Criteria:
Context: The system is processing follower manifests in sequence
Applied to: Retrieve Next Manifest Record
Action: The system attempts to retrieve the next manifest record
Logic Flow:
IF The system is processing follower manifests in sequence
AND The system attempts to retrieve the next manifest record
THEN:
• The system executes a database get-next operation to fetch the subsequent manifest record
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when database get-next operation has been executed for manifest records.
Trigger Criteria:
Context: A database get-next operation has been executed for manifest records
Applied to: Record Retrieved Successfully?
Action: The system checks the operation result status
Logic Flow:
IF A database get-next operation has been executed for manifest records
AND The system checks the operation result status
THEN:
• If the status code is spaces (successful), the system proceeds with record validation, otherwise it sets no-more-records flag
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest record has been successfully retrieved and the input ccn key is available.
Trigger Criteria:
Context: A manifest record has been successfully retrieved and the input CCN key is available
Applied to: Does Manifest Belong to Same Master Group?
Action: The system compares the master manifest CCN from the retrieved record with the input CCN key
Logic Flow:
IF A manifest record has been successfully retrieved and the input CCN key is available
AND The system compares the master manifest CCN from the retrieved record with the input CCN key
THEN:
• If the master manifest CCN equals the input CCN key, the manifest belongs to the same group, otherwise it belongs to a different group
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when manifest record has been successfully retrieved and belongs to the same master manifest group.
Trigger Criteria:
Context: A manifest record has been successfully retrieved and belongs to the same master manifest group
Applied to: More Manifests Available
Action: The system needs to set the processing continuation flag
Logic Flow:
IF A manifest record has been successfully retrieved and belongs to the same master manifest group
AND The system needs to set the processing continuation flag
THEN:
• The system sets the flag to indicate more manifests are available for processing
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when either the manifest record retrieval failed or the retrieved manifest belongs to a different master group.
Trigger Criteria:
Context: Either the manifest record retrieval failed or the retrieved manifest belongs to a different master group
Applied to: No More Manifests
Action: The system needs to set the processing termination flag
Logic Flow:
IF Either the manifest record retrieval failed or the retrieved manifest belongs to a different master group
AND The system needs to set the processing termination flag
THEN:
• The system sets the flag to indicate no more manifests are available for processing
Business Justification: Governs the functional prerequisites and system routing when all follower manifests have been processed through the cancel release workflow and the original program name was saved at the beginning of processing.
Trigger Criteria:
Context: All follower manifests have been processed through the cancel release workflow AND the original program name was saved at the beginning of processing
Applied to: Complete Processing - Restore original program name and return control to calling program
Action: The cancel release processing loop has completed with no more follower records to process
Logic Flow:
IF All follower manifests have been processed through the cancel release workflow AND the original program name was saved at the beginning of processing
AND The cancel release processing loop has completed with no more follower records to process
THEN:
• The system restores the original program name to the program context AND returns control to the calling program
R-GCCCANRL-cbl-00083 (+5)File: GCCCANRL.cblBusiness Rule: Set Unrelease Reason with Details
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo release cancellation is being processed.
Trigger Criteria:
Context: A cargo release cancellation is being processed
Applied to: Get Current Machine Date
Action: The system needs to record the unrelease date
Logic Flow:
IF A cargo release cancellation is being processed
AND The system needs to record the unrelease date
THEN:
• The current machine date is captured and stored as the unrelease date
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo release cancellation is being processed.
Trigger Criteria:
Context: A cargo release cancellation is being processed
Applied to: Get Current User ID
Action: The system needs to record who performed the unrelease action
Logic Flow:
IF A cargo release cancellation is being processed
AND The system needs to record who performed the unrelease action
THEN:
• The current ACF2 user ID is captured and stored as the unreleasing user
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo release cancellation is being processed.
Trigger Criteria:
Context: A cargo release cancellation is being processed
Applied to: Get Original Release Date from Manifest
Action: The system needs to preserve historical release information
Logic Flow:
IF A cargo release cancellation is being processed
AND The system needs to preserve historical release information
THEN:
• The original release date from the manifest is captured and stored
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo release cancellation is being processed.
Trigger Criteria:
Context: A cargo release cancellation is being processed
Applied to: Clear Existing Release Information
Action: The system needs to clear previous release information
Logic Flow:
IF A cargo release cancellation is being processed
AND The system needs to clear previous release information
THEN:
• The release information field is cleared to spaces
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo release cancellation is being processed and all required details are available.
Trigger Criteria:
Context: A cargo release cancellation is being processed and all required details are available
Applied to: Construct Unrelease Reason with All Details
Action: The system needs to document the reason for unreleasing
Logic Flow:
IF A cargo release cancellation is being processed and all required details are available
AND The system needs to document the reason for unreleasing
THEN:
• The unrelease reason is constructed with the predefined unrelease reason text
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when unrelease reason has been constructed with all required details.
Trigger Criteria:
Context: The unrelease reason has been constructed with all required details
Applied to: Update Manifest Release Reason Field
Action: The system needs to update the manifest with cancellation information
Logic Flow:
IF The unrelease reason has been constructed with all required details
AND The system needs to update the manifest with cancellation information
THEN:
• The manifest release reason field is updated with the constructed unrelease reason
R-GCCCANRL-cbl-00089 (+10)File: GCCCANRL.cblBusiness Rule: Call Master Control Table Service
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when master control table lookup is required.
Trigger Criteria:
Context: A master control table lookup is required
Applied to: Set Function Code to GU
Action: The table service is being prepared for execution
Logic Flow:
IF A master control table lookup is required
AND The table service is being prepared for execution
THEN:
• The function code should be set to GU for data retrieval operation
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when table lookup operation is being initialized. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A table lookup operation is being initialized
Applied to: Clear Key Values and Flags
Action: The lookup parameters need to be prepared
Logic Flow:
IF A table lookup operation is being initialized
AND The lookup parameters need to be prepared
THEN:
• All key values, flags, and filler fields should be cleared to spaces
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when table lookup operation is being configured.
Trigger Criteria:
Context: A table lookup operation is being configured
Applied to: Set Table ID to 'MC'
Action: The target table needs to be identified
Logic Flow:
IF A table lookup operation is being configured
AND The target table needs to be identified
THEN:
• The table ID should be set to 'MC' to identify the Master Control table
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when manifest record contains a destination station name.
Trigger Criteria:
Context: A manifest record contains a destination station name
Applied to: Set Station Name from Manifest
Action: A Master Control table lookup is being performed
Logic Flow:
IF A manifest record contains a destination station name
AND A Master Control table lookup is being performed
THEN:
• The manifest destination station name should be used as the lookup key
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when table service call is about to be executed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A table service call is about to be executed
Applied to: Clear Return Flag
Action: The service parameters are being finalized
Logic Flow:
IF A table service call is about to be executed
AND The service parameters are being finalized
THEN:
• The return flag should be cleared to spaces for proper response detection
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when all table lookup parameters have been prepared. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All table lookup parameters have been prepared
Applied to: Call GCCTBIO Service
Action: Station information needs to be retrieved from Master Control table
Logic Flow:
IF All table lookup parameters have been prepared
AND Station information needs to be retrieved from Master Control table
THEN:
• The GCCTBIO service should be called with the prepared parameters
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when master control table lookup has been executed.
Trigger Criteria:
Context: A Master Control table lookup has been executed
Applied to: Return Flag = '0'?
Action: The service returns with a response
Logic Flow:
IF A Master Control table lookup has been executed
AND The service returns with a response
THEN:
• If the return flag equals '0', the lookup was successful, otherwise it failed
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when master control table lookup was successful.
Trigger Criteria:
Context: A Master Control table lookup was successful
Applied to: Extract Station Number from Response
Action: The response contains valid station information
Logic Flow:
IF A Master Control table lookup was successful
AND The response contains valid station information
THEN:
• The station number should be extracted from the response segment
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when station number has been successfully extracted from table lookup.
Trigger Criteria:
Context: A station number has been successfully extracted from table lookup
Applied to: Set Station Number for Index
Action: The destination station information needs to be updated
Logic Flow:
IF A station number has been successfully extracted from table lookup
AND The destination station information needs to be updated
THEN:
• The extracted station number should be assigned to the destination station number for index field
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when master control table lookup has failed.
Trigger Criteria:
Context: A Master Control table lookup has failed
Applied to: Initialize Empty Segment
Action: The table response is not available
Logic Flow:
IF A Master Control table lookup has failed
AND The table response is not available
THEN:
• The Master Control table segment should be initialized to empty values
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when master control table lookup has failed.
Trigger Criteria:
Context: A Master Control table lookup has failed
Applied to: Use Original Station Number
Action: Station number information is still needed for processing
Logic Flow:
IF A Master Control table lookup has failed
AND Station number information is still needed for processing
THEN:
• The original destination station number should be used for the index field
Business Justification: Establishes the required business protocol to be followed when cancel release operation is being logged.
Trigger Criteria:
Context: A cancel release operation is being logged
Applied to: Set Security Information
Action: The system prepares the audit log message
Logic Flow:
IF A cancel release operation is being logged
AND The system prepares the audit log message
THEN:
• The security byte is set to high-values for maximum security classification
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release operation is being processed.
Trigger Criteria:
Context: A manifest cancel release operation is being processed
Applied to: Set Manifest CCN Number
Action: The audit log entry is being prepared
Logic Flow:
IF A manifest cancel release operation is being processed
AND The audit log entry is being prepared
THEN:
• The manifest CCN key is recorded in the log entry train/CCN field
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo manifest cancel release is being logged.
Trigger Criteria:
Context: A cargo manifest cancel release is being logged
Applied to: Set Cargo Type Indicator
Action: The audit log entry is being created
Logic Flow:
IF A cargo manifest cancel release is being logged
AND The audit log entry is being created
THEN:
• The cargo type indicator is set to CA-CARGO to identify this as a cargo operation
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when cancel release transaction is being processed.
Trigger Criteria:
Context: A cancel release transaction is being processed
Applied to: Set Transaction Code
Action: The audit log is being prepared
Logic Flow:
IF A cancel release transaction is being processed
AND The audit log is being prepared
THEN:
• The transaction code from the common communication area is recorded in the log entry
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when user is performing a cancel release operation.
Trigger Criteria:
Context: A user is performing a cancel release operation
Applied to: Set User ID
Action: The audit log entry is being created
Logic Flow:
IF A user is performing a cancel release operation
AND The audit log entry is being created
THEN:
• The user's ACF2 ID from the common communication area is recorded in the log
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when cancel release operation is being performed.
Trigger Criteria:
Context: A cancel release operation is being performed
Applied to: Set Current Date & Set Current Time
Action: The audit log entry is being prepared
Logic Flow:
IF A cancel release operation is being performed
AND The audit log entry is being prepared
THEN:
• The current machine century and date are recorded in the log entry
• The current machine time is recorded in the log entry
Rule Belongs to : GCCCANRL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo release is being cancelled.
Trigger Criteria:
Context: A cargo release is being cancelled
Applied to: Set Action Code as 'Cargo Release Removed'
Action: The audit log entry is being created
Logic Flow:
IF A cargo release is being cancelled
AND The audit log entry is being created
THEN:
• The action code is set to LOG-CARGO-RELEASE-REMOVED to identify the type of operation
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when all audit log components have been prepared.
Trigger Criteria:
Context: All audit log components have been prepared
Applied to: Format Complete Log Message
Action: The log message needs to be transmitted
Logic Flow:
IF All audit log components have been prepared
AND The log message needs to be transmitted
THEN:
• The complete log input structure is moved to the message format for processing
R-GCCCANRL-cbl-00109 (+10)File: GCCCANRL.cblBusiness Rule: Send Log Entry to Audit System
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo release cancellation audit log entry is being created.
Trigger Criteria:
Context: A cargo release cancellation audit log entry is being created
Applied to: Set Security Level to High
Action: The system prepares the security settings for the log entry
Logic Flow:
IF A cargo release cancellation audit log entry is being created
AND The system prepares the security settings for the log entry
THEN:
• The security byte must be set to high values to establish maximum security level
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when manifest record is being processed for release cancellation.
Trigger Criteria:
Context: A manifest record is being processed for release cancellation
Applied to: Populate Log Entry with Manifest CCN
Action: The system creates an audit log entry
Logic Flow:
IF A manifest record is being processed for release cancellation
AND The system creates an audit log entry
THEN:
• The manifest CCN key must be recorded in the train or US CCN field of the log entry
Rule Belongs to : GCCCANRL.cbl
Business Justification: Establishes the required business protocol to be followed when audit log entry is being created for cargo release cancellation.
Trigger Criteria:
Context: An audit log entry is being created for cargo release cancellation
Applied to: Set Cargo Type Indicator
Action: The system sets the cargo type classification
Logic Flow:
IF An audit log entry is being created for cargo release cancellation
AND The system sets the cargo type classification
THEN:
• The cargo type indicator must be set to CA-CARGO to identify this as a cargo-related transaction
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo release cancellation is being processed.
Trigger Criteria:
Context: A cargo release cancellation is being processed
Applied to: Record Transaction Code & Set Current Date and Time
Action: The system creates an audit log entry
Logic Flow:
IF A cargo release cancellation is being processed
AND The system creates an audit log entry
THEN:
• The transaction code from the common communication area must be recorded as the sending transaction in the log entry
• The current machine date (including century) and time must be recorded in the log entry
Rule Belongs to : GCCCANRL.cbl
Business Justification: Ensures correct system behavior and process compliance when user initiates a cargo release cancellation.
Trigger Criteria:
Context: A user initiates a cargo release cancellation
Applied to: Capture User ID
Action: The system creates an audit log entry
Logic Flow:
IF A user initiates a cargo release cancellation
AND The system creates an audit log entry
THEN:
• The ACF2 user ID from the common communication area must be recorded in the log entry
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo release is being cancelled.
Trigger Criteria:
Context: A cargo release is being cancelled
Applied to: Set Action Code as Release Removed
Action: The system creates an audit log entry
Logic Flow:
IF A cargo release is being cancelled
AND The system creates an audit log entry
THEN:
• The action code must be set to LOG-CARGO-RELEASE-REMOVED to identify this specific type of transaction
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when all audit log data has been populated.
Trigger Criteria:
Context: All audit log data has been populated
Applied to: Format Message for Logging
Action: The system prepares to send the audit entry
Logic Flow:
IF All audit log data has been populated
AND The system prepares to send the audit entry
THEN:
• The log input data must be moved to the message structure for proper formatting
Rule Belongs to : GCCCANRL.cbl
Business Justification: Defines the strict business conditions required to proceed when audit log entry has been formatted for transmission.
Trigger Criteria:
Context: An audit log entry has been formatted for transmission
Applied to: Send Message to Audit System
Action: The system sends the audit entry
Logic Flow:
IF An audit log entry has been formatted for transmission
AND The system sends the audit entry
THEN:
• The CIMS program must be called with CHNG function to transmit the audit message through the alternate PCB
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when audit message has been sent to the logging system.
Trigger Criteria:
Context: An audit message has been sent to the logging system
Applied to: Write Message to Log
Action: The system writes the message to the log
Logic Flow:
IF An audit message has been sent to the logging system
AND The system writes the message to the log
THEN:
• The WRITMSGL program must be called with the message code, message content, message length, and module name
Rule Belongs to : GCCCANRL.cbl
Business Justification: Dictates the expected operational logic and validation steps when audit message has been successfully written to the log.
Trigger Criteria:
Context: An audit message has been successfully written to the log
Applied to: Purge Message Queue
Action: The system completes the logging process
Logic Flow:
IF An audit message has been successfully written to the log
AND The system completes the logging process
THEN:
• The CIMS program must be called with PURG function to purge the message queue through the alternate PCB
📁 File: GCCCBOL.cbl
Select All in File
R-GCCCBOL-cbl-00028 (+4)File: GCCCBOL.cblBusiness Rule: Get Shipment Root Data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when shipment processing request is initiated and a root key exists for the current shipment.
Trigger Criteria:
Context: A shipment processing request is initiated and a root key exists for the current shipment
Applied to: Get Shipment Root Data
Action: The system attempts to retrieve shipment root data from the SHIPROOT database using the shipment's root key
Logic Flow:
IF A shipment processing request is initiated and a root key exists for the current shipment
AND The system attempts to retrieve shipment root data from the SHIPROOT database using the shipment's root key
THEN:
• The system should successfully access and load the shipment root information making it available for subsequent cargo processing operations
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when request to retrieve shipment root data is made.
Trigger Criteria:
Context: A request to retrieve shipment root data is made
Applied to: Initialize Database Access Parameters
Action: The system initializes database access parameters
Logic Flow:
IF A request to retrieve shipment root data is made
AND The system initializes database access parameters
THEN:
• The communication area should be cleared to spaces and the segment type should be set to 'SHIPROOT' to identify the target data structure
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when database access parameters are initialized and a current shipment context exists with a valid root key.
Trigger Criteria:
Context: Database access parameters are initialized and a current shipment context exists with a valid root key
Applied to: Set Root Key from Current Shipment
Action: The system sets the root key for the database query
Logic Flow:
IF Database access parameters are initialized and a current shipment context exists with a valid root key
AND The system sets the root key for the database query
THEN:
• The root key parameter should be populated with the current shipment's root key value to ensure accurate data retrieval
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when database access parameters are configured with segment type and root key.
Trigger Criteria:
Context: Database access parameters are configured with segment type and root key
Applied to: Set Database Function to Get Unique
Action: The system sets the database function type
Logic Flow:
IF Database access parameters are configured with segment type and root key
AND The system sets the database function type
THEN:
• The function code should be set to 'GU' (Get Unique) and accept status should be set to 'GE' (Get Equal) to retrieve exactly one matching shipment root record
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when all database access parameters are properly configured including segment type, root key, and function codes. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All database access parameters are properly configured including segment type, root key, and function codes
Applied to: Call Database Access Routine
Action: The system calls the database access routine FWCWBIO
Logic Flow:
IF All database access parameters are properly configured including segment type, root key, and function codes
AND The system calls the database access routine FWCWBIO
THEN:
• The database call should be executed with the communication control area, database parameters, and shipment root data structure to attempt data retrieval
R-GCCCBOL-cbl-00033 (+10)File: GCCCBOL.cblBusiness Rule: Get Shipment Mine Data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when request to retrieve shipment mine data.
Trigger Criteria:
Context: A request to retrieve shipment mine data
Applied to: Initialize SHIPMINE segment
Action: The system begins the data retrieval process
Logic Flow:
IF A request to retrieve shipment mine data
AND The system begins the data retrieval process
THEN:
• The SHIPMINE data structure is cleared to spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment mine data retrieval request.
Trigger Criteria:
Context: A shipment mine data retrieval request
Applied to: Set segment type to 'SHIPMIN'
Action: The system configures the segment type
Logic Flow:
IF A shipment mine data retrieval request
AND The system configures the segment type
THEN:
• The segment type is set to 'SHIPMIN' to identify shipment mine records
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when configured shipment mine segment type.
Trigger Criteria:
Context: A configured shipment mine segment type
Applied to: Set segment ID to 'E'
Action: The system sets the segment identifier
Logic Flow:
IF A configured shipment mine segment type
AND The system sets the segment identifier
THEN:
• The segment ID is set to 'E' to identify the specific data category
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment mine segment counter value. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A shipment mine segment counter value
Applied to: Set segment number from counter
Action: The system configures the segment number
Logic Flow:
IF A shipment mine segment counter value
AND The system configures the segment number
THEN:
• The segment number is set from the WS-SHIPMINE-SEG-NBR counter
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when configured shipment mine segment request.
Trigger Criteria:
Context: A configured shipment mine segment request
Applied to: Set function code to 'GU' - Get Unique
Action: The system sets the database function code
Logic Flow:
IF A configured shipment mine segment request
AND The system sets the database function code
THEN:
• The function code is set to 'GU' for Get Unique operation
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when fully configured shipment mine data request. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A fully configured shipment mine data request
Applied to: Call FWCWBIO to retrieve data
Action: The system calls the FWCWBIO database interface
Logic Flow:
IF A fully configured shipment mine data request
AND The system calls the FWCWBIO database interface
THEN:
• The database retrieval operation is executed with the configured parameters
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when completed database retrieval operation.
Trigger Criteria:
Context: A completed database retrieval operation
Applied to: Data Retrieved Successfully?
Action: The system checks the operation status
Logic Flow:
IF A completed database retrieval operation
AND The system checks the operation status
THEN:
• If the status code is spaces, the retrieval is considered successful, otherwise it failed
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when successful shipment mine data retrieval. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A successful shipment mine data retrieval
Applied to: Set SHIPMINE-FOUND flag
Action: The system updates the status flag
Logic Flow:
IF A successful shipment mine data retrieval
AND The system updates the status flag
THEN:
• The WS-SHIPMINE-FOUND flag is set to TRUE
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when successfully retrieved shipment mine data.
Trigger Criteria:
Context: Successfully retrieved shipment mine data
Applied to: Extract EDI BOL key from data line 1
Action: The system processes the first data line
Logic Flow:
IF Successfully retrieved shipment mine data
AND The system processes the first data line
THEN:
• The EDI BOL key is extracted from DATA-LINE(1) and stored in WORK-EDI-BOL-KEY
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when failed shipment mine data retrieval. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A failed shipment mine data retrieval
Applied to: Set SHIPMINE-NOT-FOUND flag
Action: The system updates the status flag
Logic Flow:
IF A failed shipment mine data retrieval
AND The system updates the status flag
THEN:
• The WS-SHIPMINE-NOT-FOUND flag is set to TRUE
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment mine data retrieval failed.
Trigger Criteria:
Context: Shipment mine data retrieval failed
Applied to: Extract EDI BOL key from data line 1
Action: The system processes the EDI BOL key extraction
Logic Flow:
IF Shipment mine data retrieval failed
AND The system processes the EDI BOL key extraction
THEN:
• The WORK-EDI-BOL-KEY is set to spaces
R-GCCCBOL-cbl-00044 (+3)File: GCCCBOL.cblBusiness Rule: Extract EDI BOL Key
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to extract edi bol key from shipment data.
Trigger Criteria:
Context: The system needs to extract EDI BOL key from shipment data
Applied to: Set Shipmine Segment Number to 1
Action: The extraction process begins
Logic Flow:
IF The system needs to extract EDI BOL key from shipment data
AND The extraction process begins
THEN:
• The shipmine segment number is set to 1 to start from the first segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when shipmine segment number is set.
Trigger Criteria:
Context: The shipmine segment number is set
Applied to: Retrieve Shipmine Data
Action: The system attempts to retrieve shipmine data
Logic Flow:
IF The shipmine segment number is set
AND The system attempts to retrieve shipmine data
THEN:
• The system calls the database access routine to get the shipmine segment data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipmine data has been successfully retrieved from the database.
Trigger Criteria:
Context: Shipmine data has been successfully retrieved from the database
Applied to: Extract BOL Key from First Data Line
Action: The system processes the retrieved shipmine segment
Logic Flow:
IF Shipmine data has been successfully retrieved from the database
AND The system processes the retrieved shipmine segment
THEN:
• The EDI BOL key is extracted from the first data line and stored in the work area
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system attempts to retrieve shipmine data.
Trigger Criteria:
Context: The system attempts to retrieve shipmine data
Applied to: Set BOL Key to Blank
Action: No shipmine data is found in the database
Logic Flow:
IF The system attempts to retrieve shipmine data
AND No shipmine data is found in the database
THEN:
• The EDI BOL key is set to blank spaces
R-GCCCBOL-cbl-00048 (+18)File: GCCCBOL.cblBusiness Rule: Build Broker Information
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when broker building process is starting.
Trigger Criteria:
Context: The broker building process is starting
Applied to: Initialize Broker Name Variables
Action: The system initializes broker processing variables
Logic Flow:
IF The broker building process is starting
AND The system initializes broker processing variables
THEN:
• All broker name variables are set to spaces for clean processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Search EBSNRTD Segments
Action: The system searches EBSNRTD segments for organization data
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system searches EBSNRTD segments for organization data
THEN:
• Organization records with type 'TN' are retrieved sequentially for broker identification
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when organization data is being processed from bol segments.
Trigger Criteria:
Context: Organization data is being processed from BOL segments
Applied to: Organization ID = 'XQ'?
Action: An organization record has custom ID equal to 'XQ'
Logic Flow:
IF Organization data is being processed from BOL segments
AND An organization record has custom ID equal to 'XQ'
THEN:
• The organization name is set as the final broker name and search is completed
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when organization data is being processed from bol segments and no xq type broker has been found.
Trigger Criteria:
Context: Organization data is being processed from BOL segments and no XQ type broker has been found
Applied to: Organization ID = 'CB'?
Action: An organization record has ID equal to 'CB' and custom ID is not 'XR' or 'XU'
Logic Flow:
IF Organization data is being processed from BOL segments and no XQ type broker has been found
AND An organization record has ID equal to 'CB' and custom ID is not 'XR' or 'XU'
THEN:
• The organization name is stored as temporary broker name for potential use
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when all bol organization segments have been processed and a temporary cb broker exists.
Trigger Criteria:
Context: All BOL organization segments have been processed and a temporary CB broker exists
Applied to: Get Broker from BOL
Action: No XQ type broker was found during the search
Logic Flow:
IF All BOL organization segments have been processed and a temporary CB broker exists
AND No XQ type broker was found during the search
THEN:
• The temporary CB broker name becomes the final broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when no broker was found in bol data or bol key is not available.
Trigger Criteria:
Context: No broker was found in BOL data or BOL key is not available
Applied to: Search Special Handling Codes
Action: The system searches Fastway special handling codes
Logic Flow:
IF No broker was found in BOL data or BOL key is not available
AND The system searches Fastway special handling codes
THEN:
• Special handling records are examined for XQ and CB type broker codes
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when fastway special handling codes are being processed.
Trigger Criteria:
Context: Fastway special handling codes are being processed
Applied to: Code = 'XQ'?
Action: A special handling code equals 'XQ'
Logic Flow:
IF Fastway special handling codes are being processed
AND A special handling code equals 'XQ'
THEN:
• The handling instruction is extracted as broker name and search is completed
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when fastway special handling codes are being processed and no xq code has been found.
Trigger Criteria:
Context: Fastway special handling codes are being processed and no XQ code has been found
Applied to: Code = 'CB'?
Action: A special handling code equals 'CB'
Logic Flow:
IF Fastway special handling codes are being processed and no XQ code has been found
AND A special handling code equals 'CB'
THEN:
• The handling instruction is stored as temporary broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when no broker information was found in bol data or fastway special handling.
Trigger Criteria:
Context: No broker information was found in BOL data or Fastway special handling
Applied to: Set Broker Name to 'UNKNOWN'
Action: All broker search attempts have been exhausted
Logic Flow:
IF No broker information was found in BOL data or Fastway special handling
AND All broker search attempts have been exhausted
THEN:
• The broker name is set to 'UNKNOWN'
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when broker name has been identified from data sources.
Trigger Criteria:
Context: A broker name has been identified from data sources
Applied to: Starts with 'CUSTOMS BROKER '?
Action: The broker name starts with 'CUSTOMS BROKER ' (15 characters)
Logic Flow:
IF A broker name has been identified from data sources
AND The broker name starts with 'CUSTOMS BROKER ' (15 characters)
THEN:
• The actual broker name is extracted from position 16 onwards
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when broker name starts with 'customs broker: ' (16 characters).
Trigger Criteria:
Context: A broker name starts with 'CUSTOMS BROKER: ' (16 characters)
Applied to: Parse Broker Name
Action: The system parses the broker name
Logic Flow:
IF A broker name starts with 'CUSTOMS BROKER: ' (16 characters)
AND The system parses the broker name
THEN:
• The actual broker name is extracted from position 17 onwards
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when broker name starts with 'broker ' (7 characters).
Trigger Criteria:
Context: A broker name starts with 'BROKER ' (7 characters)
Applied to: Starts with 'BROKER '?
Action: The system parses the broker name
Logic Flow:
IF A broker name starts with 'BROKER ' (7 characters)
AND The system parses the broker name
THEN:
• The actual broker name is extracted from position 8 onwards
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when broker name starts with 'broker: ' (8 characters).
Trigger Criteria:
Context: A broker name starts with 'BROKER: ' (8 characters)
Applied to: Parse Broker Name
Action: The system parses the broker name
Logic Flow:
IF A broker name starts with 'BROKER: ' (8 characters)
AND The system parses the broker name
THEN:
• The actual broker name is extracted from position 9 onwards
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when broker name starts with 'cb ' or 'xq ' (3 characters).
Trigger Criteria:
Context: A broker name starts with 'CB ' or 'XQ ' (3 characters)
Applied to: Starts with 'CB ' or 'XQ '?
Action: The system parses the broker name
Logic Flow:
IF A broker name starts with 'CB ' or 'XQ ' (3 characters)
AND The system parses the broker name
THEN:
• The actual broker name is extracted from position 4 onwards
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when broker name starts with 'cb: ' or 'xq: ' (4 characters).
Trigger Criteria:
Context: A broker name starts with 'CB: ' or 'XQ: ' (4 characters)
Applied to: Parse Broker Name
Action: The system parses the broker name
Logic Flow:
IF A broker name starts with 'CB: ' or 'XQ: ' (4 characters)
AND The system parses the broker name
THEN:
• The actual broker name is extracted from position 5 onwards
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when broker name does not start with any recognized prefixes.
Trigger Criteria:
Context: A broker name does not start with any recognized prefixes
Applied to: Use Full String as Name
Action: The system parses the broker name
Logic Flow:
IF A broker name does not start with any recognized prefixes
AND The system parses the broker name
THEN:
• The entire string is used as the broker name without modification
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when broker long name has been identified and parsed.
Trigger Criteria:
Context: A broker long name has been identified and parsed
Applied to: Lookup Broker Short Name
Action: The system looks up the broker name in GCST2RT table
Logic Flow:
IF A broker long name has been identified and parsed
AND The system looks up the broker name in GCST2RT table
THEN:
• The system searches for a corresponding short name translation
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when broker short name translation exists in gcst2rt table.
Trigger Criteria:
Context: A broker short name translation exists in GCST2RT table
Applied to: Use Short Name from GCST2RT
Action: The lookup operation finds a matching record
Logic Flow:
IF A broker short name translation exists in GCST2RT table
AND The lookup operation finds a matching record
THEN:
• The short name from GCST2RT is used as the final broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when no broker short name translation exists in gcst2rt table.
Trigger Criteria:
Context: No broker short name translation exists in GCST2RT table
Applied to: Use Original Long Name
Action: The lookup operation finds no matching record
Logic Flow:
IF No broker short name translation exists in GCST2RT table
AND The lookup operation finds no matching record
THEN:
• The original parsed long name is used as the final broker name
R-GCCCBOL-cbl-00081 (+6)File: GCCCBOL.cblBusiness Rule: Parse Broker Name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when special handling instruction string is provided for broker name extraction.
Trigger Criteria:
Context: A special handling instruction string is provided for broker name extraction
Applied to: Check if starts with 'CUSTOMS BROKER '
Action: The string starts with 'CUSTOMS BROKER ' (15 characters including space)
Logic Flow:
IF A special handling instruction string is provided for broker name extraction
AND The string starts with 'CUSTOMS BROKER ' (15 characters including space)
THEN:
• Extract the broker name from position 16 to 43 (28 characters) and set it as the broker long name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when special handling instruction string is provided for broker name extraction and it does not start with 'customs broker '.
Trigger Criteria:
Context: A special handling instruction string is provided for broker name extraction and it does not start with 'CUSTOMS BROKER '
Applied to: '
Action: The string starts with 'CUSTOMS BROKER: ' (16 characters including colon and space)
Logic Flow:
IF A special handling instruction string is provided for broker name extraction and it does not start with 'CUSTOMS BROKER '
AND The string starts with 'CUSTOMS BROKER: ' (16 characters including colon and space)
THEN:
• Extract the broker name from position 17 to 43 (27 characters) and set it as the broker long name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when special handling instruction string is provided for broker name extraction and it does not start with 'customs broker ' or 'customs broker: '.
Trigger Criteria:
Context: A special handling instruction string is provided for broker name extraction and it does not start with 'CUSTOMS BROKER ' or 'CUSTOMS BROKER: '
Applied to: Check if starts with 'BROKER '
Action: The string starts with 'BROKER ' (7 characters including space)
Logic Flow:
IF A special handling instruction string is provided for broker name extraction and it does not start with 'CUSTOMS BROKER ' or 'CUSTOMS BROKER: '
AND The string starts with 'BROKER ' (7 characters including space)
THEN:
• Extract the broker name from position 8 to 43 (36 characters) and set it as the broker long name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling instruction string is provided for broker name extraction and it does not start with 'customs broker ', 'customs broker: ', or 'broker '.
Trigger Criteria:
Context: A special handling instruction string is provided for broker name extraction and it does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', or 'BROKER '
Applied to: '
Action: The string starts with 'BROKER: ' (8 characters including colon and space)
Logic Flow:
IF A special handling instruction string is provided for broker name extraction and it does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', or 'BROKER '
AND The string starts with 'BROKER: ' (8 characters including colon and space)
THEN:
• Extract the broker name from position 9 to 43 (35 characters) and set it as the broker long name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when special handling instruction string is provided for broker name extraction and it does not start with any customs broker or broker prefixes.
Trigger Criteria:
Context: A special handling instruction string is provided for broker name extraction and it does not start with any CUSTOMS BROKER or BROKER prefixes
Applied to: Check if starts with 'CB ' or 'XQ '
Action: The string starts with 'CB ' or 'XQ ' (3 characters including space)
Logic Flow:
IF A special handling instruction string is provided for broker name extraction and it does not start with any CUSTOMS BROKER or BROKER prefixes
AND The string starts with 'CB ' or 'XQ ' (3 characters including space)
THEN:
• Extract the broker name from position 4 to 44 (41 characters) and set it as the broker long name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling instruction string is provided for broker name extraction and it does not start with any customs broker, broker, cb, or xq prefixes.
Trigger Criteria:
Context: A special handling instruction string is provided for broker name extraction and it does not start with any CUSTOMS BROKER, BROKER, CB, or XQ prefixes
Applied to: ' or 'XQ: '
Action: The string starts with 'CB: ' or 'XQ: ' (4 characters including colon and space)
Logic Flow:
IF A special handling instruction string is provided for broker name extraction and it does not start with any CUSTOMS BROKER, BROKER, CB, or XQ prefixes
AND The string starts with 'CB: ' or 'XQ: ' (4 characters including colon and space)
THEN:
• Extract the broker name from position 5 to 44 (40 characters) and set it as the broker long name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when special handling instruction string is provided for broker name extraction and it does not start with any recognized broker prefixes.
Trigger Criteria:
Context: A special handling instruction string is provided for broker name extraction and it does not start with any recognized broker prefixes
Applied to: Use entire string as broker name
Action: The string does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', 'BROKER: ', 'CB ', 'XQ ', 'CB: ', or 'XQ: '
Logic Flow:
IF A special handling instruction string is provided for broker name extraction and it does not start with any recognized broker prefixes
AND The string does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', 'BROKER: ', 'CB ', 'XQ ', 'CB: ', or 'XQ: '
THEN:
• Use the entire special handling instruction string as the broker long name
R-GCCCBOL-cbl-00088 (+2)File: GCCCBOL.cblBusiness Rule: Lookup Broker Short Name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system has processed broker information from edi bol or fastway sources.
Trigger Criteria:
Context: The system has processed broker information from EDI BOL or Fastway sources
Applied to: Broker Long Name Available?
Action: The broker long name field is evaluated for availability
Logic Flow:
IF The system has processed broker information from EDI BOL or Fastway sources
AND The broker long name field is evaluated for availability
THEN:
• The system proceeds to standardization lookup only if broker long name is not spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid broker long name exists and is not spaces.
Trigger Criteria:
Context: A valid broker long name exists and is not spaces
Applied to: Query GCST2RT Table
Action: The system queries the GCST2RT table using the broker long name as the search key
Logic Flow:
IF A valid broker long name exists and is not spaces
AND The system queries the GCST2RT table using the broker long name as the search key
THEN:
• The system retrieves the corresponding broker record from GCST2RT table
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system has performed a lookup in gcst2rt table using broker long name.
Trigger Criteria:
Context: The system has performed a lookup in GCST2RT table using broker long name
Applied to: Broker Found in GCST2RT?
Action: The lookup result indicates whether a matching broker record was found in GCST2RT
Logic Flow:
IF The system has performed a lookup in GCST2RT table using broker long name
AND The lookup result indicates whether a matching broker record was found in GCST2RT
THEN:
• If broker is found in GCST2RT, use the standardized short name from GCT2-BROKER-NAME-SHORT field, otherwise use the original broker long name
Business Justification: Dictates the expected operational logic and validation steps when system is ready to process n9 reference numbers.
Trigger Criteria:
Context: The system is ready to process N9 reference numbers
Applied to: Initialize Reference Number Variables
Action: Reference number processing begins
Logic Flow:
IF The system is ready to process N9 reference numbers
AND Reference number processing begins
THEN:
• Initialize sequence counter to 0, array index to 1, set BOL reference found flag to true, set BM not found flag to true, set SI not found flag to true, and set blank N9 not found flag to true
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when reference number array exists with 10 possible slots.
Trigger Criteria:
Context: Reference number array exists with 10 possible slots
Applied to: Initialize Reference Number Variables
Action: System needs to find an empty slot for new reference numbers
Logic Flow:
IF Reference number array exists with 10 possible slots
AND System needs to find an empty slot for new reference numbers
THEN:
• Search through array positions 1 to 10 until finding a blank reference number qualifier or reaching position 10, and set blank N9 found flag when empty slot is located
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when bol reference data is found and reference qualifier equals 'bm' and bm reference has not been found yet. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: BOL reference data is found and reference qualifier equals 'BM' and BM reference has not been found yet
Applied to: Extract BM Reference Number from BOL
Action: Processing BOL reference records
Logic Flow:
IF BOL reference data is found and reference qualifier equals 'BM' and BM reference has not been found yet
AND Processing BOL reference records
THEN:
• Set reference qualifier to 'BM', copy reference number to array (or 'N/A' if blank), set BM found flag to true, and increment array index by 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when bol reference data is found and reference qualifier equals 'si' and si reference has not been found yet. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: BOL reference data is found and reference qualifier equals 'SI' and SI reference has not been found yet
Applied to: Extract SI Reference Number from BOL
Action: Processing BOL reference records
Logic Flow:
IF BOL reference data is found and reference qualifier equals 'SI' and SI reference has not been found yet
AND Processing BOL reference records
THEN:
• Set reference qualifier to 'SI', copy reference number to array (or 'N/A' if blank), set SI found flag to true, and increment array index by 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when bol basic data is found and shipment method payment field is not blank. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: BOL basic data is found and shipment method payment field is not blank
Applied to: Extract Payment Method from BOL
Action: Processing BOL basic data after reference extraction
Logic Flow:
IF BOL basic data is found and shipment method payment field is not blank
AND Processing BOL basic data after reference extraction
THEN:
• Copy shipment method payment value to cargo report payment method field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when bol basic data is found and shipment id number is not blank. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: BOL basic data is found and shipment ID number is not blank
Applied to: Extract Shipment ID Number from BOL
Action: Processing BOL basic data after payment method extraction
Logic Flow:
IF BOL basic data is found and shipment ID number is not blank
AND Processing BOL basic data after payment method extraction
THEN:
• Increment array index by 1, set reference qualifier to 'CN', and copy shipment ID number to reference array
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when bm reference was not found in bol data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: BM reference was not found in BOL data
Applied to: Get BM Reference from Fastway Bill Number
Action: Falling back to Fastway system data
Logic Flow:
IF BM reference was not found in BOL data
AND Falling back to Fastway system data
THEN:
• Set reference qualifier to 'BM', copy shipper bill number to reference array, set BM found flag to true, and increment array index by 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when si reference was not found in bol data and special handling code equals 'si' and si has not been found yet and array index is within limit. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: SI reference was not found in BOL data and special handling code equals 'SI' and SI has not been found yet and array index is within limit
Applied to: Extract SI Reference from Fastway
Action: Processing Fastway special handling data from positions 1 to 7
Logic Flow:
IF SI reference was not found in BOL data and special handling code equals 'SI' and SI has not been found yet and array index is within limit
AND Processing Fastway special handling data from positions 1 to 7
THEN:
• Set SI found flag to true, copy special handling code to reference qualifier, copy special handling instruction to reference number, increment array index by 1, and set blank N9 not found flag if array exceeds limit
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when reference number field is blank or contains spaces.
Trigger Criteria:
Context: A reference number field is blank or contains spaces
Applied to: Extract BM Reference Number from BOL
Action: Processing any reference number from BOL data
Logic Flow:
IF A reference number field is blank or contains spaces
Business Justification: Establishes the required business protocol to be followed when shipment requires payment method extraction from bol data.
Trigger Criteria:
Context: A shipment requires payment method extraction from BOL data
Applied to: Extract B2-SHIPMENT-METH-PAY from BOL
Action: The system retrieves the EBSBCBC BOL segment and the payment method field contains valid data
Logic Flow:
IF A shipment requires payment method extraction from BOL data
AND The system retrieves the EBSBCBC BOL segment and the payment method field contains valid data
THEN:
• The payment method is extracted and stored in the cargo report structure
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when request to extract payment method from bol data.
Trigger Criteria:
Context: A request to extract payment method from BOL data
Applied to: EBSBCBC segment found?
Action: The system attempts to retrieve the EBSBCBC BOL segment
Logic Flow:
IF A request to extract payment method from BOL data
AND The system attempts to retrieve the EBSBCBC BOL segment
THEN:
• The system proceeds with payment method extraction only if the BOL segment is successfully found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when ebsbcbc bol segment has been successfully retrieved.
Trigger Criteria:
Context: An EBSBCBC BOL segment has been successfully retrieved
Applied to: Payment method field not empty?
Action: The system checks the B2-SHIPMENT-METH-PAY field for content
Logic Flow:
IF An EBSBCBC BOL segment has been successfully retrieved
AND The system checks the B2-SHIPMENT-METH-PAY field for content
THEN:
• The payment method is processed only if the field is not empty or contains spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when valid payment method has been extracted from the bol segment.
Trigger Criteria:
Context: A valid payment method has been extracted from the BOL segment
Applied to: Store payment method in GCCC-BX03-SHIP-METH-PAY
Action: The B2-SHIPMENT-METH-PAY field contains valid payment method data
Logic Flow:
IF A valid payment method has been extracted from the BOL segment
AND The B2-SHIPMENT-METH-PAY field contains valid payment method data
THEN:
• The payment method value is moved to GCCC-BX03-SHIP-METH-PAY field in the cargo report
R-GCCCBOL-cbl-00116 (+5)File: GCCCBOL.cblBusiness Rule: Extract Shipment ID
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when bol record exists with shipment data segment ebsbcbc.
Trigger Criteria:
Context: A BOL record exists with shipment data segment EBSBCBC
Applied to: Get EBSBCBC Segment from BOL
Action: The system processes the BOL data for shipment identification
Logic Flow:
IF A BOL record exists with shipment data segment EBSBCBC
AND The system processes the BOL data for shipment identification
THEN:
• The system should retrieve the EBSBCBC segment containing shipment ID information
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when system has attempted to retrieve ebsbcbc segment from bol data.
Trigger Criteria:
Context: The system has attempted to retrieve EBSBCBC segment from BOL data
Applied to: EBSBCBC Segment Found?
Action: The system checks if the EBSBCBC segment was successfully found
Logic Flow:
IF The system has attempted to retrieve EBSBCBC segment from BOL data
AND The system checks if the EBSBCBC segment was successfully found
THEN:
• The system should continue processing if segment is found, otherwise terminate the shipment ID extraction process
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when ebsbcbc segment has been successfully retrieved from bol data.
Trigger Criteria:
Context: The EBSBCBC segment has been successfully retrieved from BOL data
Applied to: Shipment ID Number Available?
Action: The system checks the B2-SHIPMENT-ID-NO field for valid content
Logic Flow:
IF The EBSBCBC segment has been successfully retrieved from BOL data
AND The system checks the B2-SHIPMENT-ID-NO field for valid content
THEN:
• The system should proceed with reference number creation if shipment ID is not spaces, otherwise skip the shipment ID processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment id number is valid and available in the ebsbcbc segment.
Trigger Criteria:
Context: The shipment ID number is valid and available in the EBSBCBC segment
Applied to: Increment Reference Number Counter
Action: The system prepares to add the shipment ID as a reference number
Logic Flow:
IF The shipment ID number is valid and available in the EBSBCBC segment
AND The system prepares to add the shipment ID as a reference number
THEN:
• The system should increment the reference number counter by 1 to point to the next available array position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when reference number counter has been incremented for a new shipment id entry.
Trigger Criteria:
Context: The reference number counter has been incremented for a new shipment ID entry
Applied to: Set Reference Qualifier to 'CN'
Action: The system sets the reference number qualifier
Logic Flow:
IF The reference number counter has been incremented for a new shipment ID entry
AND The system sets the reference number qualifier
THEN:
• The system should assign 'CN' as the qualifier to indicate this is a Container Number reference
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when reference qualifier has been set to 'cn' and the counter is positioned correctly.
Trigger Criteria:
Context: The reference qualifier has been set to 'CN' and the counter is positioned correctly
Applied to: Move Shipment ID to Reference Number Field
Action: The system stores the shipment identification data
Logic Flow:
IF The reference qualifier has been set to 'CN' and the counter is positioned correctly
AND The system stores the shipment identification data
THEN:
• The system should move the B2-SHIPMENT-ID-NO value to the reference number field at the current array position
Business Justification: Governs the functional prerequisites and system routing when reference number processing operation is initiated.
Trigger Criteria:
Context: A reference number processing operation is initiated
Applied to: Initialize Counter I = 1
Action: The system begins processing reference number fields
Logic Flow:
IF A reference number processing operation is initiated
AND The system begins processing reference number fields
THEN:
• The counter is set to 1 to start processing from the first reference number field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when reference number fields are being processed sequentially.
Trigger Criteria:
Context: Reference number fields are being processed sequentially
Applied to: Counter I <= 10?
Action: The system checks if more fields need processing
Logic Flow:
IF Reference number fields are being processed sequentially
AND The system checks if more fields need processing
THEN:
• Processing continues only if the current field number is 10 or less, otherwise processing stops
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when reference number field is being evaluated for compression.
Trigger Criteria:
Context: A reference number field is being evaluated for compression
Applied to: Reference Number is Spaces OR First Character Not Space?
Action: The field is either completely empty (spaces) OR the first character is not a space
Logic Flow:
IF A reference number field is being evaluated for compression
AND The field is either completely empty (spaces) OR the first character is not a space
THEN:
• The field is skipped from compression processing and the system moves to the next field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when reference number field requires compression processing.
Trigger Criteria:
Context: A reference number field requires compression processing
Applied to: Move Reference Number to Work Table
Action: The field contains leading spaces that need to be removed
Logic Flow:
IF A reference number field requires compression processing
AND The field contains leading spaces that need to be removed
THEN:
• The entire reference number content is copied to a work table for manipulation
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when reference number data has been copied to work area.
Trigger Criteria:
Context: Reference number data has been copied to work area
Applied to: Clear Original Reference Number Field
Action: The original field needs to be prepared for compressed data
Logic Flow:
IF Reference number data has been copied to work area
AND The original field needs to be prepared for compressed data
THEN:
• The original reference number field is cleared (set to spaces)
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is scanning characters in a reference number field.
Trigger Criteria:
Context: The system is scanning characters in a reference number field
Applied to: Position J <= 30?
Action: Each character position is being evaluated
Logic Flow:
IF The system is scanning characters in a reference number field
AND Each character position is being evaluated
THEN:
• Scanning continues only if the current position is 30 or less, otherwise scanning stops
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when character at a specific position is being evaluated.
Trigger Criteria:
Context: A character at a specific position is being evaluated
Applied to: Character is Space or Low-Value?
Action: The character is either a space or a low-value
Logic Flow:
IF A character at a specific position is being evaluated
AND The character is either a space or a low-value
THEN:
• The character is marked for exclusion and the system moves to the next position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system is scanning for the first meaningful character.
Trigger Criteria:
Context: The system is scanning for the first meaningful character
Applied to: Mark First Non-Space Position K
Action: A character that is not a space or low-value is found
Logic Flow:
IF The system is scanning for the first meaningful character
AND A character that is not a space or low-value is found
THEN:
• The position of this character is marked as the starting point for compression
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when meaningful characters are being copied from work area to compressed field.
Trigger Criteria:
Context: Meaningful characters are being copied from work area to compressed field
Applied to: Position K <= 30?
Action: Each source position is being processed
Logic Flow:
IF Meaningful characters are being copied from work area to compressed field
AND Each source position is being processed
THEN:
• Copying continues only if the source position is 30 or less, otherwise copying stops
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when meaningful character has been identified in the work area. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A meaningful character has been identified in the work area
Applied to: Copy Non-Space Character to Compressed Position
Action: The character needs to be placed in the compressed reference number
Logic Flow:
IF A meaningful character has been identified in the work area
AND The character needs to be placed in the compressed reference number
THEN:
• The character is copied to the current position in the compressed field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when processing of current reference number field is complete.
Trigger Criteria:
Context: Processing of current reference number field is complete
Applied to: Increment Reference Counter I
Action: The system needs to continue with remaining fields
Logic Flow:
IF Processing of current reference number field is complete
AND The system needs to continue with remaining fields
THEN:
• The reference number counter is incremented by 1 to process the next field
R-GCCCBOL-cbl-00133 (+13)File: GCCCBOL.cblBusiness Rule: Build Seal Numbers
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to process seal numbers from edi bol data.
Trigger Criteria:
Context: The system needs to process seal numbers from EDI BOL data
Applied to: Initialize seal counter to 1
Action: The seal number building process starts
Logic Flow:
IF The system needs to process seal numbers from EDI BOL data
AND The seal number building process starts
THEN:
• The seal counter is set to 1 and EBSBCCX segment counter is initialized
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is processing seal numbers from edi bol segments.
Trigger Criteria:
Context: The system is processing seal numbers from EDI BOL segments
Applied to: Set seal type to 'SN'
Action: Preparing to retrieve EBSBCCX segments
Logic Flow:
IF The system is processing seal numbers from EDI BOL segments
AND Preparing to retrieve EBSBCCX segments
THEN:
• The type identifier is set to 'SN' for seal number segment retrieval
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is processing seal numbers from edi bol segments.
Trigger Criteria:
Context: The system is processing seal numbers from EDI BOL segments
Applied to: Seal counter ≤ 20
Action: The seal counter reaches or exceeds 20
Logic Flow:
IF The system is processing seal numbers from EDI BOL segments
AND The seal counter reaches or exceeds 20
THEN:
• The seal number processing stops to prevent exceeding the maximum capacity
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is processing seal numbers from edi bol segments.
Trigger Criteria:
Context: The system is processing seal numbers from EDI BOL segments
Applied to: End Build Seal Numbers
Action: No more EBSBCCX segments are found OR the seal counter exceeds 20
Logic Flow:
IF The system is processing seal numbers from EDI BOL segments
AND No more EBSBCCX segments are found OR the seal counter exceeds 20
THEN:
• The seal number building process terminates
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system has a valid edi bol key and segment counter.
Trigger Criteria:
Context: The system has a valid EDI BOL key and segment counter
Applied to: Get EBSBCCX segment from BOL
Action: Retrieving EBSBCCX segments with type 'SN'
Logic Flow:
IF The system has a valid EDI BOL key and segment counter
AND Retrieving EBSBCCX segments with type 'SN'
THEN:
• The system attempts to get the EBSBCCX segment and sets found/not found status
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when ebsbccx segment has been retrieved successfully.
Trigger Criteria:
Context: An EBSBCCX segment has been retrieved successfully
Applied to: Seal Number 1 not empty
Action: Checking the first seal number field (M7-SEAL-NUMBER-1)
Logic Flow:
IF An EBSBCCX segment has been retrieved successfully
AND Checking the first seal number field (M7-SEAL-NUMBER-1)
THEN:
• The seal number is processed only if it is not equal to spaces or low-values
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when first seal number in the ebsbccx segment is valid (not spaces or low-values).
Trigger Criteria:
Context: The first seal number in the EBSBCCX segment is valid (not spaces or low-values)
Applied to: Store Seal Number 1 in array
Action: Storing the seal number data
Logic Flow:
IF The first seal number in the EBSBCCX segment is valid (not spaces or low-values)
AND Storing the seal number data
THEN:
• M7-SEAL-NUMBER-1 is moved to GCSCCS56-SEAL-NUMBER at the current seal counter position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebsbccx segment has been retrieved and first seal number processed.
Trigger Criteria:
Context: An EBSBCCX segment has been retrieved and first seal number processed
Applied to: Seal Number 2 not empty
Action: Checking the second seal number field (M7-SEAL-NUMBER-2)
Logic Flow:
IF An EBSBCCX segment has been retrieved and first seal number processed
AND Checking the second seal number field (M7-SEAL-NUMBER-2)
THEN:
• The seal number is processed only if it is not equal to spaces or low-values
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when second seal number in the ebsbccx segment is valid (not spaces or low-values).
Trigger Criteria:
Context: The second seal number in the EBSBCCX segment is valid (not spaces or low-values)
Applied to: Store Seal Number 2 in array
Action: Storing the seal number data
Logic Flow:
IF The second seal number in the EBSBCCX segment is valid (not spaces or low-values)
AND Storing the seal number data
THEN:
• M7-SEAL-NUMBER-2 is moved to GCSCCS56-SEAL-NUMBER at the current seal counter position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when ebsbccx segment has been retrieved and previous seal numbers processed.
Trigger Criteria:
Context: An EBSBCCX segment has been retrieved and previous seal numbers processed
Applied to: Seal Number 3 not empty
Action: Checking the third seal number field (M7-SEAL-NUMBER-3)
Logic Flow:
IF An EBSBCCX segment has been retrieved and previous seal numbers processed
AND Checking the third seal number field (M7-SEAL-NUMBER-3)
THEN:
• The seal number is processed only if it is not equal to spaces or low-values
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when ebsbccx segment has been retrieved and previous seal numbers processed.
Trigger Criteria:
Context: An EBSBCCX segment has been retrieved and previous seal numbers processed
Applied to: Seal Number 4 not empty
Action: Checking the fourth seal number field (M7-SEAL-NUMBER-4)
Logic Flow:
IF An EBSBCCX segment has been retrieved and previous seal numbers processed
AND Checking the fourth seal number field (M7-SEAL-NUMBER-4)
THEN:
• The seal number is processed only if it is not equal to spaces or low-values
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when third seal number in the ebsbccx segment is valid (not spaces or low-values).
Trigger Criteria:
Context: The third seal number in the EBSBCCX segment is valid (not spaces or low-values)
Applied to: Store Seal Number 3 in array
Action: Storing the seal number data
Logic Flow:
IF The third seal number in the EBSBCCX segment is valid (not spaces or low-values)
AND Storing the seal number data
THEN:
• M7-SEAL-NUMBER-3 is moved to GCSCCS56-SEAL-NUMBER at the current seal counter position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when fourth seal number in the ebsbccx segment is valid (not spaces or low-values).
Trigger Criteria:
Context: The fourth seal number in the EBSBCCX segment is valid (not spaces or low-values)
Applied to: Store Seal Number 4 in array
Action: Storing the seal number data
Logic Flow:
IF The fourth seal number in the EBSBCCX segment is valid (not spaces or low-values)
AND Storing the seal number data
THEN:
• M7-SEAL-NUMBER-4 is moved to GCSCCS56-SEAL-NUMBER at the current seal counter position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when all seal numbers from the current ebsbccx segment have been processed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All seal numbers from the current EBSBCCX segment have been processed
Applied to: Increment EBSBCCX segment counter
Action: Moving to the next segment
Logic Flow:
IF All seal numbers from the current EBSBCCX segment have been processed
AND Moving to the next segment
THEN:
• The EBSBCCX segment counter (WS-SUB-CX) is incremented by 1
R-GCCCBOL-cbl-00147 (+9)File: GCCCBOL.cblBusiness Rule: Find Multi
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when multi-bill shipment requires ccn processing.
Trigger Criteria:
Context: A multi-bill shipment requires CCN processing
Applied to: Get First EBSBCCR Record
Action: The system starts the CCN retrieval process
Logic Flow:
IF A multi-bill shipment requires CCN processing
AND The system starts the CCN retrieval process
THEN:
• The system retrieves the first EBSBCCR record and initializes sequence counter to 0
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when system attempts to retrieve ebsbccr record for ccn processing.
Trigger Criteria:
Context: The system attempts to retrieve EBSBCCR record for CCN processing
Applied to: EBSBCCR Record Found?
Action: The EBSBCCR record retrieval is executed
Logic Flow:
IF The system attempts to retrieve EBSBCCR record for CCN processing
AND The EBSBCCR record retrieval is executed
THEN:
• If EBSBCCR record is found, continue with CCN index initialization, otherwise terminate CCN processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when ebsbccr record is successfully found.
Trigger Criteria:
Context: EBSBCCR record is successfully found
Applied to: Initialize CCN Index to 1
Action: CCN processing begins
Logic Flow:
IF EBSBCCR record is successfully found
AND CCN processing begins
THEN:
• The CCN array index is set to 1 and EBSBCCX indicator is cleared
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when ccn processing is active with valid ccn index.
Trigger Criteria:
Context: CCN processing is active with valid CCN index
Applied to: Get EBSBCCX Segment with Type 'RF'
Action: The system searches for EBSBCCX segments
Logic Flow:
IF CCN processing is active with valid CCN index
AND The system searches for EBSBCCX segments
THEN:
• The system retrieves EBSBCCX segment with type 'RF' using current sequence number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system attempts to retrieve ebsbccx segment with type 'rf'.
Trigger Criteria:
Context: The system attempts to retrieve EBSBCCX segment with type 'RF'
Applied to: EBSBCCX Segment Found?
Action: EBSBCCX segment retrieval is executed or sequence reaches 99
Logic Flow:
IF The system attempts to retrieve EBSBCCX segment with type 'RF'
AND EBSBCCX segment retrieval is executed or sequence reaches 99
THEN:
• If EBSBCCX segment is not found or sequence equals 99, terminate processing, otherwise continue with EBSBCCY processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid ebsbccx segment with type 'rf' is found.
Trigger Criteria:
Context: Valid EBSBCCX segment with type 'RF' is found
Applied to: Initialize EBSBCCY Processing
Action: EBSBCCY processing begins
Logic Flow:
IF Valid EBSBCCX segment with type 'RF' is found
AND EBSBCCY processing begins
THEN:
• The system clears EBSBCCY indicator and segment data, sets type to 'CR' and initializes sequence to 0
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when ebsbccy processing is initialized with type 'cr'.
Trigger Criteria:
Context: EBSBCCY processing is initialized with type 'CR'
Applied to: Search for EBSBCCY Segment
Action: The system searches for EBSBCCY segments until sequence reaches 99 or segment is not found or XC qualifier is found
Logic Flow:
IF EBSBCCY processing is initialized with type 'CR'
AND The system searches for EBSBCCY segments until sequence reaches 99 or segment is not found or XC qualifier is found
THEN:
• The system increments sequence and retrieves EBSBCCY segment until termination condition is met
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when ebsbccy segment search is completed.
Trigger Criteria:
Context: EBSBCCY segment search is completed
Applied to: Found EBSBCCY with Qualifier 'XC'?
Action: The system checks the segment qualification
Logic Flow:
IF EBSBCCY segment search is completed
AND The system checks the segment qualification
THEN:
• If EBSBCCY segment is not found or qualifier is not 'XC', skip to next EBSBCCX segment, otherwise proceed with CCN comparison
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when ebsbccy segment with 'xc' qualifier is found.
Trigger Criteria:
Context: EBSBCCY segment with 'XC' qualifier is found
Applied to: CCN Different from Current?
Action: The system compares the CCN reference number with current cargo control number
Logic Flow:
IF EBSBCCY segment with 'XC' qualifier is found
AND The system compares the CCN reference number with current cargo control number
THEN:
• If CCN equals current cargo control number, skip storage and continue to next segment, otherwise store the CCN
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when ccn is different from current cargo control number.
Trigger Criteria:
Context: CCN is different from current cargo control number
Applied to: Store CCN in Array
Action: The system stores the CCN
Logic Flow:
IF CCN is different from current cargo control number
AND The system stores the CCN
THEN:
• The CCN reference number is moved to CCN array at current index position and index is incremented by 1
R-GCCCBOL-cbl-00157 (+11)File: GCCCBOL.cblBusiness Rule: Process Multi
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when multi-bill n10 processing is starting.
Trigger Criteria:
Context: Multi-bill N10 processing is starting
Applied to: Initialize EBSBCCX and EBSBCCY indicators
Action: The system begins processing multi-bill N10 data
Logic Flow:
IF Multi-bill N10 processing is starting
AND The system begins processing multi-bill N10 data
THEN:
• EBSBCCX and EBSBCCY processing indicators are cleared to spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when multi-bill processing is active and a sequence number is provided.
Trigger Criteria:
Context: Multi-bill processing is active and a sequence number is provided
Applied to: Get EBSBCCX segment with type 'RF'
Action: The system searches for EBSBCCX segments
Logic Flow:
IF Multi-bill processing is active and a sequence number is provided
AND The system searches for EBSBCCX segments
THEN:
• The system retrieves segments with type 'RF' using the current sequence number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when multi-bill n10 processing is active.
Trigger Criteria:
Context: Multi-bill N10 processing is active
Applied to: Set EBSBCCX not found
Action: The sequence number reaches 99
Logic Flow:
IF Multi-bill N10 processing is active
AND The sequence number reaches 99
THEN:
• The system sets EBSBCCX not found indicator to terminate processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid ebsbccx segment is found.
Trigger Criteria:
Context: A valid EBSBCCX segment is found
Applied to: Set type to 'CR' and sequence to 0
Action: The system prepares to search for related cargo data
Logic Flow:
IF A valid EBSBCCX segment is found
AND The system prepares to search for related cargo data
THEN:
• The system sets type to 'CR', initializes sequence to 0, and clears EBSBCCY indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo reference segment search is initiated.
Trigger Criteria:
Context: Cargo reference segment search is initiated
Applied to: Loop until sequence = 99 or CCN matches or segment not found
Action: The system loops through EBSBCCY segments
Logic Flow:
IF Cargo reference segment search is initiated
AND The system loops through EBSBCCY segments
THEN:
• The system continues until sequence equals 99 OR cargo control number matches current CCN OR segment is not found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when ebsbccy segment is retrieved with reference number qualifier 'xc'.
Trigger Criteria:
Context: An EBSBCCY segment is retrieved with reference number qualifier 'XC'
Applied to: CCN matches cargo control number
Action: The system compares the reference number with the current cargo control number
Logic Flow:
IF An EBSBCCY segment is retrieved with reference number qualifier 'XC'
AND The system compares the reference number with the current cargo control number
THEN:
• Processing continues only if the reference number matches the cargo control number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when matching cargo control number is found.
Trigger Criteria:
Context: A matching cargo control number is found
Applied to: Get QD type EBSBCCY segment with sequence 1
Action: The system searches for quantity description data
Logic Flow:
IF A matching cargo control number is found
AND The system searches for quantity description data
THEN:
• The system retrieves EBSBCCY segment with type 'QD' and sequence number 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when qd type segment is found with n10 quantity data.
Trigger Criteria:
Context: A QD type segment is found with N10 quantity data
Applied to: Extract quantity from N10 quantity field
Action: The system processes the quantity field
Logic Flow:
IF A QD type segment is found with N10 quantity data
AND The system processes the quantity field
THEN:
• The system extracts numeric characters from right to left, removes leading spaces, replaces them with zeros, and stores the formatted quantity in cargo lading quantity
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid qd segment with n10 data is processed.
Trigger Criteria:
Context: A valid QD segment with N10 data is processed
Applied to: Move country code to origin country
Action: The system extracts country information
Logic Flow:
IF A valid QD segment with N10 data is processed
AND The system extracts country information
THEN:
• The system moves the N10 country code to the cargo origin country field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when qd segment with sequence 1 is processed.
Trigger Criteria:
Context: A QD segment with sequence 1 is processed
Applied to: Store N10 description in description array
Action: The N10 description field is not empty and not low-values
Logic Flow:
IF A QD segment with sequence 1 is processed
AND The N10 description field is not empty and not low-values
THEN:
• The system stores the N10 description in the description array at the current index and increments the index
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when first qd segment has been processed.
Trigger Criteria:
Context: The first QD segment has been processed
Applied to: Get QD type EBSBCCY segment with sequence 2
Action: The system searches for additional quantity description data
Logic Flow:
IF The first QD segment has been processed
AND The system searches for additional quantity description data
THEN:
• The system retrieves EBSBCCY segment with type 'QD' and sequence number 2
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when second qd segment is found and processed.
Trigger Criteria:
Context: A second QD segment is found and processed
Applied to: Store second N10 description in array
Action: The second N10 description field is not empty and not low-values
Logic Flow:
IF A second QD segment is found and processed
AND The second N10 description field is not empty and not low-values
THEN:
• The system stores the second N10 description in the description array at the current index and increments the index
R-GCCCBOL-cbl-00169 (+8)File: GCCCBOL.cblBusiness Rule: Process Lading Descriptions
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when bol segment sequence number 1 exists in ebsbccm.
Trigger Criteria:
Context: A BOL segment sequence number 1 exists in EBSBCCM
Applied to: Get First Lading Description from EBSBCCM
Action: The system processes the first lading description segment
Logic Flow:
IF A BOL segment sequence number 1 exists in EBSBCCM
AND The system processes the first lading description segment
THEN:
• The primary lading description is extracted and added to the description array if not empty or low-values
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when lading description is retrieved from l5-lading-desc field.
Trigger Criteria:
Context: A lading description is retrieved from L5-LADING-DESC field
Applied to: Lading Description Found?
Action: The description is not equal to spaces and not equal to low-values
Logic Flow:
IF A lading description is retrieved from L5-LADING-DESC field
AND The description is not equal to spaces and not equal to low-values
THEN:
• The description is considered valid and added to the description array with index increment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when bol segments exist with sequence numbers from 2 to 25.
Trigger Criteria:
Context: BOL segments exist with sequence numbers from 2 to 25
Applied to: Loop Through Remaining EBSBCCM Segments
Action: The system loops through each segment until no more segments found or maximum reached
Logic Flow:
IF BOL segments exist with sequence numbers from 2 to 25
AND The system loops through each segment until no more segments found or maximum reached
THEN:
• Each valid lading description is extracted and processed for additional content
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when bol segment contains additional lading description fields.
Trigger Criteria:
Context: A BOL segment contains additional lading description fields
Applied to: Get Additional BOL Descriptions for Current Segment
Action: The system processes L5-ADDITIONAL-LADING-DESC array with index from 1 to 7
Logic Flow:
IF A BOL segment contains additional lading description fields
AND The system processes L5-ADDITIONAL-LADING-DESC array with index from 1 to 7
THEN:
• Each non-empty additional description line is added to the description array
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when special handling codes exist in fastway system with index from 1 to 7.
Trigger Criteria:
Context: Special handling codes exist in Fastway system with index from 1 to 7
Applied to: Extract Special Instructions from Fastway
Action: The special handling code equals 'VA' or 'VS' or 'EV' and description index is less than 3
Logic Flow:
IF Special handling codes exist in Fastway system with index from 1 to 7
AND The special handling code equals 'VA' or 'VS' or 'EV' and description index is less than 3
THEN:
• The special handling code and instruction are formatted and added to special instruction array
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when automotive shipment data exists in mv or v2/co segments.
Trigger Criteria:
Context: Automotive shipment data exists in MV or V2/CO segments
Applied to: Retrieve VIN Numbers
Action: The system processes vehicle identification numbers from available segments
Logic Flow:
IF Automotive shipment data exists in MV or V2/CO segments
AND The system processes vehicle identification numbers from available segments
THEN:
• Each VIN is prefixed with 'VIN' text and added to description array up to maximum limit
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when description data has been collected and is not empty.
Trigger Criteria:
Context: Description data has been collected and is not empty
Applied to: Compress All Descriptions Using GCCCOMP
Action: The system calls GCCCOMP program with description arrays and length parameters 45000 and 22500
Logic Flow:
IF Description data has been collected and is not empty
AND The system calls GCCCOMP program with description arrays and length parameters 45000 and 22500
THEN:
• The descriptions are compressed and formatted into primary and extra description fields
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when extra description data exists after compression and first 2 positions are not spaces or low-values.
Trigger Criteria:
Context: Extra description data exists after compression and first 2 positions are not spaces or low-values
Applied to: Store Extra Descriptions in GCSCCS53 Using GCCDESC
Action: The system processes extra descriptions beyond primary capacity
Logic Flow:
IF Extra description data exists after compression and first 2 positions are not spaces or low-values
AND The system processes extra descriptions beyond primary capacity
THEN:
• GCCDESC program is called to store extra descriptions with cargo control number and insert operation
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when description processing is complete and primary description is not empty.
Trigger Criteria:
Context: Description processing is complete and primary description is not empty
Applied to: Move Final Description to Cargo Report
Action: The system finalizes cargo description data
Logic Flow:
IF Description processing is complete and primary description is not empty
AND The system finalizes cargo description data
THEN:
• The compressed primary description is moved to GCCC-LADING-DESCRIPTION field
R-GCCCBOL-cbl-00178 (+7)File: GCCCBOL.cblBusiness Rule: Get Additional Descriptions
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to retrieve additional lading descriptions from bol segments.
Trigger Criteria:
Context: The system needs to retrieve additional lading descriptions from BOL segments
Applied to: Initialize EBSBCRT-AD Found Flag
Action: The additional description retrieval process begins
Logic Flow:
IF The system needs to retrieve additional lading descriptions from BOL segments
AND The additional description retrieval process begins
THEN:
• The EBSBCRT-AD found flag is set to TRUE and description sequence counter is initialized to 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is processing additional lading descriptions.
Trigger Criteria:
Context: The system is processing additional lading descriptions
Applied to: Description Sequence <= 10 AND EBSBCRT-AD Found?
Action: The description sequence counter is evaluated
Logic Flow:
IF The system is processing additional lading descriptions
AND The description sequence counter is evaluated
THEN:
• Processing continues only if sequence counter is 10 or less AND EBSBCRT-AD segments are still available
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to get additional description data for current sequence.
Trigger Criteria:
Context: The system needs to get additional description data for current sequence
Applied to: Retrieve EBSBCRT-AD Segment from BOL
Action:EBSBCRT-AD segment retrieval is requested with current sequence number
Logic Flow:
IF The system needs to get additional description data for current sequence
ANDEBSBCRT-AD segment retrieval is requested with current sequence number
THEN:
• The system attempts to retrieve the EBSBCRT-AD segment from BOL data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebsbcrt-ad segment retrieval has been attempted.
Trigger Criteria:
Context: An EBSBCRT-AD segment retrieval has been attempted
Applied to:EBSBCRT-AD Segment Found?
Action: The system checks the retrieval result
Logic Flow:
IF An EBSBCRT-AD segment retrieval has been attempted
AND The system checks the retrieval result
THEN:
• If segment is found, processing continues with description extraction, otherwise sequence counter is incremented
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when ebsbcrt-ad segment has been successfully retrieved.
Trigger Criteria:
Context: An EBSBCRT-AD segment has been successfully retrieved
Applied to: Additional Description Index <= 7?
Action: The system processes individual additional descriptions within the segment
Logic Flow:
IF An EBSBCRT-AD segment has been successfully retrieved
AND The system processes individual additional descriptions within the segment
THEN:
• Processing continues for additional description index from 1 to 7
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when additional lading description field is being processed.
Trigger Criteria:
Context: An additional lading description field is being processed
Applied to: Additional Lading Description Not Empty?
Action: The system checks the description content
Logic Flow:
IF An additional lading description field is being processed
AND The system checks the description content
THEN:
• If description is not empty (not spaces), it is moved to the description array, otherwise it is skipped
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when valid additional lading description has been identified.
Trigger Criteria:
Context: A valid additional lading description has been identified
Applied to: Move Additional Lading Description to Description Array
Action: The description needs to be stored
Logic Flow:
IF A valid additional lading description has been identified
AND The description needs to be stored
THEN:
• The additional lading description is moved to the description array at the current index position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when additional lading description has been successfully stored.
Trigger Criteria:
Context: An additional lading description has been successfully stored
Applied to: Increment Description Array Index
Action: The system needs to prepare for the next description
Logic Flow:
IF An additional lading description has been successfully stored
AND The system needs to prepare for the next description
THEN:
• The description array index is incremented by 1
R-GCCCBOL-cbl-00186 (+7)File: GCCCBOL.cblBusiness Rule: Extract Special Instructions
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to process special handling instructions from fastway data.
Trigger Criteria:
Context: The system needs to process special handling instructions from Fastway data
Applied to: Initialize Special Instruction Index to 1
Action: The special instruction extraction process begins
Logic Flow:
IF The system needs to process special handling instructions from Fastway data
AND The special instruction extraction process begins
THEN:
• The special instruction index should be set to 1 to start processing from the first available slot
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when special handling records exist in the fastway system.
Trigger Criteria:
Context: Special handling records exist in the Fastway system
Applied to: Loop Through Special Handling Records Index 1 to 7
Action: Processing special handling instructions
Logic Flow:
IF Special handling records exist in the Fastway system
AND Processing special handling instructions
THEN:
• The system should loop through special handling records from index 1 to 7 AND continue until either all 7 records are processed OR 3 special instructions are found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling record is being processed.
Trigger Criteria:
Context: A special handling record is being processed
Applied to: Special Handling Code = VA, VS, or EV?
Action: The system checks the special handling code
Logic Flow:
IF A special handling record is being processed
AND The system checks the special handling code
THEN:
• The record should be processed only if the special handling code equals 'VA' OR 'VS' OR 'EV'
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when special handling record has a code of va, vs, or ev.
Trigger Criteria:
Context: A special handling record has a code of VA, VS, or EV
Applied to: Extract Special Handling Code
Action: The system processes the qualified record
Logic Flow:
IF A special handling record has a code of VA, VS, or EV
AND The system processes the qualified record
THEN:
• The special handling code should be extracted and stored in the work area
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling record has been qualified for processing.
Trigger Criteria:
Context: A special handling record has been qualified for processing
Applied to: Extract Special Handling Instruction
Action: The system extracts the special handling code
Logic Flow:
IF A special handling record has been qualified for processing
AND The system extracts the special handling code
THEN:
• The corresponding special handling instruction text should also be extracted and stored
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling code and instruction have been extracted from a qualified record.
Trigger Criteria:
Context: Special handling code and instruction have been extracted from a qualified record
Applied to: Store Code and Instruction in Work Area
Action: The system processes the extracted data
Logic Flow:
IF Special handling code and instruction have been extracted from a qualified record
AND The system processes the extracted data
THEN:
• The code and instruction should be combined and stored in the designated work area slot
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when special instruction has been successfully stored in the work area.
Trigger Criteria:
Context: A special instruction has been successfully stored in the work area
Applied to: Move to Next Special Instruction Slot
Action: The system completes processing of one special handling record
Logic Flow:
IF A special instruction has been successfully stored in the work area
AND The system completes processing of one special handling record
THEN:
• The special instruction index should be incremented by 1 to point to the next available slot
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is processing special handling records.
Trigger Criteria:
Context: The system is processing special handling records
Applied to: More Records to Process AND Less than 3 Instructions Found?
Action: Evaluating whether to continue the processing loop
Logic Flow:
IF The system is processing special handling records
AND Evaluating whether to continue the processing loop
THEN:
• Processing should continue if the special handling index is less than or equal to 7 AND the special instruction index is less than 3
Business Justification: Governs the functional prerequisites and system routing when shipment contains motor vehicle segments with mv type records.
Trigger Criteria:
Context: A shipment contains motor vehicle segments with MV type records
Applied to: Get MV Loaded Shipments VINs
Action: The system processes VIN retrieval and searches through MV segments sequentially
Logic Flow:
IF A shipment contains motor vehicle segments with MV type records
AND The system processes VIN retrieval and searches through MV segments sequentially
THEN:
• Each valid vehicle ID number from MV segments is extracted, formatted with 'VIN' prefix, and stored in the VIN array with incremented counter
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when vin retrieval process is starting for motor vehicle segments.
Trigger Criteria:
Context: The VIN retrieval process is starting for motor vehicle segments
Applied to: Initialize VIN Counter to Zero
Action: The system begins MV segment processing
Logic Flow:
IF The VIN retrieval process is starting for motor vehicle segments
AND The system begins MV segment processing
THEN:
• The VIN quantity counter is set to zero to track the number of VINs found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to retrieve motor vehicle segments.
Trigger Criteria:
Context: The system needs to retrieve motor vehicle segments
Applied to: Set MV Type Filter
Action: VIN processing begins for MV segments
Logic Flow:
IF The system needs to retrieve motor vehicle segments
AND VIN processing begins for MV segments
THEN:
• The type filter is set to 'MV' to identify motor vehicle records
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when motor vehicle segments exist in the shipment data.
Trigger Criteria:
Context: Motor vehicle segments exist in the shipment data
Applied to: Loop Through MV Segments
Action: The system loops through MV segments with incrementing sequence numbers
Logic Flow:
IF Motor vehicle segments exist in the shipment data
AND The system loops through MV segments with incrementing sequence numbers
THEN:
• Each MV segment is processed in order until either no more segments are found or the maximum VIN limit is reached
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when motor vehicle segment is found with a valid vehicle id number.
Trigger Criteria:
Context: A motor vehicle segment is found with a valid vehicle ID number
Applied to: Extract Vehicle ID Number, Format VIN with 'VIN' Prefix, Store in VIN Array
Action: The vehicle ID number is not spaces or low-values
Logic Flow:
IF A motor vehicle segment is found with a valid vehicle ID number
AND The vehicle ID number is not spaces or low-values
THEN:
• The system formats the vehicle ID with 'VIN' prefix and stores it in the VIN description array, then increments the VIN counter
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when motor vehicle segment processing has completed.
Trigger Criteria:
Context: Motor vehicle segment processing has completed
Applied to: VIN Quantity = 0?
Action: The VIN quantity counter equals zero indicating no VINs were found in MV segments
Logic Flow:
IF Motor vehicle segment processing has completed
AND The VIN quantity counter equals zero indicating no VINs were found in MV segments
THEN:
• The system initiates co-loaded shipment VIN processing as an alternative source
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when no vins were found in motor vehicle segments.
Trigger Criteria:
Context: No VINs were found in motor vehicle segments
Applied to: Initialize Co-Load Process
Action: Co-loaded shipment processing begins
Logic Flow:
IF No VINs were found in motor vehicle segments
AND Co-loaded shipment processing begins
THEN:
• The system resets VIN counter to zero and prepares to search RF reference segments for consolidated shipments
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when co-loaded shipment processing is active.
Trigger Criteria:
Context: Co-loaded shipment processing is active
Applied to: Get RF Reference Segment
Action: The system searches for RF type segments with sequential numbering
Logic Flow:
IF Co-loaded shipment processing is active
AND The system searches for RF type segments with sequential numbering
THEN:
• Each RF segment is retrieved to check for consolidated shipment indicators
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when rf reference segment has been retrieved.
Trigger Criteria:
Context: An RF reference segment has been retrieved
Applied to: Has Consolidated Shipment Number?
Action: The system checks the segment for consolidated shipment indicators
Logic Flow:
IF An RF reference segment has been retrieved
AND The system checks the segment for consolidated shipment indicators
THEN:
• If a consolidated shipment number is present, the system proceeds to process V2 motor vehicle segments within that consolidation
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when consolidated shipment with rf segment has been identified.
Trigger Criteria:
Context: A consolidated shipment with RF segment has been identified
Applied to: Loop Through V2 Motor Vehicle Segments
Action: The system loops through V2 motor vehicle segments within the consolidation
Logic Flow:
IF A consolidated shipment with RF segment has been identified
AND The system loops through V2 motor vehicle segments within the consolidation
THEN:
• Each V2 segment is processed sequentially until no more segments are found or maximum vehicle limit is reached
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when v2 motor vehicle segment is found within a consolidated shipment.
Trigger Criteria:
Context: A V2 motor vehicle segment is found within a consolidated shipment
Applied to: Extract Co-Load Vehicle ID, Format Co-Load VIN with Prefix, Store Co-Load VIN in Array
Action: The vehicle ID number in the V2 segment is not spaces or empty
Logic Flow:
IF A V2 motor vehicle segment is found within a consolidated shipment
AND The vehicle ID number in the V2 segment is not spaces or empty
THEN:
• The system formats the vehicle ID with 'VIN' prefix, stores it in the VIN array if under the maximum limit, and increments the VIN counter
Business Justification: Ensures correct system behavior and process compliance when system has processed cargo shipment data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system has processed cargo shipment data
Applied to: Are cargo descriptions available?
Action: The description compression process is initiated
Logic Flow:
IF The system has processed cargo shipment data
AND The description compression process is initiated
THEN:
• The system should verify that cargo descriptions (WS-DESC-1) contain actual data and are not empty spaces before proceeding with compression
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo descriptions are available for compression.
Trigger Criteria:
Context: Cargo descriptions are available for compression
Applied to: Set compression parameters
Action: The compression parameters need to be set
Logic Flow:
IF Cargo descriptions are available for compression
AND The compression parameters need to be set
THEN:
• The system should set the primary description length to 45000 characters and secondary description length to 22500 characters
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when description compression parameters are configured with ws-length-1 set to 45000 and ws-length-2 set to 22500. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description compression parameters are configured with WS-LENGTH-1 set to 45000 and WS-LENGTH-2 set to 22500
Applied to: Call GCCCOMP program
Action: The description compression is required
Logic Flow:
IF Description compression parameters are configured with WS-LENGTH-1 set to 45000 and WS-LENGTH-2 set to 22500
AND The description compression is required
THEN:
• The system should call the GCCCOMP program with CCCOM control block, WS-DESC-1 source descriptions, WS-DESC-2 target descriptions, and the configured length parameters
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when gcccomp program has successfully compressed the cargo descriptions into ws-desc-gccc-description. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The GCCCOMP program has successfully compressed the cargo descriptions into WS-DESC-GCCC-DESCRIPTION
Applied to: Transfer compressed description to cargo report
Action: The compressed description is not empty spaces
Logic Flow:
IF The GCCCOMP program has successfully compressed the cargo descriptions into WS-DESC-GCCC-DESCRIPTION
AND The compressed description is not empty spaces
THEN:
• The system should move the compressed description from WS-DESC-GCCC-DESCRIPTION to GCCC-LADING-DESCRIPTION
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when description compression process has completed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The description compression process has completed
Applied to: Are there extra descriptions?
Action: Checking for additional description content
Logic Flow:
IF The description compression process has completed
AND Checking for additional description content
THEN:
• The system should verify if the first two characters of WS-DESC-GCCC-EXTRA-DESCRIPTION contain data that is not spaces or low-values
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when extra descriptions exist in ws-desc-gccc-extra-description with content that is not spaces or low-values. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Extra descriptions exist in WS-DESC-GCCC-EXTRA-DESCRIPTION with content that is not spaces or low-values
Applied to: Call GCCDESC to store excess descriptions
Action: Excess description storage is required
Logic Flow:
IF Extra descriptions exist in WS-DESC-GCCC-EXTRA-DESCRIPTION with content that is not spaces or low-values
AND Excess description storage is required
THEN:
• The system should call the GCCDESC program with CCCOM control block, GCCC-CCN-KEY cargo control number, WS-DESC-2 extra descriptions, and ISRT insert operation code
R-GCCCBOL-cbl-00233 (+2)File: GCCCBOL.cblBusiness Rule: Store Extra Descriptions
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system has processed cargo description data and populated the extra description field.
Trigger Criteria:
Context: The system has processed cargo description data and populated the extra description field
Applied to: Check Extra Description Data
Action: The extra description field contains data that is not empty spaces and not low-values
Logic Flow:
IF The system has processed cargo description data and populated the extra description field
AND The extra description field contains data that is not empty spaces and not low-values
THEN:
• The system calls the GCCDESC program to store the extra description data in GCSCCS53 segments using the cargo control number key and insert operation
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system has processed cargo description data.
Trigger Criteria:
Context: The system has processed cargo description data
Applied to: Extra Description Not Empty?
Action: The extra description field is empty spaces or contains low-values in the first two positions
Logic Flow:
IF The system has processed cargo description data
AND The extra description field is empty spaces or contains low-values in the first two positions
THEN:
• The system skips the description storage process and continues with normal processing flow
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when extra description data exists and is valid for storage. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Extra description data exists and is valid for storage
Applied to: Call GCCDESC Program
Action: The system needs to store overflow description information
Logic Flow:
IF Extra description data exists and is valid for storage
AND The system needs to store overflow description information
THEN:
• The system calls the GCCDESC program with the cargo control number key, extra description data, and insert operation flag
R-GCCCBOL-cbl-00236 (+7)File: GCCCBOL.cblBusiness Rule: Process CSA Data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with destination and haulage carrier information.
Trigger Criteria:
Context: A shipment with destination and haulage carrier information
Applied to: Destination = 105 AND No Haulage Rights?
Action: The destination is 105 (Canada) AND there is no haulage rights carrier assigned
Logic Flow:
IF A shipment with destination and haulage carrier information
AND The destination is 105 (Canada) AND there is no haulage rights carrier assigned
THEN:
• The shipment is eligible for CSA processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol key is available for the shipment.
Trigger Criteria:
Context: An EDI BOL key is available for the shipment
Applied to: Check BOL for CSA
Action: Searching for N1 importer segments with entity ID 'IM', non-blank name, qualifier 'M5'/'BN'/'AI', and non-blank ID code
Logic Flow:
IF An EDI BOL key is available for the shipment
AND Searching for N1 importer segments with entity ID 'IM', non-blank name, qualifier 'M5'/'BN'/'AI', and non-blank ID code
THEN:
• Return the importer segment if found, otherwise indicate not found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when fastway shipment data is available and edi bol importer was not found.
Trigger Criteria:
Context: Fastway shipment data is available and EDI BOL importer was not found
Applied to: Check Fastway for CSA
Action: Searching for N1-01 'IM' segments with N1-02 importer name, N1-03 qualifier ('M5'/'BN'/'AI'), and N1-04 business number
Logic Flow:
IF Fastway shipment data is available and EDI BOL importer was not found
AND Searching for N1-01 'IM' segments with N1-02 importer name, N1-03 qualifier ('M5'/'BN'/'AI'), and N1-04 business number
THEN:
• Extract and return the importer information if complete sequence is found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when importer record with entity id 'im', non-blank name, and business number qualifier. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An importer record with entity ID 'IM', non-blank name, and business number qualifier
Applied to: Qualifies as CSA?
Action: The business number qualifier is 'M5'
Logic Flow:
IF An importer record with entity ID 'IM', non-blank name, and business number qualifier
AND The business number qualifier is 'M5'
THEN:
• Set CSA indicator to ON and copy all importer data including name, qualifier, and business number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when importer record with entity id 'im', non-blank name, and business number qualifier. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An importer record with entity ID 'IM', non-blank name, and business number qualifier
Applied to: Copy Importer Data
Action: The business number qualifier is 'BN' or 'AI' (not 'M5')
Logic Flow:
IF An importer record with entity ID 'IM', non-blank name, and business number qualifier
AND The business number qualifier is 'BN' or 'AI' (not 'M5')
THEN:
• Copy importer data (name, qualifier, business number) without setting CSA indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment being processed for csa.
Trigger Criteria:
Context: A shipment being processed for CSA
Applied to: Set CSA Indicator OFF
Action: The shipment does not meet destination 105 criteria OR has haulage carrier OR no valid importer found
Logic Flow:
IF A shipment being processed for CSA
AND The shipment does not meet destination 105 criteria OR has haulage carrier OR no valid importer found
THEN:
• Set CSA indicator to OFF
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when n1 segment from edi bol data.
Trigger Criteria:
Context: An N1 segment from EDI BOL data
Applied to: Extract Importer Information
Action: The segment has entity ID code 'IM' AND name is not blank AND ID code qualifier is 'M5', 'BN', or 'AI' AND ID code is not blank
Logic Flow:
IF An N1 segment from EDI BOL data
AND The segment has entity ID code 'IM' AND name is not blank AND ID code qualifier is 'M5', 'BN', or 'AI' AND ID code is not blank
THEN:
• Consider the importer data valid and complete for CSA processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when fastway shipment data segments.
Trigger Criteria:
Context: Fastway shipment data segments
Applied to: Validate CSA Qualification
Action: A complete sequence exists with N1-01 'IM', N1-02 importer name (not blank), N1-03 qualifier ('M5'/'BN'/'AI'), and N1-04 business number (not blank)
Logic Flow:
IF Fastway shipment data segments
AND A complete sequence exists with N1-01 'IM', N1-02 importer name (not blank), N1-03 qualifier ('M5'/'BN'/'AI'), and N1-04 business number (not blank)
THEN:
• Consider the importer information valid for CSA processing
R-GCCCBOL-cbl-00263 (+12)File: GCCCBOL.cblBusiness Rule: Extract Importer Information
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when valid edi bol key exists for the shipment.
Trigger Criteria:
Context: A valid EDI BOL key exists for the shipment
Applied to: Get N1 Importer Segment from BOL
Action: The system searches for N1 importer segment with type 'SC' and sequence number 1
Logic Flow:
IF A valid EDI BOL key exists for the shipment
AND The system searches for N1 importer segment with type 'SC' and sequence number 1
THEN:
• The system retrieves the importer segment data and sets the found indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when n1 segment has been retrieved from the edi bol.
Trigger Criteria:
Context: An N1 segment has been retrieved from the EDI BOL
Applied to: Check Entity ID Code = 'IM'
Action: The system checks the entity ID code in the N1 segment
Logic Flow:
IF An N1 segment has been retrieved from the EDI BOL
AND The system checks the entity ID code in the N1 segment
THEN:
• The system proceeds only if the entity ID code equals 'IM' (Importer)
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment with entity id code 'im' has been found.
Trigger Criteria:
Context: An N1 segment with entity ID code 'IM' has been found
Applied to: Valid Importer Name?
Action: The system checks the N1 name field
Logic Flow:
IF An N1 segment with entity ID code 'IM' has been found
AND The system checks the N1 name field
THEN:
• The system proceeds only if the name field is not spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when valid importer n1 segment with name and id code exists.
Trigger Criteria:
Context: A valid importer N1 segment with name and ID code exists
Applied to: Qualifier = 'M5'?
Action: The system checks if the ID code qualifier equals 'M5'
Logic Flow:
IF A valid importer N1 segment with name and ID code exists
AND The system checks if the ID code qualifier equals 'M5'
THEN:
• The system sets CSA indicator ON and copies importer data to output fields
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid importer n1 segment exists with id code qualifier not equal to 'm5'.
Trigger Criteria:
Context: A valid importer N1 segment exists with ID code qualifier not equal to 'M5'
Applied to: Qualifier = 'BN'?
Action: The system checks if the ID code qualifier equals 'BN'
Logic Flow:
IF A valid importer N1 segment exists with ID code qualifier not equal to 'M5'
AND The system checks if the ID code qualifier equals 'BN'
THEN:
• The system copies importer data to output fields without setting CSA indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when valid importer n1 segment exists with id code qualifier not equal to 'm5' or 'bn'.
Trigger Criteria:
Context: A valid importer N1 segment exists with ID code qualifier not equal to 'M5' or 'BN'
Applied to: Qualifier = 'AI'?
Action: The system checks if the ID code qualifier equals 'AI'
Logic Flow:
IF A valid importer N1 segment exists with ID code qualifier not equal to 'M5' or 'BN'
AND The system checks if the ID code qualifier equals 'AI'
THEN:
• The system copies importer data to output fields without setting CSA indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid n1 importer segment with acceptable qualifier (m5, bn, or ai) has been found. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid N1 importer segment with acceptable qualifier (M5, BN, or AI) has been found
Applied to: Copy BOL Importer Data
Action: The system processes the importer data
Logic Flow:
IF A valid N1 importer segment with acceptable qualifier (M5, BN, or AI) has been found
AND The system processes the importer data
THEN:
• The system moves N1 name to importer field, ID code qualifier to business number qualifier field, and ID code to business number field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when no valid importer segment was found in edi bol data.
Trigger Criteria:
Context: No valid importer segment was found in EDI BOL data
Applied to: Search Fastway for N1-01 IM
Action: The system searches through Fastway shipment mine segments
Logic Flow:
IF No valid importer segment was found in EDI BOL data
AND The system searches through Fastway shipment mine segments
THEN:
• The system looks for data lines containing 'N1-01 IM' pattern
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when n1-01 im segment has been found in fastway data.
Trigger Criteria:
Context: An N1-01 IM segment has been found in Fastway data
Applied to: Extract N1-02 Importer Name
Action: The system processes the next data line expecting N1-02 format
Logic Flow:
IF An N1-01 IM segment has been found in Fastway data
AND The system processes the next data line expecting N1-02 format
THEN:
• The system extracts the importer name from positions 8-28 of the N1-02 data line
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when n1-02 importer name has been extracted from fastway data.
Trigger Criteria:
Context:N1-02 importer name has been extracted from Fastway data
Applied to: Check N1-03 Qualifier
Action: The system checks the next data line for N1-03 format
Logic Flow:
IFN1-02 importer name has been extracted from Fastway data
AND The system checks the next data line for N1-03 format
THEN:
• The system validates if the qualifier is 'M5', 'BN', or 'AI' and extracts the qualifier type
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid n1-03 qualifier has been found in fastway data.
Trigger Criteria:
Context: A valid N1-03 qualifier has been found in Fastway data
Applied to: Extract N1-04 Business Number
Action: The system processes the next data line expecting N1-04 format
Logic Flow:
IF A valid N1-03 qualifier has been found in Fastway data
AND The system processes the next data line expecting N1-04 format
THEN:
• The system extracts the business number from positions 8-17 of the N1-04 data line
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when business number has been extracted from fastway n1-04 segment.
Trigger Criteria:
Context: Business number has been extracted from Fastway N1-04 segment
Applied to: Set CSA Indicator ON
Action: The system checks if the business number qualifier equals 'M5'
Logic Flow:
IF Business number has been extracted from Fastway N1-04 segment
AND The system checks if the business number qualifier equals 'M5'
THEN:
• The system sets CSA indicator ON
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when complete importer information has been extracted from fastway segments.
Trigger Criteria:
Context: Complete importer information has been extracted from Fastway segments
Applied to: Store Importer Information
Action: The system finalizes the importer data processing
Logic Flow:
IF Complete importer information has been extracted from Fastway segments
AND The system finalizes the importer data processing
THEN:
• The system moves the extracted business number to business number field and importer name to importer field
Business Justification: Dictates the expected operational logic and validation steps when shipment with destination road number information.
Trigger Criteria:
Context: A shipment with destination road number information
Applied to: Destination Road Number = 105?
Action: The destination road number is evaluated for CSA qualification
Logic Flow:
IF A shipment with destination road number information
AND The destination road number is evaluated for CSA qualification
THEN:
• If destination road number equals 105, proceed to check haulage carrier; otherwise set CSA indicator OFF
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with destination road number 105.
Trigger Criteria:
Context: A shipment with destination road number 105
Applied to: Haulage Right Carrier = SPACES?
Action: The haulage right carrier field is evaluated
Logic Flow:
IF A shipment with destination road number 105
AND The haulage right carrier field is evaluated
THEN:
• If haulage right carrier is empty (SPACES), proceed to check for CSA data; otherwise set CSA indicator OFF
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when qualified shipment for csa processing.
Trigger Criteria:
Context: A qualified shipment for CSA processing
Applied to: Check BOL for CSA Data
Action: EDI BOL system is checked for importer segment data
Logic Flow:
IF A qualified shipment for CSA processing
AND EDI BOL system is checked for importer segment data
THEN:
• Retrieve N1 importer segment and evaluate for valid CSA data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 importer segment retrieved from edi bol. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: N1 importer segment retrieved from EDI BOL
Applied to: CSA Data Found in BOL?
Action: The importer data is evaluated for CSA validity
Logic Flow:
IF N1 importer segment retrieved from EDI BOL
AND The importer data is evaluated for CSA validity
THEN:
• If entity ID is 'IM' with non-empty name and ID code qualifier is 'M5' with non-empty ID code, set CSA indicator ON and copy data; if qualifier is 'BN' or 'AI' with valid data, copy data only; otherwise check Fastway system
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when no valid csa data found in edi bol system.
Trigger Criteria:
Context: No valid CSA data found in EDI BOL system
Applied to: Check Fastway for CSA Data
Action: Fastway system is searched for CSA importer information
Logic Flow:
IF No valid CSA data found in EDI BOL system
AND Fastway system is searched for CSA importer information
THEN:
• Search shipment mine segments for N1-01 IM entity data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment mine segments searched for n1-01 im entity. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Shipment mine segments searched for N1-01 IM entity
Applied to: CSA Data Found in Fastway?
Action: The Fastway importer data is evaluated for CSA validity
Logic Flow:
IF Shipment mine segments searched for N1-01 IM entity
AND The Fastway importer data is evaluated for CSA validity
THEN:
• IfN1-01 IM entity found with N1-02 name, N1-03 qualifier ('M5', 'BN', or 'AI'), andN1-04 ID code, thenif qualifier is 'M5' set CSA indicator ON and copy all data; otherwise copy data without setting CSA indicator; if no valid data found, set CSA indicator OFF
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid csa importer data found with m5 qualification. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Valid CSA importer data found with M5 qualification
Applied to: Set CSA Indicator ON
Action: CSA indicator is set to active status
Logic Flow:
IF Valid CSA importer data found with M5 qualification
AND CSA indicator is set to active status
THEN:
• Set CSA indicator ON, copy importer name to GCCC-IMPORTER, copy ID code qualifier to GCCC-BUSINESS-NBR-QUAL, and copy ID code to GCCC-BUSINESS-NBR
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment does not meet csa qualification criteria or no valid csa data found.
Trigger Criteria:
Context: Shipment does not meet CSA qualification criteria or no valid CSA data found
Applied to: Set CSA Indicator OFF
Action: CSA processing determination is completed
Logic Flow:
IF Shipment does not meet CSA qualification criteria or no valid CSA data found
AND CSA processing determination is completed
THEN:
• Set CSA indicator OFF to indicate no CSA processing required
R-GCCCBOL-cbl-00284 (+3)File: GCCCBOL.cblBusiness Rule: Copy Importer Data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when valid n1 importer segment has been found in edi bol data with entity id code 'im' and the importer name is not empty. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid N1 importer segment has been found in EDI BOL data with entity ID code 'IM' and the importer name is not empty
Applied to: Transfer Importer Name to Cargo Report
Action: The copy importer data process is executed
Logic Flow:
IF A valid N1 importer segment has been found in EDI BOL data with entity ID code 'IM' and the importer name is not empty
AND The copy importer data process is executed
THEN:
• The N1-NAME field value is transferred to the GCCC-IMPORTER field in the cargo report segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid n1 importer segment contains a business number qualifier code (m5, bn, or ai). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid N1 importer segment contains a business number qualifier code (M5, BN, or AI)
Applied to: Transfer Business Number Qualifier to Cargo Report
Action: The copy importer data process is executed
Logic Flow:
IF A valid N1 importer segment contains a business number qualifier code (M5, BN, or AI)
AND The copy importer data process is executed
THEN:
• The N1-ID-CODE-QUALIFIER field value is transferred to the GCCC-BUSINESS-NBR-QUAL field in the cargo report segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid n1 importer segment contains a business registration number that is not empty. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid N1 importer segment contains a business registration number that is not empty
Applied to: Transfer Business Number to Cargo Report
Action: The copy importer data process is executed
Logic Flow:
IF A valid N1 importer segment contains a business registration number that is not empty
AND The copy importer data process is executed
THEN:
• The N1-ID-CODE field value is transferred to the GCCC-BUSINESS-NBR field in the cargo report segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when csa importer data transfer process has completed successfully.
Trigger Criteria:
Context: The CSA importer data transfer process has completed successfully
Applied to: Log Transfer Completion with Details
Action: All importer data fields have been copied to the cargo report segment
Logic Flow:
IF The CSA importer data transfer process has completed successfully
AND All importer data fields have been copied to the cargo report segment
THEN:
• The system logs the completion with timestamp, root key, car ID, EDI BOL key, importer name, business number qualifier, and business number to the system error log
R-GCCCBOL-cbl-00288 (+6)File: GCCCBOL.cblBusiness Rule: Get Additional Cargo Description Data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo shipment exists with bol data and current description sequence counter and description array index are initialized.
Trigger Criteria:
Context: A cargo shipment exists with BOL data and current description sequence counter and description array index are initialized
Applied to: Get Additional Cargo Description Data
Action: The system processes additional cargo description segments from EBSBCRT-AD BOL segments
Logic Flow:
IF A cargo shipment exists with BOL data and current description sequence counter and description array index are initialized
AND The system processes additional cargo description segments from EBSBCRT-AD BOL segments
THEN:
• The system should retrieve up to 10 description sequences, each containing up to 7 additional lading descriptions, and store non-empty descriptions in the description array while incrementing the array index
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when system is processing additional cargo descriptions with a current description sequence counter.
Trigger Criteria:
Context: The system is processing additional cargo descriptions with a current description sequence counter
Applied to: Description Sequence <= 10?
Action: The description sequence counter exceeds 10
Logic Flow:
IF The system is processing additional cargo descriptions with a current description sequence counter
AND The description sequence counter exceeds 10
THEN:
• The system should stop processing additional description sequences and complete the operation
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system attempts to retrieve an ebsbcrt-ad segment from bol for a specific sequence.
Trigger Criteria:
Context: The system attempts to retrieve an EBSBCRT-AD segment from BOL for a specific sequence
Applied to:EBSBCRT-AD Segment Found?
Action: The EBSBCRT-AD segment is successfully found
Logic Flow:
IF The system attempts to retrieve an EBSBCRT-AD segment from BOL for a specific sequence
AND The EBSBCRT-AD segment is successfully found
THEN:
• The system should initialize description index to 1 and begin processing the segment's description data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system attempts to retrieve an ebsbcrt-ad segment from bol for a specific sequence.
Trigger Criteria:
Context: The system attempts to retrieve an EBSBCRT-AD segment from BOL for a specific sequence
Applied to:EBSBCRT-AD Segment Found?
Action: The EBSBCRT-AD segment is not found
Logic Flow:
IF The system attempts to retrieve an EBSBCRT-AD segment from BOL for a specific sequence
AND The EBSBCRT-AD segment is not found
THEN:
• The system should increment the description sequence counter and continue to the next sequence without processing description data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system is processing descriptions within an ebsbcrt-ad segment with a current description index.
Trigger Criteria:
Context: The system is processing descriptions within an EBSBCRT-AD segment with a current description index
Applied to: Description Index <= 7?
Action: The description index exceeds 7
Logic Flow:
IF The system is processing descriptions within an EBSBCRT-AD segment with a current description index
AND The description index exceeds 7
THEN:
• The system should stop processing descriptions for the current segment and increment the description sequence counter
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system is processing an additional lading description from an ebsbcrt-ad segment.
Trigger Criteria:
Context: The system is processing an additional lading description from an EBSBCRT-AD segment
Applied to: Additional Lading Description Not Empty?
Action: The additional lading description is not empty (not spaces)
Logic Flow:
IF The system is processing an additional lading description from an EBSBCRT-AD segment
AND The additional lading description is not empty (not spaces)
THEN:
• The system should store the description in the description array at the current array index and increment both the description array index and description index
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system is processing an additional lading description from an ebsbcrt-ad segment.
Trigger Criteria:
Context: The system is processing an additional lading description from an EBSBCRT-AD segment
Applied to: Additional Lading Description Not Empty?
Action: The additional lading description is empty (contains only spaces)
Logic Flow:
IF The system is processing an additional lading description from an EBSBCRT-AD segment
AND The additional lading description is empty (contains only spaces)
THEN:
• The system should skip storing the description and only increment the description index to continue processing the next description
Business Justification: Ensures correct system behavior and process compliance when database access request needs to be prepared for ebsbccx segment retrieval.
Trigger Criteria:
Context: A database access request needs to be prepared for EBSBCCX segment retrieval
Applied to: Clear Database Access Parameters
Action: The system initializes the database access setup process
Logic Flow:
IF A database access request needs to be prepared for EBSBCCX segment retrieval
AND The system initializes the database access setup process
THEN:
• All database access parameters are cleared to ensure clean state
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when database access parameters are being configured for segment retrieval.
Trigger Criteria:
Context: Database access parameters are being configured for segment retrieval
Applied to: Set Segment Type to EBSBCCX
Action: The system sets the segment type parameter
Logic Flow:
IF Database access parameters are being configured for segment retrieval
AND The system sets the segment type parameter
THEN:
• The segment type is set to EBSBCCX-LIT to identify the target data structure
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when database access parameters are being configured.
Trigger Criteria:
Context: Database access parameters are being configured
Applied to: Set Function Code to GU - Get Unique
Action: The system sets the function code parameter
Logic Flow:
IF Database access parameters are being configured
AND The system sets the function code parameter
THEN:
• The function code is set to 'GU' to perform a Get Unique operation
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when database access parameters are being configured for record matching.
Trigger Criteria:
Context: Database access parameters are being configured for record matching
Applied to: Set Operator to Equal
Action: The system sets the operator parameter
Logic Flow:
IF Database access parameters are being configured for record matching
AND The system sets the operator parameter
THEN:
• The operator is set to '=' to perform exact match comparison
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when database access parameters are being configured and edi bol key is available.
Trigger Criteria:
Context: Database access parameters are being configured and EDI BOL key is available
Applied to: Set EDI BOL Key as Root Key
Action: The system sets the root key parameter
Logic Flow:
IF Database access parameters are being configured and EDI BOL key is available
AND The system sets the root key parameter
THEN:
• The root key is set to the WORK-EDI-BOL-KEY value for record identification
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when database access parameters are being configured for ebsbccx segment retrieval.
Trigger Criteria:
Context: Database access parameters are being configured for EBSBCCX segment retrieval
Applied to: Set Dependent Key to CR001
Action: The system sets the dependent key parameter
Logic Flow:
IF Database access parameters are being configured for EBSBCCX segment retrieval
AND The system sets the dependent key parameter
THEN:
• The dependent key is set to 'CR001' to identify the specific segment hierarchy
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when database access parameters are being finalized.
Trigger Criteria:
Context: Database access parameters are being finalized
Applied to: Set Accept Status to GE - Get Equal
Action: The system sets the accept status parameter
Logic Flow:
IF Database access parameters are being finalized
AND The system sets the accept status parameter
THEN:
• The accept status is set to 'GE' to accept successful Get Equal operations
R-GCCCBOL-cbl-00302 (+2)File: GCCCBOL.cblBusiness Rule: Copy Importer Data to Cargo Report
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid n1 importer segment exists in the edi bol data.
Trigger Criteria:
Context: A valid N1 importer segment exists in the EDI BOL data
Applied to: Move N1-NAME to GCCC-IMPORTER
Action: The system processes CSA importer data transfer
Logic Flow:
IF A valid N1 importer segment exists in the EDI BOL data
AND The system processes CSA importer data transfer
THEN:
• The importer name from N1-NAME field is copied to GCCC-IMPORTER field in the cargo report
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when valid n1 importer segment exists in the edi bol data with a business number qualifier.
Trigger Criteria:
Context: A valid N1 importer segment exists in the EDI BOL data with a business number qualifier
Applied to: Move N1-ID-CODE-QUALIFIER to GCCC-BUSINESS-NBR-QUAL
Action: The system processes CSA importer data transfer
Logic Flow:
IF A valid N1 importer segment exists in the EDI BOL data with a business number qualifier
AND The system processes CSA importer data transfer
THEN:
• The business number qualifier from N1-ID-CODE-QUALIFIER field is copied to GCCC-BUSINESS-NBR-QUAL field in the cargo report
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when valid n1 importer segment exists in the edi bol data with a business identification number.
Trigger Criteria:
Context: A valid N1 importer segment exists in the EDI BOL data with a business identification number
Applied to: Move N1-ID-CODE to GCCC-BUSINESS-NBR
Action: The system processes CSA importer data transfer
Logic Flow:
IF A valid N1 importer segment exists in the EDI BOL data with a business identification number
AND The system processes CSA importer data transfer
THEN:
• The business number from N1-ID-CODE field is copied to GCCC-BUSINESS-NBR field in the cargo report
R-GCCCBOL-cbl-00305 (+9)File: GCCCBOL.cblBusiness Rule: Get Broker from BOL
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system is processing broker information from bol data.
Trigger Criteria:
Context: The system is processing broker information from BOL data
Applied to: EDI BOL Key Available?
Action: The EDI BOL key (WORK-EDI-BOL-KEY) is spaces or empty
Logic Flow:
IF The system is processing broker information from BOL data
AND The EDI BOL key (WORK-EDI-BOL-KEY) is spaces or empty
THEN:
• The system should skip EDI BOL broker search and exit the process
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system is starting the broker search from bol data.
Trigger Criteria:
Context: The system is starting the broker search from BOL data
Applied to: Initialize Search Variables
Action: The search process begins
Logic Flow:
IF The system is starting the broker search from BOL data
AND The search process begins
THEN:
• The system should set customs broker not found flag to true, EBSNRTD found flag to true, EBSBCBC found flag to true, and temporary customs broker not found flag to true
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system finds an ebsnrtd segment with organization data.
Trigger Criteria:
Context: The system finds an EBSNRTD segment with organization data
Applied to: Org ID = 'XQ'?
Action: The organization ID custom field equals 'XQ'
Logic Flow:
IF The system finds an EBSNRTD segment with organization data
AND The organization ID custom field equals 'XQ'
THEN:
• The system should immediately set the organization name as the primary broker name, mark XQ broker as found, set temporary customs broker as not found, and stop searching for other broker types
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when system finds an ebsnrtd segment and no xq broker has been found yet.
Trigger Criteria:
Context: The system finds an EBSNRTD segment and no XQ broker has been found yet
Applied to: Org ID = 'CB' AND No XQ Found?
Action: The organization ID equals 'CB' and the temporary customs broker is not found and the organization ID custom is not equal to 'XR' and not equal to 'XU'
Logic Flow:
IF The system finds an EBSNRTD segment and no XQ broker has been found yet
AND The organization ID equals 'CB' and the temporary customs broker is not found and the organization ID custom is not equal to 'XR' and not equal to 'XU'
THEN:
• The system should store the organization name as temporary broker name and mark temporary customs broker as found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when broker search from bol data is complete.
Trigger Criteria:
Context: The broker search from BOL data is complete
Applied to: CB Broker Found?
Action: A temporary CB broker was found during the search process
Logic Flow:
IF The broker search from BOL data is complete
AND A temporary CB broker was found during the search process
THEN:
• The system should move the temporary broker name to the final broker long name field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is processing broker information retrieval.
Trigger Criteria:
Context: The system is processing broker information retrieval
Applied to: EDI BOL Key Available?
Action: The EDI BOL key is checked for availability
Logic Flow:
IF The system is processing broker information retrieval
AND The EDI BOL key is checked for availability
THEN:
• If EDI BOL key is spaces, set indicators to not found and exit, otherwise proceed with broker search
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when ebsnrtd segment is found with organization data.
Trigger Criteria:
Context: An EBSNRTD segment is found with organization data
Applied to: Organization ID = 'CB'?
Action: The organization ID is 'CB' and temporary customs broker is not found and custom ID is not 'XR' or 'XU'
Logic Flow:
IF An EBSNRTD segment is found with organization data
AND The organization ID is 'CB' and temporary customs broker is not found and custom ID is not 'XR' or 'XU'
THEN:
• Store the organization name as temporary broker name and set temporary customs broker found indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when ebsnrtd segment is found with organization data.
Trigger Criteria:
Context: An EBSNRTD segment is found with organization data
Applied to: Organization ID = 'XQ'?
Action: The organization custom ID is 'XQ'
Logic Flow:
IF An EBSNRTD segment is found with organization data
AND The organization custom ID is 'XQ'
THEN:
• Set the organization name as the final broker name, mark customs broker as found, and reset temporary customs broker indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when all ebsnrtd segments have been processed and no xq type customs broker was found.
Trigger Criteria:
Context: All EBSNRTD segments have been processed and no XQ type customs broker was found
Applied to: Temporary Broker Available?
Action: A temporary customs broker was found during the search
Logic Flow:
IF All EBSNRTD segments have been processed and no XQ type customs broker was found
AND A temporary customs broker was found during the search
THEN:
• Use the temporary broker name as the final broker long name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system is searching for customs broker information in ebsnrtd segments.
Trigger Criteria:
Context: The system is searching for customs broker information in EBSNRTD segments
Applied to: More Sequences Available?
Action: Current sequence processing is complete
Logic Flow:
IF The system is searching for customs broker information in EBSNRTD segments
AND Current sequence processing is complete
THEN:
• Continue to next sequence if customs broker not found and more segments available, otherwise end search
R-GCCCBOL-cbl-00310 (+19)File: GCCCBOL.cblBusiness Rule: Get Broker from Fastway
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to search for broker information in fastway data.
Trigger Criteria:
Context: The system needs to search for broker information in Fastway data
Applied to: Initialize Search Variables
Action: The Fastway broker search process begins
Logic Flow:
IF The system needs to search for broker information in Fastway data
AND The Fastway broker search process begins
THEN:
• All search control flags are set to not found state and temporary broker name is cleared
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when special handling data contains up to 7 entries that may contain broker information.
Trigger Criteria:
Context: Special handling data contains up to 7 entries that may contain broker information
Applied to: Loop Through Special Handling Codes 1-7
Action: The system searches for broker data and has not found a special data customs broker and the current index is less than 7
Logic Flow:
IF Special handling data contains up to 7 entries that may contain broker information
AND The system searches for broker data and has not found a special data customs broker and the current index is less than 7
THEN:
• The system continues to the next special handling entry
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling code entry is being evaluated for broker information.
Trigger Criteria:
Context: A special handling code entry is being evaluated for broker information
Applied to: Special Handling Code = 'XQ'?
Action: The special handling code equals 'XQ'
Logic Flow:
IF A special handling code entry is being evaluated for broker information
AND The special handling code equals 'XQ'
THEN:
• The system recognizes this as the highest priority broker type and processes the XQ broker instruction
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when special handling code of type 'xq' is found.
Trigger Criteria:
Context: A special handling code of type 'XQ' is found
Applied to: Extract Broker Name from XQ Instruction
Action: The XQ special handling instruction is processed
Logic Flow:
IF A special handling code of type 'XQ' is found
AND The XQ special handling instruction is processed
THEN:
• The broker name is extracted from the instruction, the special data customs broker found flag is set to true, and any temporary broker flag is reset to not found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when special handling code entry is being evaluated and no xq broker has been found.
Trigger Criteria:
Context: A special handling code entry is being evaluated and no XQ broker has been found
Applied to: Special Handling Code = 'CB'?
Action: The special handling code equals 'CB'
Logic Flow:
IF A special handling code entry is being evaluated and no XQ broker has been found
AND The special handling code equals 'CB'
THEN:
• The system recognizes this as a secondary priority broker type
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when cb type special handling code is found.
Trigger Criteria:
Context: A CB type special handling code is found
Applied to: XQ Broker Already Found?
Action: The system checks if a temporary CB broker should be stored
Logic Flow:
IF A CB type special handling code is found
AND The system checks if a temporary CB broker should be stored
THEN:
• The CB broker is only stored as temporary if no XQ broker has been found and the temporary CB flag is not found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when cb type special handling code is found and no xq broker has been identified and no temporary cb broker exists.
Trigger Criteria:
Context: A CB type special handling code is found and no XQ broker has been identified and no temporary CB broker exists
Applied to: Set CB as Temporary Broker
Action: The CB special handling instruction is processed
Logic Flow:
IF A CB type special handling code is found and no XQ broker has been identified and no temporary CB broker exists
AND The CB special handling instruction is processed
THEN:
• The broker name is stored as temporary broker and the temporary CB found flag is set to true
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when system is searching through special handling codes for broker information.
Trigger Criteria:
Context: The system is searching through special handling codes for broker information
Applied to: More Special Handling Codes?
Action: The current special handling index is less than or equal to 7 and no special data customs broker has been found
Logic Flow:
IF The system is searching through special handling codes for broker information
AND The current special handling index is less than or equal to 7 and no special data customs broker has been found
THEN:
• The system continues to the next special handling code entry
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when all special handling codes have been processed and no xq broker was found.
Trigger Criteria:
Context: All special handling codes have been processed and no XQ broker was found
Applied to: Temporary CB Broker Found?
Action: A temporary CB broker was stored during the search
Logic Flow:
IF All special handling codes have been processed and no XQ broker was found
AND A temporary CB broker was stored during the search
THEN:
• The temporary CB broker name is moved to the final broker name for parsing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when temporary cb broker was found and no xq broker exists.
Trigger Criteria:
Context: A temporary CB broker was found and no XQ broker exists
Applied to: Use Temporary CB Broker Name
Action: The final broker selection is made
Logic Flow:
IF A temporary CB broker was found and no XQ broker exists
AND The final broker selection is made
THEN:
• The temporary broker name is moved to the special handling instruction field for final parsing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when broker name exists in special handling instruction format.
Trigger Criteria:
Context: A broker name exists in special handling instruction format
Applied to: Parse Final Broker Name
Action: The broker name needs to be cleaned and formatted
Logic Flow:
IF A broker name exists in special handling instruction format
AND The broker name needs to be cleaned and formatted
THEN:
• Standard parsing rules are applied to remove prefixes like 'CUSTOMS BROKER', 'BROKER', 'CB', or 'XQ' and extract the actual broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to search for customs broker information in fastway system.
Trigger Criteria:
Context: The system needs to search for customs broker information in Fastway system
Applied to: Initialize broker search flags
Action: The broker search process begins
Logic Flow:
IF The system needs to search for customs broker information in Fastway system
AND The broker search process begins
THEN:
• All broker search flags are set to not found state and temporary broker name storage is cleared
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when special handling codes array contains up to 7 positions.
Trigger Criteria:
Context: Special handling codes array contains up to 7 positions
Applied to: Loop through special handling codes 1-7
Action: Searching for customs broker information
Logic Flow:
IF Special handling codes array contains up to 7 positions
AND Searching for customs broker information
THEN:
• Process each special handling code position from 1 to 7 or until customs broker with XQ code is found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling code position contains data.
Trigger Criteria:
Context: A special handling code position contains data
Applied to: Special handling code = 'XQ'?
Action: The special handling code equals 'XQ'
Logic Flow:
IF A special handling code position contains data
AND The special handling code equals 'XQ'
THEN:
• Extract the broker name from the handling instruction and set XQ broker found flag to true
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling code is 'xq' type.
Trigger Criteria:
Context: Special handling code is 'XQ' type
Applied to: Extract broker name from XQ instruction
Action: Processing the XQ handling instruction
Logic Flow:
IF Special handling code is 'XQ' type
AND Processing the XQ handling instruction
THEN:
• Move the handling instruction to broker name field and set customs broker found flag to true and temporary CB not found flag to true
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when special handling code position contains data and no temporary cb broker has been found.
Trigger Criteria:
Context: A special handling code position contains data and no temporary CB broker has been found
Applied to: Special handling code = 'CB' and no temp broker found?
Action: The special handling code equals 'CB'
Logic Flow:
IF A special handling code position contains data and no temporary CB broker has been found
AND The special handling code equals 'CB'
THEN:
• Store the handling instruction as temporary broker name and set temporary CB found flag to true
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when special handling code is 'cb' type and no temporary broker found yet.
Trigger Criteria:
Context: Special handling code is 'CB' type and no temporary broker found yet
Applied to: Store CB instruction as temporary broker name
Action: Processing the CB handling instruction
Logic Flow:
IF Special handling code is 'CB' type and no temporary broker found yet
AND Processing the CB handling instruction
THEN:
• Move the handling instruction to temporary broker name field and set temporary CB found flag to true
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when currently processing special handling codes array.
Trigger Criteria:
Context: Currently processing special handling codes array
Applied to: More special handling codes to check?
Action: Current position is less than 7 and XQ customs broker has not been found
Logic Flow:
IF Currently processing special handling codes array
AND Current position is less than 7 and XQ customs broker has not been found
THEN:
• Continue to next special handling code position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when all special handling codes have been processed and temporary cb found flag is true.
Trigger Criteria:
Context: All special handling codes have been processed and temporary CB found flag is true
Applied to: Temporary CB broker found?
Action: No XQ type customs broker was found
Logic Flow:
IF All special handling codes have been processed and temporary CB found flag is true
AND No XQ type customs broker was found
THEN:
• Move the temporary broker name to the special handling instruction field for parsing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when broker name string contains standard prefixes.
Trigger Criteria:
Context: A broker name string contains standard prefixes
Applied to: Parse broker name using standard formats
Action: The string starts with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', 'BROKER: ', 'CB ', 'CB: ', 'XQ ', or 'XQ: '
Logic Flow:
IF A broker name string contains standard prefixes
AND The string starts with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', 'BROKER: ', 'CB ', 'CB: ', 'XQ ', or 'XQ: '
THEN:
• Remove the prefix and extract the remaining text as the broker long name, otherwise use the entire string as broker long name
R-GCCCBOL-cbl-00321 (+17)File: GCCCBOL.cblBusiness Rule: Get N9 from BOL
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to process n9 reference numbers from bol data.
Trigger Criteria:
Context: The system needs to process N9 reference numbers from BOL data
Applied to: Initialize N9 Processing Variables
Action: The N9 processing begins
Logic Flow:
IF The system needs to process N9 reference numbers from BOL data
AND The N9 processing begins
THEN:
• The system initializes sequence counter to 0, N9 array index to 1, sets EBSBCCR found flag to true, and sets BM and SI not found flags to true, and sets blank N9 not found flag to true
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when n9 reference array needs to store new reference numbers.
Trigger Criteria:
Context: The N9 reference array needs to store new reference numbers
Applied to: Initialize N9 Processing Variables
Action: The system searches for available array positions
Logic Flow:
IF The N9 reference array needs to store new reference numbers
AND The system searches for available array positions
THEN:
• The system iterates through array positions 1 to 10 until it finds an empty reference qualifier field or reaches the limit, and sets the blank N9 found flag when an empty position is located
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid edi bol key exists for reference data retrieval.
Trigger Criteria:
Context: A valid EDI BOL key exists for reference data retrieval
Applied to: Get First EBSBCCR Segment
Action: The system retrieves EBSBCCR segments with type CR
Logic Flow:
IF A valid EDI BOL key exists for reference data retrieval
AND The system retrieves EBSBCCR segments with type CR
THEN:
• The system increments the sequence counter and attempts to get the next EBSBCCR segment, setting the found flag based on retrieval success
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when ebsbccr segment has been successfully retrieved.
Trigger Criteria:
Context: An EBSBCCR segment has been successfully retrieved
Applied to: Reference Qualifier = BM or SI?
Action: The system checks the reference number qualifier
Logic Flow:
IF An EBSBCCR segment has been successfully retrieved
AND The system checks the reference number qualifier
THEN:
• The system continues processing only if the qualifier equals 'BM ' or 'SI ', otherwise it retrieves the next segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when bm or si reference qualifier has been found in the bol data.
Trigger Criteria:
Context: A BM or SI reference qualifier has been found in the BOL data
Applied to: Set Reference Number to N/A
Action: The reference number field is empty or contains only spaces
Logic Flow:
IF A BM or SI reference qualifier has been found in the BOL data
AND The reference number field is empty or contains only spaces
THEN:
• The system sets the reference number to 'N/A' to indicate no available reference
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when reference with qualifier 'bm ' has been found and bm reference has not been previously stored.
Trigger Criteria:
Context: A reference with qualifier 'BM ' has been found and BM reference has not been previously stored
Applied to: Store BM Reference Number
Action: The system processes the BM reference
Logic Flow:
IF A reference with qualifier 'BM ' has been found and BM reference has not been previously stored
AND The system processes the BM reference
THEN:
• The system stores 'BM' as the reference qualifier and the reference number in the current N9 array position, sets BM found flag to true, and increments the array index
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when reference with qualifier 'si ' has been found and si reference has not been previously stored.
Trigger Criteria:
Context: A reference with qualifier 'SI ' has been found and SI reference has not been previously stored
Applied to: Store SI Reference Number
Action: The system processes the SI reference
Logic Flow:
IF A reference with qualifier 'SI ' has been found and SI reference has not been previously stored
AND The system processes the SI reference
THEN:
• The system stores 'SI' as the reference qualifier and the reference number in the current N9 array position, sets SI found flag to true, and increments the array index
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when system has processed a reference number and incremented the array index.
Trigger Criteria:
Context: The system has processed a reference number and incremented the array index
Applied to: More Array Space Available?
Action: The array index exceeds 10
Logic Flow:
IF The system has processed a reference number and incremented the array index
AND The array index exceeds 10
THEN:
• The system sets blank N9 not found flag to true to stop further processing and prevent array overflow
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when ebsbcbc segment data is available for the current bol.
Trigger Criteria:
Context: EBSBCBC segment data is available for the current BOL
Applied to: Store Payment Method
Action: The system retrieves the EBSBCBC segment and the shipment method payment field is not empty
Logic Flow:
IF EBSBCBC segment data is available for the current BOL
AND The system retrieves the EBSBCBC segment and the shipment method payment field is not empty
THEN:
• The system stores the shipment method payment value in the cargo report payment method field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebsbcbc segment data is available and contains shipment information.
Trigger Criteria:
Context: EBSBCBC segment data is available and contains shipment information
Applied to: Store CN Reference Number
Action: The shipment ID number field is not empty and array space is available
Logic Flow:
IF EBSBCBC segment data is available and contains shipment information
AND The shipment ID number field is not empty and array space is available
THEN:
• The system increments the N9 array index, stores 'CN' as the reference qualifier, and stores the shipment ID number as the reference number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol key exists and reference number processing is required. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An EDI BOL key exists and reference number processing is required
Applied to: Get EBSBCCR Segment from BOL
Action: The system attempts to retrieve EBSBCCR segments from the Electronic Bill of Lading
Logic Flow:
IF An EDI BOL key exists and reference number processing is required
AND The system attempts to retrieve EBSBCCR segments from the Electronic Bill of Lading
THEN:
• The system should sequentially read EBSBCCR segments until no more segments are found or required reference types are located
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebsbccr segment has been retrieved from the electronic bill of lading.
Trigger Criteria:
Context: An EBSBCCR segment has been retrieved from the Electronic Bill of Lading
Applied to: Reference Qualifier = BM or SI?
Action: The system checks the reference number qualifier
Logic Flow:
IF An EBSBCCR segment has been retrieved from the Electronic Bill of Lading
AND The system checks the reference number qualifier
THEN:
• The system should continue processing only if the qualifier equals 'BM ' or 'SI ', otherwise skip to the next segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when reference number segment with bm or si qualifier has been found.
Trigger Criteria:
Context: A reference number segment with BM or SI qualifier has been found
Applied to: Set Reference Number to 'N/A'
Action: The reference number field is empty or contains only spaces
Logic Flow:
IF A reference number segment with BM or SI qualifier has been found
AND The reference number field is empty or contains only spaces
THEN:
• The system should set the reference number to 'N/A'
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when reference number with qualifier 'bm ' has been processed and no bm reference has been stored yet.
Trigger Criteria:
Context: A reference number with qualifier 'BM ' has been processed and no BM reference has been stored yet
Applied to: Store BM Reference Number
Action: The system evaluates whether to store the BM reference
Logic Flow:
IF A reference number with qualifier 'BM ' has been processed and no BM reference has been stored yet
AND The system evaluates whether to store the BM reference
THEN:
• The system should store the BM reference number in the output array and mark BM as found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when reference number with qualifier 'si ' has been processed and no si reference has been stored yet.
Trigger Criteria:
Context: A reference number with qualifier 'SI ' has been processed and no SI reference has been stored yet
Applied to: Store SI Reference Number
Action: The system evaluates whether to store the SI reference
Logic Flow:
IF A reference number with qualifier 'SI ' has been processed and no SI reference has been stored yet
AND The system evaluates whether to store the SI reference
THEN:
• The system should store the SI reference number in the output array and mark SI as found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when bm or si reference numbers have been processed from ebsbccr segments. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: BM or SI reference numbers have been processed from EBSBCCR segments
Applied to: Get EBSBCBC Segment
Action: The system attempts to retrieve the EBSBCBC segment
Logic Flow:
IF BM or SI reference numbers have been processed from EBSBCCR segments
AND The system attempts to retrieve the EBSBCBC segment
THEN:
• The system should read the EBSBCBC segment to extract payment method and shipment identification information
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when ebsbcbc segment has been successfully retrieved.
Trigger Criteria:
Context: An EBSBCBC segment has been successfully retrieved
Applied to: Store Payment Method
Action: The shipment payment method field is not empty or spaces
Logic Flow:
IF An EBSBCBC segment has been successfully retrieved
AND The shipment payment method field is not empty or spaces
THEN:
• The system should store the payment method in the cargo report output structure
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when ebsbcbc segment has been retrieved and payment method has been processed.
Trigger Criteria:
Context: An EBSBCBC segment has been retrieved and payment method has been processed
Applied to: Store Shipment ID as CN Reference
Action: The shipment identification number field is not empty or spaces
Logic Flow:
IF An EBSBCBC segment has been retrieved and payment method has been processed
AND The shipment identification number field is not empty or spaces
THEN:
• The system should store the shipment ID as a 'CN' qualified reference number in the next available array position
R-GCCCBOL-cbl-00331 (+7)File: GCCCBOL.cblBusiness Rule: Get N9 from Fastway
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when bm reference number was not found in edi bol data and shipper bill number exists in fastway data.
Trigger Criteria:
Context: BM reference number was not found in EDI BOL data AND shipper bill number exists in Fastway data
Applied to: BM Reference Number Missing?
Action: the system processes N9 reference numbers from Fastway source
Logic Flow:
IF BM reference number was not found in EDI BOL data AND shipper bill number exists in Fastway data
AND the system processes N9 reference numbers from Fastway source
THEN:
• extract BM reference from shipper bill number AND set BM found flag to true AND increment reference array index
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when special handling code equals 'si' and si reference number has not been found yet and reference array is not full.
Trigger Criteria:
Context: special handling code equals 'SI' AND SI reference number has not been found yet AND reference array is not full
Applied to: Special Handling Code = 'SI' AND SI Not Found?
Action: the system processes special handling codes from Fastway data
Logic Flow:
IF special handling code equals 'SI' AND SI reference number has not been found yet AND reference array is not full
AND the system processes special handling codes from Fastway data
THEN:
• extract SI reference from special handling instruction AND set SI found flag to true AND increment reference array index
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when reference number array index exceeds 10.
Trigger Criteria:
Context: reference number array index exceeds 10
Applied to: Reference Number Array Full?
Action: the system attempts to add another reference number
Logic Flow:
IF reference number array index exceeds 10
AND the system attempts to add another reference number
THEN:
• set blank N9 not found flag to true AND stop processing additional references
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when special handling data contains multiple codes and current index is less than or equal to 7 and si reference has not been found or reference array is not full.
Trigger Criteria:
Context: special handling data contains multiple codes AND current index is less than or equal to 7 AND SI reference has not been found OR reference array is not full
Applied to: More Special Handling Codes to Check?
Action: the system processes special handling codes
Logic Flow:
IF special handling data contains multiple codes AND current index is less than or equal to 7 AND SI reference has not been found OR reference array is not full
AND the system processes special handling codes
THEN:
• continue to next special handling code in sequence
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when bm reference number was not found in edi bol data and there is available space in the reference array.
Trigger Criteria:
Context: BM reference number was not found in EDI BOL data and there is available space in the reference array
Applied to: Set BM Reference Number
Action: the system processes Fastway data for missing references
Logic Flow:
IF BM reference number was not found in EDI BOL data and there is available space in the reference array
AND the system processes Fastway data for missing references
THEN:
• the system sets 'BM' as the reference qualifier, uses the shipper bill number as the reference value, marks BM as found, and increments to the next reference position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when si reference number is missing and a special handling record has code 'si'.
Trigger Criteria:
Context: SI reference number is missing and a special handling record has code 'SI'
Applied to: Set SI Reference Number
Action: the system processes special handling data
Logic Flow:
IF SI reference number is missing and a special handling record has code 'SI'
AND the system processes special handling data
THEN:
• the system sets the special handling code as the reference qualifier, uses the special handling instruction as the reference value, marks SI as found, and increments to the next reference position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system is processing reference numbers from fastway data.
Trigger Criteria:
Context: the system is processing reference numbers from Fastway data
Applied to: Reference Position Limit Reached
Action: the reference position counter exceeds 10
Logic Flow:
IF the system is processing reference numbers from Fastway data
AND the reference position counter exceeds 10
THEN:
• the system sets the blank reference indicator to not found and stops processing additional references
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when there are special handling records available and si reference is still missing.
Trigger Criteria:
Context: there are special handling records available and SI reference is still missing
Applied to: Loop Through Special Handling Data
Action: the system loops through special handling data
Logic Flow:
IF there are special handling records available and SI reference is still missing
AND the system loops through special handling data
THEN:
• the system processes each record from position 1 to 7 until either SI is found, reference limit is reached, or all records are processed
Business Justification: Governs the functional prerequisites and system routing when multi-bill shipment requires ccn extraction.
Trigger Criteria:
Context: A multi-bill shipment requires CCN extraction
Applied to: Start CCN Retrieval
Action: The CCN retrieval process begins
Logic Flow:
IF A multi-bill shipment requires CCN extraction
AND The CCN retrieval process begins
THEN:
• The system initializes CCN counter to 1 and clears EBSBCCX indicators
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when ccn retrieval process is active.
Trigger Criteria:
Context: CCN retrieval process is active
Applied to: Set RF Type for EBSBCCX Search
Action: Searching for reference segments in EBSBCCX
Logic Flow:
IF CCN retrieval process is active
AND Searching for reference segments in EBSBCCX
THEN:
• The system sets the type to 'RF' for reference segment identification
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when rf type is set and sequence counter is positioned.
Trigger Criteria:
Context: RF type is set and sequence counter is positioned
Applied to: Get EBSBCCX RF Segment
Action: Retrieving EBSBCCX segment with RF type
Logic Flow:
IF RF type is set and sequence counter is positioned
AND Retrieving EBSBCCX segment with RF type
THEN:
• The system fetches the corresponding RF segment from EBSBCCX
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when attempt to retrieve ebsbccx rf segment has been made.
Trigger Criteria:
Context: An attempt to retrieve EBSBCCX RF segment has been made
Applied to: EBSBCCX Found?
Action: Checking the retrieval result
Logic Flow:
IF An attempt to retrieve EBSBCCX RF segment has been made
AND Checking the retrieval result
THEN:
• The system determines if the EBSBCCX segment was found or not found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when ebsbccx segment processing is in progress.
Trigger Criteria:
Context: EBSBCCX segment processing is in progress
Applied to: Reached Max Segments?
Action: The sequence counter equals 99
Logic Flow:
IF EBSBCCX segment processing is in progress
AND The sequence counter equals 99
THEN:
• The system sets EBSBCCX not found indicator to terminate processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when valid ebsbccx rf segment has been found.
Trigger Criteria:
Context: A valid EBSBCCX RF segment has been found
Applied to: Initialize EBSBCCY Search
Action: Preparing to search for related EBSBCCY segments
Logic Flow:
IF A valid EBSBCCX RF segment has been found
AND Preparing to search for related EBSBCCY segments
THEN:
• The system clears EBSBCCY indicators and resets sequence counter to 0
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebsbccy search is initialized.
Trigger Criteria:
Context: EBSBCCY search is initialized
Applied to: Set CR Type for EBSBCCY
Action: Setting up cargo reference segment search
Logic Flow:
IF EBSBCCY search is initialized
AND Setting up cargo reference segment search
THEN:
• The system sets the type to 'CR' for cargo reference identification
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when cr type is set and sequence counter is incremented.
Trigger Criteria:
Context: CR type is set and sequence counter is incremented
Applied to: Get EBSBCCY Segment
Action: Searching for EBSBCCY segments with XC qualifier and sequence is less than 99
Logic Flow:
IF CR type is set and sequence counter is incremented
AND Searching for EBSBCCY segments with XC qualifier and sequence is less than 99
THEN:
• The system retrieves EBSBCCY segments until XC qualifier is found or search limit is reached
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when attempt to retrieve ebsbccy segment has been made.
Trigger Criteria:
Context: An attempt to retrieve EBSBCCY segment has been made
Applied to: EBSBCCY Found?
Action: Checking the retrieval result
Logic Flow:
IF An attempt to retrieve EBSBCCY segment has been made
AND Checking the retrieval result
THEN:
• The system determines if the EBSBCCY segment was found or not found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid ebsbccy segment has been retrieved.
Trigger Criteria:
Context: A valid EBSBCCY segment has been retrieved
Applied to: Reference Qualifier = XC?
Action: The reference qualifier is evaluated
Logic Flow:
IF A valid EBSBCCY segment has been retrieved
AND The reference qualifier is evaluated
THEN:
• The system checks if the reference qualifier equals 'XC' for cargo control number identification
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid xc qualified reference number has been found.
Trigger Criteria:
Context: A valid XC qualified reference number has been found
Applied to: CCN Same as Current?
Action: Comparing the reference number with the current cargo control number
Logic Flow:
IF A valid XC qualified reference number has been found
AND Comparing the reference number with the current cargo control number
THEN:
• The system checks if the CCN matches the current cargo control number to prevent duplicate storage
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when unique ccn has been identified that differs from current cargo control number.
Trigger Criteria:
Context: A unique CCN has been identified that differs from current cargo control number
Applied to: Store CCN in Array
Action: Storing the CCN in the array
Logic Flow:
IF A unique CCN has been identified that differs from current cargo control number
AND Storing the CCN in the array
THEN:
• The system moves the CCN reference number to the CCN array at the current index position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when ccn has been successfully stored in the array.
Trigger Criteria:
Context: A CCN has been successfully stored in the array
Applied to: Increment CCN Index
Action: Preparing for the next CCN storage
Logic Flow:
IF A CCN has been successfully stored in the array
AND Preparing for the next CCN storage
THEN:
• The system increments the CCN index by 1 to point to the next available array position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when current ebsbccx segment processing is complete.
Trigger Criteria:
Context: Current EBSBCCX segment processing is complete
Applied to: Increment CX Counter
Action: Moving to the next segment
Logic Flow:
IF Current EBSBCCX segment processing is complete
AND Moving to the next segment
THEN:
• The system increments the CX counter by 1 to process the next EBSBCCX RF segment
R-GCCCBOL-cbl-00349 (+15)File: GCCCBOL.cblBusiness Rule: Extract N10 Lading Data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to extract n10 lading data from edi segments.
Trigger Criteria:
Context: The system needs to extract N10 lading data from EDI segments
Applied to: Set Type to 'QD' and Sequence to 1
Action: The extraction process begins
Logic Flow:
IF The system needs to extract N10 lading data from EDI segments
AND The extraction process begins
THEN:
• The system sets the segment type to 'QD' and sequence number to 1 to retrieve the first quantity/description segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when segment type is set to 'qd' and sequence is set to 1.
Trigger Criteria:
Context: The segment type is set to 'QD' and sequence is set to 1
Applied to: Get EBSBCCY Segment
Action: The system performs segment retrieval
Logic Flow:
IF The segment type is set to 'QD' and sequence is set to 1
AND The system performs segment retrieval
THEN:
• The system calls the segment retrieval function to get the EBSBCCY segment data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when qd segment retrieval has been attempted.
Trigger Criteria:
Context: A QD segment retrieval has been attempted
Applied to: Segment Found?
Action: The system checks the retrieval result
Logic Flow:
IF A QD segment retrieval has been attempted
AND The system checks the retrieval result
THEN:
• If the segment is found, continue with quantity processing; otherwise, terminate the extraction process
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when qd segment with quantity data is available.
Trigger Criteria:
Context: A QD segment with quantity data is available
Applied to: Extract Numeric Characters from Quantity Field
Action: The system processes the quantity field CY-N10-QUANTITY
Logic Flow:
IF A QD segment with quantity data is available
AND The system processes the quantity field CY-N10-QUANTITY
THEN:
• The system extracts numeric characters from position 7 down to position 1, building the quantity string from right to left
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when quantity string has been extracted with potential leading spaces.
Trigger Criteria:
Context: A quantity string has been extracted with potential leading spaces
Applied to: Replace Leading Spaces with Zeros
Action: The system formats the quantity value
Logic Flow:
IF A quantity string has been extracted with potential leading spaces
AND The system formats the quantity value
THEN:
• The system replaces all leading spaces in the quantity string with zeros
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when properly formatted quantity value is available.
Trigger Criteria:
Context: A properly formatted quantity value is available
Applied to: Move Quantity to Cargo Report
Action: The system updates the cargo report data
Logic Flow:
IF A properly formatted quantity value is available
AND The system updates the cargo report data
THEN:
• The system moves the formatted quantity to GCCC-LADING-QUANTITY field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when qd segment contains country code information.
Trigger Criteria:
Context: A QD segment contains country code information
Applied to: Move Country Code to Origin Country
Action: The system processes country data
Logic Flow:
IF A QD segment contains country code information
AND The system processes country data
THEN:
• The system moves CY-N10-COUNTRY-CODE to GCCC-ORIG-COUNTRY field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when qd segment has been retrieved.
Trigger Criteria:
Context: A QD segment has been retrieved
Applied to: Description Available?
Action: The system checks for description data
Logic Flow:
IF A QD segment has been retrieved
AND The system checks for description data
THEN:
• IfCY-N10-DESCRIPTION is not spaces and not low-values, proceed to store the description; otherwise, skip to second segment processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid description exists in the first qd segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid description exists in the first QD segment
Applied to: Store Description in Array
Action: The system processes the description data
Logic Flow:
IF A valid description exists in the first QD segment
AND The system processes the description data
THEN:
• The system moves CY-N10-DESCRIPTION to WS-DESC-EB array at the current index position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when description has been stored in the description array. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A description has been stored in the description array
Applied to: Increment Description Index
Action: The system updates the array pointer
Logic Flow:
IF A description has been stored in the description array
AND The system updates the array pointer
THEN:
• The system increments WS-INDEXEB by 1 to point to the next available array position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when first qd segment has been processed.
Trigger Criteria:
Context: The first QD segment has been processed
Applied to: Set Type to 'QD' and Sequence to 2
Action: The system prepares for second segment retrieval
Logic Flow:
IF The first QD segment has been processed
AND The system prepares for second segment retrieval
THEN:
• The system sets the segment type to 'QD' and sequence number to 2
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when segment type is set to 'qd' and sequence is set to 2.
Trigger Criteria:
Context: The segment type is set to 'QD' and sequence is set to 2
Applied to: Get Second EBSBCCY Segment
Action: The system performs the second segment retrieval
Logic Flow:
IF The segment type is set to 'QD' and sequence is set to 2
AND The system performs the second segment retrieval
THEN:
• The system calls the segment retrieval function to get the second EBSBCCY segment data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when second qd segment retrieval has been attempted.
Trigger Criteria:
Context: A second QD segment retrieval has been attempted
Applied to: Second Segment Found?
Action: The system checks the second retrieval result
Logic Flow:
IF A second QD segment retrieval has been attempted
AND The system checks the second retrieval result
THEN:
• If the second segment is found, proceed with description validation; otherwise, terminate the extraction process
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when second qd segment has been retrieved.
Trigger Criteria:
Context: A second QD segment has been retrieved
Applied to: Second Description Available?
Action: The system checks for description data in the second segment
Logic Flow:
IF A second QD segment has been retrieved
AND The system checks for description data in the second segment
THEN:
• IfCY-N10-DESCRIPTION is not spaces and not low-values, proceed to store the second description; otherwise, terminate the process
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when valid description exists in the second qd segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid description exists in the second QD segment
Applied to: Store Second Description in Array
Action: The system processes the second description data
Logic Flow:
IF A valid description exists in the second QD segment
AND The system processes the second description data
THEN:
• The system moves CY-N10-DESCRIPTION to WS-DESC-EB array at the current index position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when second description has been stored in the description array. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The second description has been stored in the description array
Applied to: Increment Description Index
Action: The system finalizes the array update
Logic Flow:
IF The second description has been stored in the description array
AND The system finalizes the array update
THEN:
• The system increments WS-INDEXEB by 1 to point to the next available array position
R-GCCCBOL-cbl-00365 (+9)File: GCCCBOL.cblBusiness Rule: Process EBSBCCM Segments
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to process ebsbccm segments for lading descriptions.
Trigger Criteria:
Context: The system needs to process EBSBCCM segments for lading descriptions
Applied to: Initialize CCM Sequence to 1
Action: The processing begins
Logic Flow:
IF The system needs to process EBSBCCM segments for lading descriptions
AND The processing begins
THEN:
• The CCM sequence counter is set to 1 to start with the first segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when ccm sequence number is available.
Trigger Criteria:
Context: A CCM sequence number is available
Applied to: Get First EBSBCCM Segment
Action: The system attempts to retrieve the EBSBCCM segment
Logic Flow:
IF A CCM sequence number is available
AND The system attempts to retrieve the EBSBCCM segment
THEN:
• The segment data is fetched using the EDI BOL key and CCM sequence number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when attempt to retrieve ebsbccm segment has been made.
Trigger Criteria:
Context: An attempt to retrieve EBSBCCM segment has been made
Applied to: EBSBCCM Found?
Action: The system checks the retrieval status
Logic Flow:
IF An attempt to retrieve EBSBCCM segment has been made
AND The system checks the retrieval status
THEN:
• Processing continues if segment is found, otherwise processing ends
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when ebsbccm segment has been retrieved.
Trigger Criteria:
Context: An EBSBCCM segment has been retrieved
Applied to: Lading Description Not Empty?
Action: The lading description field is evaluated
Logic Flow:
IF An EBSBCCM segment has been retrieved
AND The lading description field is evaluated
THEN:
• The description is processed only if it is not spaces or low-values
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid lading description exists in the ebsbccm segment.
Trigger Criteria:
Context: A valid lading description exists in the EBSBCCM segment
Applied to: Store Lading Description in Description Array
Action: The description content is not empty
Logic Flow:
IF A valid lading description exists in the EBSBCCM segment
AND The description content is not empty
THEN:
• The lading description is stored in the description array at the current index position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when lading description has been stored in the description array.
Trigger Criteria:
Context: A lading description has been stored in the description array
Applied to: Increment Description Index
Action: The storage operation is complete
Logic Flow:
IF A lading description has been stored in the description array
AND The storage operation is complete
THEN:
• The description array index is incremented by 1 to point to the next available position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when ebsbccm segment is being processed.
Trigger Criteria:
Context: An EBSBCCM segment is being processed
Applied to: Get Additional Description Data from BOL
Action: Additional description data is needed
Logic Flow:
IF An EBSBCCM segment is being processed
AND Additional description data is needed
THEN:
• The system retrieves up to 7 additional description lines from related EBSBCRT segments
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when current ebsbccm segment has been processed.
Trigger Criteria:
Context: The current EBSBCCM segment has been processed
Applied to: Increment CCM Sequence
Action: More segments need to be processed
Logic Flow:
IF The current EBSBCCM segment has been processed
AND More segments need to be processed
THEN:
• The CCM sequence number is incremented by 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when ebsbccm segments are being processed sequentially.
Trigger Criteria:
Context: EBSBCCM segments are being processed sequentially
Applied to: CCM Sequence > 25?
Action: The CCM sequence number is evaluated
Logic Flow:
IF EBSBCCM segments are being processed sequentially
AND The CCM sequence number is evaluated
THEN:
• Processing stops if the sequence exceeds 25, otherwise continues to next segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when ccm sequence is within the allowed limit and more segments may exist.
Trigger Criteria:
Context: The CCM sequence is within the allowed limit and more segments may exist
Applied to: Get Next EBSBCCM Segment
Action: The system continues processing
Logic Flow:
IF The CCM sequence is within the allowed limit and more segments may exist
AND The system continues processing
THEN:
• The next EBSBCCM segment is retrieved using the incremented sequence number
R-GCCCBOL-cbl-00375 (+6)File: GCCCBOL.cblBusiness Rule: Get Additional BOL Descriptions
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to retrieve additional lading descriptions from bol data.
Trigger Criteria:
Context: The system needs to retrieve additional lading descriptions from BOL data
Applied to: Initialize EBSBCRT-AD Found Flag
Action: The additional description processing begins
Logic Flow:
IF The system needs to retrieve additional lading descriptions from BOL data
AND The additional description processing begins
THEN:
• The system sets the EBSBCRT-AD found flag to true and initializes the description sequence counter to 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system is processing additional bol descriptions.
Trigger Criteria:
Context: The system is processing additional BOL descriptions
Applied to: Description Sequence <= 10?
Action: The description sequence counter is evaluated
Logic Flow:
IF The system is processing additional BOL descriptions
AND The description sequence counter is evaluated
THEN:
• Processing continues if the sequence counter is less than or equal to 10, otherwise processing stops
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when description sequence counter is within valid range.
Trigger Criteria:
Context: The description sequence counter is within valid range
Applied to: Retrieve EBSBCRT-AD Segment
Action: The system attempts to retrieve an EBSBCRT-AD segment
Logic Flow:
IF The description sequence counter is within valid range
AND The system attempts to retrieve an EBSBCRT-AD segment
THEN:
• The system calls the data access routine to fetch the segment using current sequence number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system has attempted to retrieve an ebsbcrt-ad segment.
Trigger Criteria:
Context: The system has attempted to retrieve an EBSBCRT-AD segment
Applied to:EBSBCRT-AD Segment Found?
Action: The retrieval operation completes
Logic Flow:
IF The system has attempted to retrieve an EBSBCRT-AD segment
AND The retrieval operation completes
THEN:
• If the segment is found, processing continues with description extraction, otherwise the sequence counter is incremented to try the next segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when ebsbcrt-ad segment has been successfully retrieved.
Trigger Criteria:
Context: An EBSBCRT-AD segment has been successfully retrieved
Applied to: Description Index <= 7?
Action: The system processes individual description lines within the segment
Logic Flow:
IF An EBSBCRT-AD segment has been successfully retrieved
AND The system processes individual description lines within the segment
THEN:
• Processing continues for description indexes 1 through 7, then moves to the next segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system is processing an individual description line from an ebsbcrt-ad segment.
Trigger Criteria:
Context: The system is processing an individual description line from an EBSBCRT-AD segment
Applied to: Additional Lading Description Not Empty?
Action: The additional lading description content is evaluated
Logic Flow:
IF The system is processing an individual description line from an EBSBCRT-AD segment
AND The additional lading description content is evaluated
THEN:
• If the description is not spaces, the content is moved to the description array, otherwise it is skipped
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when additional lading description contains valid non-empty content.
Trigger Criteria:
Context: An additional lading description contains valid non-empty content
Applied to: Move Additional Description to Description Array
Action: The description content is processed
Logic Flow:
IF An additional lading description contains valid non-empty content
AND The description content is processed
THEN:
• The system moves the description content to the current position in the description array and increments the array index
R-GCCCBOL-cbl-00382 (+15)File: GCCCBOL.cblBusiness Rule: Get MV Loaded Shipments VINs
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when system is ready to process motor vehicle segments for vin extraction.
Trigger Criteria:
Context: The system is ready to process motor vehicle segments for VIN extraction
Applied to: Initialize VIN Quantity to Zero
Action: VIN processing begins
Logic Flow:
IF The system is ready to process motor vehicle segments for VIN extraction
AND VIN processing begins
THEN:
• The VIN quantity counter is set to zero
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to process motor vehicle segments.
Trigger Criteria:
Context: The system needs to process motor vehicle segments
Applied to: Set Segment Type to MV Motor Vehicle
Action: Segment type configuration is required
Logic Flow:
IF The system needs to process motor vehicle segments
AND Segment type configuration is required
THEN:
• The segment type is set to MV for motor vehicle processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when system is processing motor vehicle segments from ebsbccx data source.
Trigger Criteria:
Context: The system is processing motor vehicle segments from EBSBCCX data source
Applied to: EBSBCCX MV Segment Found?
Action: A segment retrieval is attempted
Logic Flow:
IF The system is processing motor vehicle segments from EBSBCCX data source
AND A segment retrieval is attempted
THEN:
• The system determines if the motor vehicle segment was found or not found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when motor vehicle segment is found in ebsbccx data source.
Trigger Criteria:
Context: A motor vehicle segment is found in EBSBCCX data source
Applied to: Extract Vehicle ID Number from Segment
Action: VIN extraction is performed
Logic Flow:
IF A motor vehicle segment is found in EBSBCCX data source
AND VIN extraction is performed
THEN:
• The vehicle identification number is extracted from the segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when vehicle identification number has been extracted from a motor vehicle segment.
Trigger Criteria:
Context: A vehicle identification number has been extracted from a motor vehicle segment
Applied to: Format VIN with VIN Prefix
Action: VIN formatting is applied
Logic Flow:
IF A vehicle identification number has been extracted from a motor vehicle segment
AND VIN formatting is applied
THEN:
• The VIN is formatted with the VIN prefix to create a complete VIN string
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when vin has been formatted with the proper prefix.
Trigger Criteria:
Context: A VIN has been formatted with the proper prefix
Applied to: Store VIN in Description Array
Action: VIN storage is performed
Logic Flow:
IF A VIN has been formatted with the proper prefix
AND VIN storage is performed
THEN:
• The formatted VIN is stored in the description array
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when vin has been successfully processed and stored.
Trigger Criteria:
Context: A VIN has been successfully processed and stored
Applied to: Increment VIN Counter
Action: VIN counter update is performed
Logic Flow:
IF A VIN has been successfully processed and stored
AND VIN counter update is performed
THEN:
• The VIN quantity counter is incremented by one
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system has processed a motor vehicle segment.
Trigger Criteria:
Context: The system has processed a motor vehicle segment
Applied to: More Segments Available AND Counter < Maximum?
Action: Continuation evaluation is performed
Logic Flow:
IF The system has processed a motor vehicle segment
AND Continuation evaluation is performed
THEN:
• Processing continues if more segments are available AND the VIN counter is below the maximum limit, otherwise processing stops
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system has processed a motor vehicle segment.
Trigger Criteria:
Context: The system has processed a motor vehicle segment
Applied to: More Segments Available AND Counter < Maximum?
Action: The system evaluates whether to continue the loop
Logic Flow:
IF The system has processed a motor vehicle segment
AND The system evaluates whether to continue the loop
THEN:
• The loop continues if more motor vehicle segments are available AND the VIN counter has not exceeded the maximum allowed VINs
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system is ready to process motor vehicle segments for vin retrieval.
Trigger Criteria:
Context: The system is ready to process motor vehicle segments for VIN retrieval
Applied to: Initialize VIN Counter to Zero
Action: The VIN retrieval process begins
Logic Flow:
IF The system is ready to process motor vehicle segments for VIN retrieval
AND The VIN retrieval process begins
THEN:
• The VIN counter is set to zero to start counting from the beginning
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to search for motor vehicle segments.
Trigger Criteria:
Context: The system needs to search for motor vehicle segments
Applied to: Set Search Type to 'MV' Motor Vehicle
Action: The VIN retrieval process is initiated
Logic Flow:
IF The system needs to search for motor vehicle segments
AND The VIN retrieval process is initiated
THEN:
• The search type is set to 'MV' to filter for motor vehicle records
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system is searching for motor vehicle segments with type 'mv'.
Trigger Criteria:
Context: The system is searching for motor vehicle segments with type 'MV'
Applied to: MV Segment Found?
Action: A segment retrieval is attempted
Logic Flow:
IF The system is searching for motor vehicle segments with type 'MV'
AND A segment retrieval is attempted
THEN:
• The system determines if the motor vehicle segment was found or not found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when motor vehicle segment has been successfully found.
Trigger Criteria:
Context: A motor vehicle segment has been successfully found
Applied to: Increment VIN Counter
Action: The system processes the segment for VIN extraction
Logic Flow:
IF A motor vehicle segment has been successfully found
AND The system processes the segment for VIN extraction
THEN:
• The VIN counter is incremented by one
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid motor vehicle segment has been found.
Trigger Criteria:
Context: A valid motor vehicle segment has been found
Applied to: Extract Vehicle ID Number
Action: The system processes the segment data
Logic Flow:
IF A valid motor vehicle segment has been found
AND The system processes the segment data
THEN:
• The vehicle ID number is extracted from the segment's vehicle ID field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when vehicle id number has been extracted from the motor vehicle segment.
Trigger Criteria:
Context: A vehicle ID number has been extracted from the motor vehicle segment
Applied to: Format VIN String with 'VIN' Prefix
Action: The system formats the VIN for storage
Logic Flow:
IF A vehicle ID number has been extracted from the motor vehicle segment
AND The system formats the VIN for storage
THEN:
• The string 'VIN' is concatenated with the vehicle ID number to create the formatted VIN string
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when vin string has been formatted with the 'vin' prefix and vehicle id.
Trigger Criteria:
Context: A VIN string has been formatted with the 'VIN' prefix and vehicle ID
Applied to: Store VIN in Description Array
Action: The system stores the VIN information
Logic Flow:
IF A VIN string has been formatted with the 'VIN' prefix and vehicle ID
AND The system stores the VIN information
THEN:
• The formatted VIN string is placed in the description array at the index position matching the current VIN counter
R-GCCCBOL-cbl-00390 (+24)File: GCCCBOL.cblBusiness Rule: Get Co
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to process vins for co-loaded shipments.
Trigger Criteria:
Context: The system needs to process VINs for co-loaded shipments
Applied to: Initialize VIN Counter to Zero
Action: The VIN processing begins
Logic Flow:
IF The system needs to process VINs for co-loaded shipments
AND The VIN processing begins
THEN:
• The VIN counter is set to zero and processing flags are initialized
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when sequence number for rf segment retrieval is available.
Trigger Criteria:
Context: A sequence number for RF segment retrieval is available
Applied to: Get RF Segment from EBSBCCX
Action: The system attempts to get an RF segment from EBSBCCX
Logic Flow:
IF A sequence number for RF segment retrieval is available
AND The system attempts to get an RF segment from EBSBCCX
THEN:
• The RF segment data is retrieved and availability status is determined
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when rf segment has been successfully retrieved from ebsbccx.
Trigger Criteria:
Context: An RF segment has been successfully retrieved from EBSBCCX
Applied to: Has Consolidated Shipment Number?
Action: The system evaluates the consolidated shipment number field
Logic Flow:
IF An RF segment has been successfully retrieved from EBSBCCX
AND The system evaluates the consolidated shipment number field
THEN:
• Processing continues to V2 segments if consolidated shipment number exists, otherwise skips to next RF segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when consolidated shipment exists and v2 sequence number is available.
Trigger Criteria:
Context: A consolidated shipment exists and V2 sequence number is available
Applied to: Get V2 Segment from EBSBCCY
Action: The system attempts to get a V2 segment from EBSBCCY
Logic Flow:
IF A consolidated shipment exists and V2 sequence number is available
AND The system attempts to get a V2 segment from EBSBCCY
THEN:
• The V2 segment data is retrieved and availability status is determined
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when v2 segment has been successfully retrieved from ebsbccy.
Trigger Criteria:
Context: A V2 segment has been successfully retrieved from EBSBCCY
Applied to: Vehicle ID Number Not Empty?
Action: The system evaluates the vehicle identification number field
Logic Flow:
IF A V2 segment has been successfully retrieved from EBSBCCY
AND The system evaluates the vehicle identification number field
THEN:
• VIN processing continues if the vehicle ID is not empty or spaces, otherwise moves to next V2 segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid vehicle identification number exists in the v2 segment.
Trigger Criteria:
Context: A valid vehicle identification number exists in the V2 segment
Applied to: Increment VIN Counter
Action: The system processes the vehicle ID
Logic Flow:
IF A valid vehicle identification number exists in the V2 segment
AND The system processes the vehicle ID
THEN:
• The VIN counter is incremented by one
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when vin counter has been incremented for a valid vehicle.
Trigger Criteria:
Context: A VIN counter has been incremented for a valid vehicle
Applied to: VIN Counter Within Limit?
Action: The system checks the VIN counter against the maximum allowed limit
Logic Flow:
IF A VIN counter has been incremented for a valid vehicle
AND The system checks the VIN counter against the maximum allowed limit
THEN:
• VIN formatting and storage proceeds if within limit, otherwise VIN is discarded
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid vehicle identification number is within storage capacity limits.
Trigger Criteria:
Context: A valid vehicle identification number is within storage capacity limits
Applied to: Format VIN with Prefix
Action: The system formats the VIN for storage
Logic Flow:
IF A valid vehicle identification number is within storage capacity limits
AND The system formats the VIN for storage
THEN:
• The vehicle ID is prefixed with 'VIN' text and formatted as a complete string
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when vin has been formatted with proper prefix.
Trigger Criteria:
Context: A VIN has been formatted with proper prefix
Applied to: Store VIN in Description Array
Action: The system stores the VIN data
Logic Flow:
IF A VIN has been formatted with proper prefix
AND The system stores the VIN data
THEN:
• The formatted VIN is placed in the description array at the current VIN counter position
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when v2 segment has been processed for vehicle data.
Trigger Criteria:
Context: A V2 segment has been processed for vehicle data
Applied to: More V2 Segments?
Action: The system evaluates continuation of V2 processing
Logic Flow:
IF A V2 segment has been processed for vehicle data
AND The system evaluates continuation of V2 processing
THEN:
• Processing continues with next V2 segment if more exist and limits not exceeded, otherwise moves to next RF segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when rf segment and its associated v2 segments have been processed.
Trigger Criteria:
Context: An RF segment and its associated V2 segments have been processed
Applied to: More RF Segments?
Action: The system evaluates continuation of RF processing
Logic Flow:
IF An RF segment and its associated V2 segments have been processed
AND The system evaluates continuation of RF processing
THEN:
• Processing continues with next RF segment if more exist and limits not exceeded, otherwise ends VIN processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to process vins from co-loaded shipments.
Trigger Criteria:
Context: The system needs to process VINs from co-loaded shipments
Applied to: Initialize VIN quantity to zero
Action: VIN processing begins for co-loaded shipments
Logic Flow:
IF The system needs to process VINs from co-loaded shipments
AND VIN processing begins for co-loaded shipments
THEN:
• VIN quantity counter is set to zero and processing flags are initialized
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when rf segments exist for processing and maximum n7 reference loop limit is defined.
Trigger Criteria:
Context: RF segments exist for processing and maximum N7 reference loop limit is defined
Applied to: Loop through RF segments Counter ≤ Max N7 Reference Loop?
Action: System processes RF segments for co-loaded shipments
Logic Flow:
IF RF segments exist for processing and maximum N7 reference loop limit is defined
AND System processes RF segments for co-loaded shipments
THEN:
• System continues looping while counter is less than or equal to maximum N7 reference loop limit
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when rf segment sequence number is available.
Trigger Criteria:
Context: RF segment sequence number is available
Applied to: Get EBSBCCX RF segment
Action: System attempts to retrieve EBSBCCX RF segment
Logic Flow:
IF RF segment sequence number is available
AND System attempts to retrieve EBSBCCX RF segment
THEN:
• System calls database routine to get RF segment data using current sequence number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system has attempted to retrieve an rf segment.
Trigger Criteria:
Context: System has attempted to retrieve an RF segment
Applied to: RF segment found?
Action: Database operation completes
Logic Flow:
IF System has attempted to retrieve an RF segment
AND Database operation completes
THEN:
• System checks if RF segment data was found and sets appropriate processing flag
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when rf segment data has been retrieved successfully.
Trigger Criteria:
Context: RF segment data has been retrieved successfully
Applied to: Contains consolidated shipment number?
Action: System examines the RF segment content
Logic Flow:
IF RF segment data has been retrieved successfully
AND System examines the RF segment content
THEN:
• System identifies if the segment contains consolidated shipment number data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when consolidated shipment number has been identified in rf segment.
Trigger Criteria:
Context: Consolidated shipment number has been identified in RF segment
Applied to: Initialize V2 segment counter to 1
Action: System begins V2 segment processing
Logic Flow:
IF Consolidated shipment number has been identified in RF segment
AND System begins V2 segment processing
THEN:
• V2 segment counter is set to 1 to start sequential processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when v2 segments exist for processing and maximum motor vehicles limit is defined.
Trigger Criteria:
Context: V2 segments exist for processing and maximum motor vehicles limit is defined
Applied to: Loop through V2 segments Counter ≤ Max Motor Vehicles?
Action: System processes V2 segments for vehicle data
Logic Flow:
IF V2 segments exist for processing and maximum motor vehicles limit is defined
AND System processes V2 segments for vehicle data
THEN:
• System continues looping while V2 counter is less than or equal to maximum motor vehicles limit
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when v2 segment sequence number is available.
Trigger Criteria:
Context: V2 segment sequence number is available
Applied to: Get EBSBCCY V2 segment
Action: System attempts to retrieve EBSBCCY V2 segment
Logic Flow:
IF V2 segment sequence number is available
AND System attempts to retrieve EBSBCCY V2 segment
THEN:
• System calls database routine to get V2 segment data using current sequence number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system has attempted to retrieve a v2 segment.
Trigger Criteria:
Context: System has attempted to retrieve a V2 segment
Applied to: V2 segment found?
Action: Database operation completes
Logic Flow:
IF System has attempted to retrieve a V2 segment
AND Database operation completes
THEN:
• System checks if V2 segment data was found and continues processing accordingly
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when v2 segment has been successfully retrieved.
Trigger Criteria:
Context: V2 segment has been successfully retrieved
Applied to: Vehicle ID number not empty?
Action: System examines the vehicle ID number field
Logic Flow:
IF V2 segment has been successfully retrieved
AND System examines the vehicle ID number field
THEN:
• System verifies the vehicle ID number is not empty or spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid vehicle id number has been identified in v2 segment.
Trigger Criteria:
Context: Valid vehicle ID number has been identified in V2 segment
Applied to: Increment VIN quantity
Action: System processes the vehicle identification data
Logic Flow:
IF Valid vehicle ID number has been identified in V2 segment
AND System processes the vehicle identification data
THEN:
• VIN quantity counter is incremented by 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when vin quantity counter has been incremented and maximum vin descriptions limit is defined.
Trigger Criteria:
Context: VIN quantity counter has been incremented and maximum VIN descriptions limit is defined
Applied to: VIN quantity ≤ Max VIN descriptions?
Action: System checks VIN processing capacity
Logic Flow:
IF VIN quantity counter has been incremented and maximum VIN descriptions limit is defined
AND System checks VIN processing capacity
THEN:
• System verifies current VIN quantity is less than or equal to maximum VIN descriptions allowed
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when valid vehicle id number is available and vin quantity is within limits.
Trigger Criteria:
Context: Valid vehicle ID number is available and VIN quantity is within limits
Applied to: 'VIN' + Vehicle ID Number
Action: System formats the VIN for storage
Logic Flow:
IF Valid vehicle ID number is available and VIN quantity is within limits
AND System formats the VIN for storage
THEN:
• System creates VIN string by concatenating 'VIN' text with the vehicle ID number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when vin string has been formatted and description array position is available.
Trigger Criteria:
Context: VIN string has been formatted and description array position is available
Applied to: Store VIN in description array
Action: System stores the VIN data
Logic Flow:
IF VIN string has been formatted and description array position is available
AND System stores the VIN data
THEN:
• Formatted VIN string is stored in the description array at the current VIN quantity position
R-GCCCBOL-cbl-00401 (+18)File: GCCCBOL.cblBusiness Rule: Check BOL for CSA
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Get N1 Importer Segment from BOL
Action: The system searches for N1 importer segment data
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system searches for N1 importer segment data
THEN:
• The system retrieves the first N1 importer segment from the EDI BOL data source
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Get N1 Importer Segment from BOL
Action: The system searches for N1 importer segment data in the EDI BOL
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system searches for N1 importer segment data in the EDI BOL
THEN:
• The system retrieves the importer segment if it exists or sets not found status
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system has attempted to retrieve n1 importer segment data.
Trigger Criteria:
Context: The system has attempted to retrieve N1 importer segment data
Applied to: N1 Segment Found?
Action: The retrieval operation completes
Logic Flow:
IF The system has attempted to retrieve N1 importer segment data
AND The retrieval operation completes
THEN:
• The system checks if a valid N1 segment was found and continues CSA processing only if found, otherwise skips CSA validation
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when n1 importer segment has been retrieved from edi bol.
Trigger Criteria:
Context: An N1 importer segment has been retrieved from EDI BOL
Applied to: Entity ID = 'IM' AND Name Not Empty?
Action: The system validates the segment data
Logic Flow:
IF An N1 importer segment has been retrieved from EDI BOL
AND The system validates the segment data
THEN:
• The system verifies that the entity ID code equals 'IM' AND the name field is not empty, proceeding with qualifier validation only if both conditions are met
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid n1 importer segment with entity id 'im' and non-empty name exists.
Trigger Criteria:
Context: A valid N1 importer segment with entity ID 'IM' and non-empty name exists
Applied to: ID Code Qualifier = 'M5'?
Action: The system checks the ID code qualifier
Logic Flow:
IF A valid N1 importer segment with entity ID 'IM' and non-empty name exists
AND The system checks the ID code qualifier
THEN:
• If the qualifier equals 'M5', the system sets the CSA indicator ON and copies all importer data to the cargo report
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when valid n1 importer segment exists with entity id 'im', non-empty name, and qualifier is not 'm5'.
Trigger Criteria:
Context: A valid N1 importer segment exists with entity ID 'IM', non-empty name, and qualifier is not 'M5'
Applied to: ID Code Qualifier = 'BN'?
Action: The system checks if the ID code qualifier equals 'BN'
Logic Flow:
IF A valid N1 importer segment exists with entity ID 'IM', non-empty name, and qualifier is not 'M5'
AND The system checks if the ID code qualifier equals 'BN'
THEN:
• If the qualifier equals 'BN', the system copies importer data to cargo report without setting CSA indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid n1 importer segment exists with entity id 'im', non-empty name, and qualifier is neither 'm5' nor 'bn'.
Trigger Criteria:
Context: A valid N1 importer segment exists with entity ID 'IM', non-empty name, and qualifier is neither 'M5' nor 'BN'
Applied to: ID Code Qualifier = 'AI'?
Action: The system checks if the ID code qualifier equals 'AI'
Logic Flow:
IF A valid N1 importer segment exists with entity ID 'IM', non-empty name, and qualifier is neither 'M5' nor 'BN'
AND The system checks if the ID code qualifier equals 'AI'
THEN:
• If the qualifier equals 'AI', the system copies importer data to cargo report without setting CSA indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid n1 importer segment with entity id 'im', non-empty name, and id code qualifier 'm5' exists.
Trigger Criteria:
Context: A valid N1 importer segment with entity ID 'IM', non-empty name, and ID code qualifier 'M5' exists
Applied to: Set CSA Indicator ON
Action: The system processes the M5 qualified importer
Logic Flow:
IF A valid N1 importer segment with entity ID 'IM', non-empty name, and ID code qualifier 'M5' exists
AND The system processes the M5 qualified importer
THEN:
• The system sets the CSA indicator to ON status to enable Canada-US trade processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when valid n1 importer segment with m5 qualifier has been processed and csa indicator is set on. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid N1 importer segment with M5 qualifier has been processed and CSA indicator is set ON
Applied to: Copy Importer Data to Cargo Report
Action: The system copies importer data
Logic Flow:
IF A valid N1 importer segment with M5 qualifier has been processed and CSA indicator is set ON
AND The system copies importer data
THEN:
• The system copies the importer name to GCCC-IMPORTER, ID code qualifier to GCCC-BUSINESS-NBR-QUAL, and ID code to GCCC-BUSINESS-NBR fields
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid n1 importer segment with bn or ai qualifier exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid N1 importer segment with BN or AI qualifier exists
Applied to: Copy Importer Data Only
Action: The system processes the non-M5 qualified importer
Logic Flow:
IF A valid N1 importer segment with BN or AI qualifier exists
AND The system processes the non-M5 qualified importer
THEN:
• The system copies the importer name to GCCC-IMPORTER, ID code qualifier to GCCC-BUSINESS-NBR-QUAL, and ID code to GCCC-BUSINESS-NBR fields without setting CSA indicator
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system has attempted to retrieve n1 importer segment from edi bol.
Trigger Criteria:
Context: The system has attempted to retrieve N1 importer segment from EDI BOL
Applied to: N1 Importer Segment Found?
Action: The system evaluates the retrieval status
Logic Flow:
IF The system has attempted to retrieve N1 importer segment from EDI BOL
AND The system evaluates the retrieval status
THEN:
• Processing continues if segment is found, otherwise CSA processing is skipped
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment has been retrieved from the edi bol.
Trigger Criteria:
Context: An N1 segment has been retrieved from the EDI BOL
Applied to: Check Entity ID Code = 'IM'
Action: The system checks the entity ID code in the N1 segment
Logic Flow:
IF An N1 segment has been retrieved from the EDI BOL
AND The system checks the entity ID code in the N1 segment
THEN:
• Processing continues only if the entity ID code equals 'IM' indicating an importer
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when n1 segment exists with entity id code 'im'.
Trigger Criteria:
Context: An N1 segment exists with entity ID code 'IM'
Applied to: Entity ID = 'IM' AND Name Not Empty?
Action: The system validates the entity name and ID code are not empty
Logic Flow:
IF An N1 segment exists with entity ID code 'IM'
AND The system validates the entity name and ID code are not empty
THEN:
• Processing continues if both name and ID code contain valid data, otherwise CSA processing ends
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid importer n1 segment with entity id 'im', valid name and id code.
Trigger Criteria:
Context: A valid importer N1 segment with entity ID 'IM', valid name and ID code
Applied to: ID Code Qualifier = 'M5'?
Action: The system checks if the ID code qualifier equals 'M5'
Logic Flow:
IF A valid importer N1 segment with entity ID 'IM', valid name and ID code
AND The system checks if the ID code qualifier equals 'M5'
THEN:
• CSA indicator is set ON if qualifier is M5, otherwise check for other qualifiers
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when importer n1 segment with m5 qualifier has been validated.
Trigger Criteria:
Context: An importer N1 segment with M5 qualifier has been validated
Applied to: Set CSA Indicator ON
Action: The system processes the M5 qualified importer
Logic Flow:
IF An importer N1 segment with M5 qualifier has been validated
AND The system processes the M5 qualified importer
THEN:
• The CSA indicator is set to ON to enable Canada-US trade processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid importer n1 segment with m5 qualifier. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid importer N1 segment with M5 qualifier
Applied to: Copy BOL N1 Importer Data
Action: The system copies importer data from the N1 segment
Logic Flow:
IF A valid importer N1 segment with M5 qualifier
AND The system copies importer data from the N1 segment
THEN:
• Importer name is copied to GCCC-IMPORTER, ID code qualifier to GCCC-BUSINESS-NBR-QUAL, and ID code to GCCC-BUSINESS-NBR
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid importer n1 segment without m5 qualifier.
Trigger Criteria:
Context: A valid importer N1 segment without M5 qualifier
Applied to: ID Code Qualifier = 'BN'?
Action: The system checks if the ID code qualifier equals 'BN'
Logic Flow:
IF A valid importer N1 segment without M5 qualifier
AND The system checks if the ID code qualifier equals 'BN'
THEN:
• Importer data is copied if qualifier is BN, otherwise check for AI qualifier
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when valid importer n1 segment without m5 or bn qualifier.
Trigger Criteria:
Context: A valid importer N1 segment without M5 or BN qualifier
Applied to: ID Code Qualifier = 'AI'?
Action: The system checks if the ID code qualifier equals 'AI'
Logic Flow:
IF A valid importer N1 segment without M5 or BN qualifier
AND The system checks if the ID code qualifier equals 'AI'
THEN:
• Importer data is copied if qualifier is AI, otherwise CSA processing ends
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when valid importer n1 segment with bn or ai qualifier. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid importer N1 segment with BN or AI qualifier
Applied to: Copy BOL N1 Importer Data Only
Action: The system copies importer data from the N1 segment
Logic Flow:
IF A valid importer N1 segment with BN or AI qualifier
AND The system copies importer data from the N1 segment
THEN:
• Importer name, ID code qualifier, and ID code are copied to cargo fields but CSA indicator remains OFF
R-GCCCBOL-cbl-00410 (+17)File: GCCCBOL.cblBusiness Rule: Check Fastway for CSA
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to search fastway data for csa importer information.
Trigger Criteria:
Context: The system needs to search Fastway data for CSA importer information
Applied to: Initialize N101 Search Flag
Action: The CSA Fastway search process begins
Logic Flow:
IF The system needs to search Fastway data for CSA importer information
AND The CSA Fastway search process begins
THEN:
• The N101 search flag is set to not found and data start index is set to 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when shipmine data contains multiple data lines with various segment types.
Trigger Criteria:
Context: SHIPMINE data contains multiple data lines with various segment types
Applied to: Search SHIPMINE for N1-01 IM Segment
Action: The system searches through data lines from the current start index to position 5
Logic Flow:
IF SHIPMINE data contains multiple data lines with various segment types
AND The system searches through data lines from the current start index to position 5
THEN:
• The system identifies any data line that begins with ' N1-01 IM' and sets the N101 found flag
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when current shipmine segment has been searched and n1-01 im was not found.
Trigger Criteria:
Context: The current SHIPMINE segment has been searched and N1-01 IM was not found
Applied to: Move to Next SHIPMINE Segment
Action: The system needs to continue searching in subsequent segments
Logic Flow:
IF The current SHIPMINE segment has been searched and N1-01 IM was not found
AND The system needs to continue searching in subsequent segments
THEN:
• The shipmine segment number is incremented by 1, the next SHIPMINE segment is retrieved, and the data start index is reset to 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when n1-01 im segment has been found in the current data position.
Trigger Criteria:
Context: An N1-01 IM segment has been found in the current data position
Applied to: Extract N1-02 Importer Name
Action: The system checks the next data line for N1-02 importer name information
Logic Flow:
IF An N1-01 IM segment has been found in the current data position
AND The system checks the next data line for N1-02 importer name information
THEN:
• If the next data line contains ' N1-02', the importer name is extracted from positions 8-28 of that line and stored as the CSA importer name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when importer name has been extracted from n1-02 segment.
Trigger Criteria:
Context: The importer name has been extracted from N1-02 segment
Applied to: Check Next Data Line for N1-03
Action: The system examines the next data line for N1-03 qualifier information
Logic Flow:
IF The importer name has been extracted from N1-02 segment
AND The system examines the next data line for N1-03 qualifier information
THEN:
• If the data line contains ' N1-03 M5', ' N1-03 BN', or ' N1-03 AI', the corresponding qualifier (M5, BN, or AI) is stored as the business number qualifier
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when valid business number qualifier has been found in the n1-03 segment.
Trigger Criteria:
Context: A valid business number qualifier has been found in the N1-03 segment
Applied to: Check Next Data Line for N1-04
Action: The system checks the next data line for N1-04 business number information
Logic Flow:
IF A valid business number qualifier has been found in the N1-03 segment
AND The system checks the next data line for N1-04 business number information
THEN:
• If the data line contains ' N1-04', the business number is extracted from positions 8-17 of that line and stored as the business number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when business number has been successfully extracted from the n1-04 segment.
Trigger Criteria:
Context: A business number has been successfully extracted from the N1-04 segment
Applied to: Set CSA Indicator ON
Action: The business number qualifier is 'M5'
Logic Flow:
IF A business number has been successfully extracted from the N1-04 segment
AND The business number qualifier is 'M5'
THEN:
• The CSA indicator is set to ON to enable CSA-specific processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when valid importer name and business number have been extracted from shipmine data.
Trigger Criteria:
Context: Valid importer name and business number have been extracted from SHIPMINE data
Applied to: Store Importer Name and Business Number
Action: The N1-04 business number segment has been processed
Logic Flow:
IF Valid importer name and business number have been extracted from SHIPMINE data
AND The N1-04 business number segment has been processed
THEN:
• The importer name is stored in the importer field and the business number is stored in the business number field for subsequent CSA processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system is searching through shipmine segments for csa importer information.
Trigger Criteria:
Context: The system is searching through SHIPMINE segments for CSA importer information
Applied to: More SHIPMINE Segments?
Action: The current data index exceeds position 5 in the current segment
Logic Flow:
IF The system is searching through SHIPMINE segments for CSA importer information
AND The current data index exceeds position 5 in the current segment
THEN:
• The system attempts to retrieve the next SHIPMINE segment and continues processing if available, or terminates the search if no more segments exist
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when csa processing is required for fastway shipment data.
Trigger Criteria:
Context: CSA processing is required for Fastway shipment data
Applied to: Initialize N101 Search Flag
Action: the system begins searching for CSA importer information
Logic Flow:
IF CSA processing is required for Fastway shipment data
AND the system begins searching for CSA importer information
THEN:
• the N101 search flag is set to not found and data start index is initialized to 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipmine data is available for processing.
Trigger Criteria:
Context: SHIPMINE data is available for processing
Applied to: Search SHIPMINE for N101 Importer Segment
Action: searching for importer segments with data line containing ' N1-01 IM'
Logic Flow:
IF SHIPMINE data is available for processing
AND searching for importer segments with data line containing ' N1-01 IM'
THEN:
• the N101 found flag is set to true when the segment is located
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system is searching for csa importer data in shipmine.
Trigger Criteria:
Context: the system is searching for CSA importer data in SHIPMINE
Applied to: Exit - No CSA Data
Action: SHIPMINE data is not found or exhausted
Logic Flow:
IF the system is searching for CSA importer data in SHIPMINE
AND SHIPMINE data is not found or exhausted
THEN:
• the CSA search process exits without setting CSA indicators
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when current shipmine segment data index is greater than 5.
Trigger Criteria:
Context: current SHIPMINE segment data index is greater than 5
Applied to: Move to Next SHIPMINE Segment
Action: more data processing is required
Logic Flow:
IF current SHIPMINE segment data index is greater than 5
AND more data processing is required
THEN:
• increment SHIPMINE segment number and reset data index to 1 if next segment is found
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when data line contains ' n1-02' segment identifier.
Trigger Criteria:
Context: a data line contains ' N1-02' segment identifier
Applied to: Extract Importer Name
Action: processing CSA importer information
Logic Flow:
IF a data line contains ' N1-02' segment identifier
AND processing CSA importer information
THEN:
• extract characters 8-28 from the data line as the CSA importer name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when data line contains ' n1-03' segment with qualifier m5, bn, or ai.
Trigger Criteria:
Context: a data line contains ' N1-03' segment with qualifier M5, BN, or AI
Applied to: Set Business Number Qualifier M5/BN/AI
Action: processing business number qualifier information
Logic Flow:
IF a data line contains ' N1-03' segment with qualifier M5, BN, or AI
AND processing business number qualifier information
THEN:
• set the business number qualifier to M5, BN, or AI respectively based on the segment data
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when data line contains ' n1-04' segment identifier. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: a data line contains ' N1-04' segment identifier
Applied to: Extract Business Number
Action: processing business number information
Logic Flow:
IF a data line contains ' N1-04' segment identifier
AND processing business number information
THEN:
• extract characters 8-17 as business number and copy importer name to CSA importer field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when business number qualifier is set to m5.
Trigger Criteria:
Context: business number qualifier is set to M5
Applied to: Set CSA Indicator ON
Action: processing N1-04 business number segment
Logic Flow:
IF business number qualifier is set to M5
AND processing N1-04 business number segment
THEN:
• set the CSA indicator to ON to enable CSA processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when n1-04 segment is not found in the current data processing.
Trigger Criteria:
Context:N1-04 segment is not found in the current data processing
Applied to: Clear Business Number Qualifier
Action: business number extraction fails
Logic Flow:
IFN1-04 segment is not found in the current data processing
AND business number extraction fails
THEN:
• clear the business number qualifier field to spaces
R-GCCCBOL-cbl-00419 (+6)File: GCCCBOL.cblBusiness Rule: Parse Broker Name Using Standard Formats
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when broker name string is provided for parsing.
Trigger Criteria:
Context: A broker name string is provided for parsing
Applied to: Check if starts with 'CUSTOMS BROKER '
Action: The string starts with 'CUSTOMS BROKER ' (15 characters including space)
Logic Flow:
IF A broker name string is provided for parsing
AND The string starts with 'CUSTOMS BROKER ' (15 characters including space)
THEN:
• Extract the broker name from position 16 to 43 (28 characters) and store it as the parsed broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when broker name string is provided for parsing and it does not start with 'customs broker '.
Trigger Criteria:
Context: A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER '
Applied to: '
Action: The string starts with 'CUSTOMS BROKER: ' (16 characters including colon and space)
Logic Flow:
IF A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER '
AND The string starts with 'CUSTOMS BROKER: ' (16 characters including colon and space)
THEN:
• Extract the broker name from position 17 to 43 (27 characters) and store it as the parsed broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when broker name string is provided for parsing and it does not start with 'customs broker ' or 'customs broker: '.
Trigger Criteria:
Context: A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER ' or 'CUSTOMS BROKER: '
Applied to: Check if starts with 'BROKER '
Action: The string starts with 'BROKER ' (7 characters including space)
Logic Flow:
IF A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER ' or 'CUSTOMS BROKER: '
AND The string starts with 'BROKER ' (7 characters including space)
THEN:
• Extract the broker name from position 8 to 43 (36 characters) and store it as the parsed broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when broker name string is provided for parsing and it does not start with 'customs broker ', 'customs broker: ', or 'broker '.
Trigger Criteria:
Context: A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', or 'BROKER '
Applied to: '
Action: The string starts with 'BROKER: ' (8 characters including colon and space)
Logic Flow:
IF A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', or 'BROKER '
AND The string starts with 'BROKER: ' (8 characters including colon and space)
THEN:
• Extract the broker name from position 9 to 43 (35 characters) and store it as the parsed broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when broker name string is provided for parsing and it does not start with 'customs broker ', 'customs broker: ', 'broker ', or 'broker: '.
Trigger Criteria:
Context: A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', or 'BROKER: '
Applied to: Check if starts with 'CB ' or 'XQ '
Action: The string starts with 'CB ' or 'XQ ' (3 characters including space)
Logic Flow:
IF A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', or 'BROKER: '
AND The string starts with 'CB ' or 'XQ ' (3 characters including space)
THEN:
• Extract the broker name from position 4 to 44 (41 characters) and store it as the parsed broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when broker name string is provided for parsing and it does not start with 'customs broker ', 'customs broker: ', 'broker ', 'broker: ', 'cb ', or 'xq '.
Trigger Criteria:
Context: A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', 'BROKER: ', 'CB ', or 'XQ '
Applied to: ' or 'XQ: '
Action: The string starts with 'CB: ' or 'XQ: ' (4 characters including colon and space)
Logic Flow:
IF A broker name string is provided for parsing and it does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', 'BROKER: ', 'CB ', or 'XQ '
AND The string starts with 'CB: ' or 'XQ: ' (4 characters including colon and space)
THEN:
• Extract the broker name from position 5 to 44 (40 characters) and store it as the parsed broker name
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when broker name string is provided for parsing and it does not start with any standard prefixes.
Trigger Criteria:
Context: A broker name string is provided for parsing and it does not start with any standard prefixes
Applied to: Use entire string as broker name
Action: The string does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', 'BROKER: ', 'CB ', 'XQ ', 'CB: ', or 'XQ: '
Logic Flow:
IF A broker name string is provided for parsing and it does not start with any standard prefixes
AND The string does not start with 'CUSTOMS BROKER ', 'CUSTOMS BROKER: ', 'BROKER ', 'BROKER: ', 'CB ', 'XQ ', 'CB: ', or 'XQ: '
THEN:
• Use the entire string as the parsed broker name without any modification
R-GCCCBOL-cbl-00426 (+4)File: GCCCBOL.cblBusiness Rule: Get Payment Method from EBSBCBC
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment requires payment method information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A shipment requires payment method information
Applied to: Call 8430-GET-EBSBCBC to retrieve BOL data
Action: The system calls the BOL data retrieval service
Logic Flow:
IF A shipment requires payment method information
AND The system calls the BOL data retrieval service
THEN:
• The EBSBCBC segment data is retrieved from the BOL system
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when bol data retrieval has been attempted.
Trigger Criteria:
Context: BOL data retrieval has been attempted
Applied to: EBSBCBC segment found?
Action: The system checks if EBSBCBC segment was found
Logic Flow:
IF BOL data retrieval has been attempted
AND The system checks if EBSBCBC segment was found
THEN:
• Processing continues only if the BOL segment exists, otherwise payment method processing is skipped
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when ebsbcbc bol segment is available.
Trigger Criteria:
Context: EBSBCBC BOL segment is available
Applied to: Payment method field not empty?
Action: The system checks the B2-SHIPMENT-METH-PAY field
Logic Flow:
IF EBSBCBC BOL segment is available
AND The system checks the B2-SHIPMENT-METH-PAY field
THEN:
• Payment method is processed only if the field is not empty or spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when ebsbcbc segment exists and payment method field contains valid data.
Trigger Criteria:
Context: EBSBCBC segment exists and payment method field contains valid data
Applied to: Extract B2-SHIPMENT-METH-PAY from BOL
Action: The system processes the payment method extraction
Logic Flow:
IF EBSBCBC segment exists and payment method field contains valid data
AND The system processes the payment method extraction
THEN:
• The B2-SHIPMENT-METH-PAY value is extracted from the BOL segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when payment method has been successfully extracted from bol data.
Trigger Criteria:
Context: Payment method has been successfully extracted from BOL data
Applied to: Store payment method in GCCC-BX03-SHIP-METH-PAY
Action: The system stores the payment method
Logic Flow:
IF Payment method has been successfully extracted from BOL data
AND The system stores the payment method
THEN:
• The extracted value is moved to GCCC-BX03-SHIP-METH-PAY field
Business Justification: Defines the strict business conditions required to proceed when cargo reference data search is being initiated for ebsbccy segments.
Trigger Criteria:
Context: A cargo reference data search is being initiated for EBSBCCY segments
Applied to: Set EBSBCCY Indicator to Spaces
Action: The system prepares to search for cargo reference information
Logic Flow:
IF A cargo reference data search is being initiated for EBSBCCY segments
AND The system prepares to search for cargo reference information
THEN:
• The EBSBCCY indicator should be set to spaces and the EBSBCCY segment data should be cleared
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system is preparing to search for cargo reference data in ebsbccy segments.
Trigger Criteria:
Context: The system is preparing to search for cargo reference data in EBSBCCY segments
Applied to: Set Type-3 to 'CR'
Action: The search parameters are being configured
Logic Flow:
IF The system is preparing to search for cargo reference data in EBSBCCY segments
AND The search parameters are being configured
THEN:
• The Type-3 parameter should be set to 'CR' to identify cargo reference segment types
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system is preparing to process multiple cargo reference segments sequentially. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is preparing to process multiple cargo reference segments sequentially
Applied to: Initialize Sequence Counter to 0
Action: The sequence management is being initialized
Logic Flow:
IF The system is preparing to process multiple cargo reference segments sequentially
AND The sequence management is being initialized
THEN:
• The sequence counter (WS-SEQ) should be set to 0 to start from the beginning
R-GCCCBOL-cbl-00434 (+4)File: GCCCBOL.cblBusiness Rule: Extract Numeric Characters from Quantity Field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when quantity field cy-n10-quantity with 7 character positions that may contain mixed alphanumeric data.
Trigger Criteria:
Context: A quantity field CY-N10-QUANTITY with 7 character positions that may contain mixed alphanumeric data
Applied to: Extract Numeric Characters from Quantity Field - Process quantity field character by character to build numeric string with right-to-left positioning
Action: The system processes the quantity field for multi-bill shipment data extraction
Logic Flow:
IF A quantity field CY-N10-QUANTITY with 7 character positions that may contain mixed alphanumeric data
AND The system processes the quantity field for multi-bill shipment data extraction
THEN:
• The system should iterate through positions 7 down to 1, extract only numeric characters, place them in corresponding positions in a work field, replace leading spaces with zeros, and move the final cleaned quantity to the output field GCCC-LADING-QUANTITY
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when quantity extraction process is starting. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A quantity extraction process is starting
Applied to: Set Index to Position 7
Action: The system begins to process the quantity field
Logic Flow:
IF A quantity extraction process is starting
AND The system begins to process the quantity field
THEN:
• The system should set the index WS-INDEX to position 7 and initialize the quantity work field WS-QUANTITY to spaces
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when character at a specific position in the cy-n10-quantity field. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A character at a specific position in the CY-N10-QUANTITY field
Applied to: Is Character at Current Position Numeric?
Action: The system evaluates the character during quantity processing
Logic Flow:
IF A character at a specific position in the CY-N10-QUANTITY field
AND The system evaluates the character during quantity processing
THEN:
• The system should check if the character at WS-DATA-IDX position is numeric and only process numeric characters for inclusion in the final quantity
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when numeric character found at the current position in cy-n10-quantity. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A numeric character found at the current position in CY-N10-QUANTITY
Applied to: Move Character to Work Field at Index Position
Action: The character passes numeric validation
Logic Flow:
IF A numeric character found at the current position in CY-N10-QUANTITY
AND The character passes numeric validation
THEN:
• The system should move the numeric character to the WS-QUANTITY work field at the current WS-INDEX position and decrement the index by 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when work field ws-quantity containing extracted numeric characters with potential leading spaces. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A work field WS-QUANTITY containing extracted numeric characters with potential leading spaces
Applied to: Replace Leading Spaces with Zeros
Action: All character positions have been processed
Logic Flow:
IF A work field WS-QUANTITY containing extracted numeric characters with potential leading spaces
AND All character positions have been processed
THEN:
• The system should inspect WS-QUANTITYand replace all leading spaces with zeros to create a properly formatted numeric value
R-GCCCBOL-cbl-00439 (+4)File: GCCCBOL.cblBusiness Rule: Format VIN with Prefix
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when vehicle identification number field from motor vehicle segment.
Trigger Criteria:
Context: A vehicle identification number field from motor vehicle segment
Applied to: VIN Number Available?
Action: The system evaluates the VIN field content
Logic Flow:
IF A vehicle identification number field from motor vehicle segment
AND The system evaluates the VIN field content
THEN:
• Processing continues if VIN is not equal to spaces or low-values, otherwise VIN processing is skipped
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when motor vehicle segment with vehicle identification data.
Trigger Criteria:
Context: A motor vehicle segment with vehicle identification data
Applied to: Get Vehicle ID Number
Action: The system processes the MV segment
Logic Flow:
IF A motor vehicle segment with vehicle identification data
AND The system processes the MV segment
THEN:
• The vehicle ID number is extracted from the VC-VEHICLE-ID-NO field
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when valid vehicle identification number.
Trigger Criteria:
Context: A valid vehicle identification number
Applied to: Create VIN String
Action: The system formats the VIN for storage
Logic Flow:
IF A valid vehicle identification number
AND The system formats the VIN for storage
THEN:
• A string is created by concatenating 'VIN' text followed by the vehicle identification number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Dictates the expected operational logic and validation steps when successfully formatted vin string.
Trigger Criteria:
Context: A successfully formatted VIN string
Applied to: Store Formatted VIN
Action: The VIN is stored in the description array
Logic Flow:
IF A successfully formatted VIN string
AND The VIN is stored in the description array
THEN:
• The VIN quantity counter is incremented by 1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when vin counter and maximum vin capacity limit.
Trigger Criteria:
Context: A VIN counter and maximum VIN capacity limit
Applied to: Store Formatted VIN
Action: The system attempts to store a VIN
Logic Flow:
IF A VIN counter and maximum VIN capacity limit
AND The system attempts to store a VIN
THEN:
• The VIN is stored only if the current VIN quantity is less than or equal to the maximum allowed VINs
R-GCCCBOL-cbl-00444 (+10)File: GCCCBOL.cblBusiness Rule: Search SHIPMINE for N1
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to search for n1-01 im importer segments in shipmine data.
Trigger Criteria:
Context: The system needs to search for N1-01 IM importer segments in SHIPMINE data
Applied to: Set N1-01 Not Found Flag
Action: The search process begins
Logic Flow:
IF The system needs to search for N1-01 IM importer segments in SHIPMINE data
AND The search process begins
THEN:
• The system sets the N1-01 found flag to false (not found) to initialize the search state
Rule Belongs to : GCCCBOL.cbl
Business Justification: Ensures correct system behavior and process compliance when system has a defined starting position for data search.
Trigger Criteria:
Context: The system has a defined starting position for data search
Applied to: Initialize Data Index from Start Position
Action: Beginning to search through SHIPMINE data lines
Logic Flow:
IF The system has a defined starting position for data search
AND Beginning to search through SHIPMINE data lines
THEN:
• The system sets the data index to the specified starting position to begin sequential search
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system is searching through shipmine data lines with a current data index position.
Trigger Criteria:
Context: The system is searching through SHIPMINE data lines with a current data index position
Applied to: Data Index <= 5?
Action: Checking if more data lines exist in the current segment
Logic Flow:
IF The system is searching through SHIPMINE data lines with a current data index position
AND Checking if more data lines exist in the current segment
THEN:
• The system validates that the data index is less than or equal to 5 to stay within segment boundaries
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system is examining a shipmine data line at the current index position.
Trigger Criteria:
Context: The system is examining a SHIPMINE data line at the current index position
Applied to: Data Line Contains 'N1-01 IM'?
Action: Checking the data line content for importer segment identification
Logic Flow:
IF The system is examining a SHIPMINE data line at the current index position
AND Checking the data line content for importer segment identification
THEN:
• The system determines if the data line contains the exact pattern 'N1-01 IM' starting at position 1 through 9
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when system has identified a data line containing the n1-01 im pattern.
Trigger Criteria:
Context: The system has identified a data line containing the N1-01 IM pattern
Applied to: Set N1-01 Found Flag
Action: The importer segment is successfully located
Logic Flow:
IF The system has identified a data line containing the N1-01 IM pattern
AND The importer segment is successfully located
THEN:
• The system sets the N1-01 found flag to true to indicate successful discovery
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when current data line does not contain the n1-01 im pattern and the search continues.
Trigger Criteria:
Context: The current data line does not contain the N1-01 IM pattern and the search continues
Applied to: Increment Data Index
Action: Moving to examine the next data line in the current segment
Logic Flow:
IF The current data line does not contain the N1-01 IM pattern and the search continues
AND Moving to examine the next data line in the current segment
THEN:
• The system increments the data index by 1 to advance to the next sequential data line
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system has completed searching the current segment or reached segment boundary.
Trigger Criteria:
Context: The system has completed searching the current segment or reached segment boundary
Applied to:N1-01 Found?
Action: Determining next action based on search results
Logic Flow:
IF The system has completed searching the current segment or reached segment boundary
AND Determining next action based on search results
THEN:
• The system checks if the N1-01 found flag is true to decide whether to continue searching or proceed with processing
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when n1-01 im pattern was not found in the current shipmine segment.
Trigger Criteria:
Context: The N1-01 IM pattern was not found in the current SHIPMINE segment
Applied to: Move to Next SHIPMINE Segment
Action: Continuing the search in additional segments
Logic Flow:
IF The N1-01 IM pattern was not found in the current SHIPMINE segment
AND Continuing the search in additional segments
THEN:
• The system increments the SHIPMINE segment number by 1 to access the next available segment
Rule Belongs to : GCCCBOL.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to access the next shipmine segment for continued searching. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system needs to access the next SHIPMINE segment for continued searching
Applied to: Get Next SHIPMINE Data
Action: Retrieving data from the next segment number
Logic Flow:
IF The system needs to access the next SHIPMINE segment for continued searching
AND Retrieving data from the next segment number
THEN:
• The system performs a database call to get SHIPMINE data using the incremented segment number
Rule Belongs to : GCCCBOL.cbl
Business Justification: Defines the strict business conditions required to proceed when system has attempted to retrieve the next shipmine segment.
Trigger Criteria:
Context: The system has attempted to retrieve the next SHIPMINE segment
Applied to: SHIPMINE Data Found?
Action: Checking if the segment retrieval was successful
Logic Flow:
IF The system has attempted to retrieve the next SHIPMINE segment
AND Checking if the segment retrieval was successful
THEN:
• The system validates that the SHIPMINE data was found (status code is spaces) to determine if more data is available for searching
Rule Belongs to : GCCCBOL.cbl
Business Justification: Establishes the required business protocol to be followed when new shipmine segment has been successfully retrieved.
Trigger Criteria:
Context: A new SHIPMINE segment has been successfully retrieved
Applied to: Reset Data Index to 1
Action: Starting to search through the new segment's data lines
Logic Flow:
IF A new SHIPMINE segment has been successfully retrieved
AND Starting to search through the new segment's data lines
THEN:
• The system resets the data index to 1 to begin searching from the first data line of the new segment
📁 File: GCCCCADD.cbl
Select All in File
R-GCCCCADD-cbl-00041 (+8)File: GCCCCADD.cblBusiness Rule: Program Initialization
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when customs manifest creation request is initiated.
Trigger Criteria:
Context: A customs manifest creation request is initiated
Applied to: Waybill Key Present?
Action: The system checks for waybill key presence
Logic Flow:
IF A customs manifest creation request is initiated
AND The system checks for waybill key presence
THEN:
• If waybill key is spaces, set return status to invalid waybill key, otherwise proceed to numeric validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when waybill key is present in the request.
Trigger Criteria:
Context: A waybill key is present in the request
Applied to: Waybill Key Numeric?
Action: The system validates the waybill key format
Logic Flow:
IF A waybill key is present in the request
AND The system validates the waybill key format
THEN:
• If waybill key is not numeric, set return status to invalid waybill key, otherwise proceed to shipment retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid numeric waybill key is provided.
Trigger Criteria:
Context: A valid numeric waybill key is provided
Applied to: Retrieve Shipment Root Data
Action: The system attempts to retrieve shipment root data
Logic Flow:
IF A valid numeric waybill key is provided
AND The system attempts to retrieve shipment root data
THEN:
• Execute shipment root data retrieval process using the waybill key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment root data retrieval has been attempted.
Trigger Criteria:
Context: Shipment root data retrieval has been attempted
Applied to: Shipment Found?
Action: The system checks if shipment data was found
Logic Flow:
IF Shipment root data retrieval has been attempted
AND The system checks if shipment data was found
THEN:
• If shipment found, set return status to OK, otherwise set return status to waybill not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when program initialization is in progress.
Trigger Criteria:
Context: Program initialization is in progress
Applied to: Initialize Working Variables
Action: Working variables need to be set to initial state
Logic Flow:
IF Program initialization is in progress
AND Working variables need to be set to initial state
THEN:
• Set message index to zero, initialize counters, clear message fields, and set error flags to off state
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when customs manifest processing is being initialized.
Trigger Criteria:
Context: Customs manifest processing is being initialized
Applied to: Check for Existing Importer Data
Action: The system evaluates importer data availability
Logic Flow:
IF Customs manifest processing is being initialized
AND The system evaluates importer data availability
THEN:
• If importer, business number, and business number qualifier are all present, proceed to search for existing importer records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data exists in input and search criteria are met.
Trigger Criteria:
Context: Importer data exists in input and search criteria are met
Applied to: Search for Existing Importer in Customs Records
Action: The system searches customs records from sequence 3 to 24
Logic Flow:
IF Importer data exists in input and search criteria are met
AND The system searches customs records from sequence 3 to 24
THEN:
• For each sequence, retrieve customs record type 55 and check if entity ID equals 'IM' for importer records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when existing importer record is found in customs records.
Trigger Criteria:
Context: An existing importer record is found in customs records
Applied to: Backup Existing Importer Data
Action: The system processes the found importer data
Logic Flow:
IF An existing importer record is found in customs records
AND The system processes the found importer data
THEN:
• Extract and store all importer details including name, address, contact information, and clear original importer fields from input
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when program initialization is completing.
Trigger Criteria:
Context: Program initialization is completing
Applied to: Initialize Customs Record Arrays
Action: Customs record storage areas need to be prepared
Logic Flow:
IF Program initialization is completing
AND Customs record storage areas need to be prepared
THEN:
• Clear customs record type 55 arrays and set initial sequence index to 3
R-GCCCCADD-cbl-00050 (+13)File: GCCCCADD.cblBusiness Rule: Importer Data Backup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when corrector edi transaction is being processed and importer data exists in input parameters and business number and business number qualifier are present.
Trigger Criteria:
Context: A corrector EDI transaction is being processed AND importer data exists in input parameters AND business number and business number qualifier are present
Applied to: Corrector EDI with Existing Importer Data?
Action: The system checks for existing importer data
Logic Flow:
IF A corrector EDI transaction is being processed AND importer data exists in input parameters AND business number and business number qualifier are present
AND The system checks for existing importer data
THEN:
• The system should initiate backup process if all importer fields are populated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer backup process has been initiated and ccn key is available.
Trigger Criteria:
Context: Importer backup process has been initiated AND CCN key is available
Applied to: Search Existing Importer Records in Customs Database
Action: The system searches customs records from sequence 3 to 24 for importer entity type 'IM'
Logic Flow:
IF Importer backup process has been initiated AND CCN key is available
AND The system searches customs records from sequence 3 to 24 for importer entity type 'IM'
THEN:
• The system should iterate through each sequence until importer is found or maximum sequence is reached
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has searched customs database records for importer information.
Trigger Criteria:
Context: System has searched customs database records for importer information
Applied to: Importer Record Found?
Action: A record is retrieved with entity ID code equal to 'IM'
Logic Flow:
IF System has searched customs database records for importer information
AND A record is retrieved with entity ID code equal to 'IM'
THEN:
• The system should set importer found flag and proceed with data extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer record has been found in the customs database.
Trigger Criteria:
Context: An importer record has been found in the customs database
Applied to: Extract Current Importer Information
Action: The system processes the importer record
Logic Flow:
IF An importer record has been found in the customs database
AND The system processes the importer record
THEN:
• The system should extract entity ID, name, CHOP code, business identifiers, and set importer found status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer information has been extracted from database record.
Trigger Criteria:
Context: Importer information has been extracted from database record
Applied to: Backup Importer Name and CHOP Code
Action: The system processes importer identification data
Logic Flow:
IF Importer information has been extracted from database record
AND The system processes importer identification data
THEN:
• The system should store importer name and CHOP code in temporary backup variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer identification data has been backed up.
Trigger Criteria:
Context: Importer identification data has been backed up
Applied to: Backup Business Number and Qualifier
Action: The system processes business registration information
Logic Flow:
IF Importer identification data has been backed up
AND The system processes business registration information
THEN:
• The system should store business number qualifier and business number in temporary backup variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when business registration data has been backed up.
Trigger Criteria:
Context: Business registration data has been backed up
Applied to: Backup Address Information
Action: The system processes address information
Logic Flow:
IF Business registration data has been backed up
AND The system processes address information
THEN:
• The system should store address line 1 and address line 2 in temporary backup variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when address information has been backed up.
Trigger Criteria:
Context: Address information has been backed up
Applied to: Backup City, State, Postal Code
Action: The system processes geographic location data
Logic Flow:
IF Address information has been backed up
AND The system processes geographic location data
THEN:
• The system should store city name, state/province code, and postal code in temporary backup variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when geographic location data has been backed up.
Trigger Criteria:
Context: Geographic location data has been backed up
Applied to: Backup Country Code
Action: The system processes country information
Logic Flow:
IF Geographic location data has been backed up
AND The system processes country information
THEN:
• The system should store country code in temporary backup variable
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when country information has been backed up.
Trigger Criteria:
Context: Country information has been backed up
Applied to: Backup Contact Information
Action: The system processes contact details
Logic Flow:
IF Country information has been backed up
AND The system processes contact details
THEN:
• The system should store contact function code, person name, communication number qualifier, and communication number in temporary backup variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when contact information has been backed up.
Trigger Criteria:
Context: Contact information has been backed up
Applied to: Store CSA Indicator Status
Action: The system processes CSA program status
Logic Flow:
IF Contact information has been backed up
AND The system processes CSA program status
THEN:
• The system should store CSA indicator value in temporary backup variable
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when all importer data has been backed up to temporary variables.
Trigger Criteria:
Context: All importer data has been backed up to temporary variables
Applied to: Set Backup Completion Flag
Action: The backup process completes successfully
Logic Flow:
IF All importer data has been backed up to temporary variables
AND The backup process completes successfully
THEN:
• The system should set importer found flag to indicate backup completion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data backup has been completed.
Trigger Criteria:
Context: Importer data backup has been completed
Applied to: Clear Original Importer Fields
Action: The system prepares for corrector processing
Logic Flow:
IF Importer data backup has been completed
AND The system prepares for corrector processing
THEN:
• The system should clear importer, business number, and business number qualifier fields from input
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system is not processing corrector edi or no existing importer data is found in database search.
Trigger Criteria:
Context: System is not processing corrector EDI OR no existing importer data is found in database search
Applied to: Skip Backup - No Existing Data
Action: The backup process evaluation occurs
Logic Flow:
IF System is not processing corrector EDI OR no existing importer data is found in database search
AND The backup process evaluation occurs
THEN:
• The system should skip backup operations and continue with normal processing
R-GCCCCADD-cbl-00064 (+7)File: GCCCCADD.cblBusiness Rule: Cargo Control Setup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when waybill key is provided in the input parameters.
Trigger Criteria:
Context: A waybill key is provided in the input parameters
Applied to: Set CCN Key from Waybill
Action: The cargo control setup process begins
Logic Flow:
IF A waybill key is provided in the input parameters
AND The cargo control setup process begins
THEN:
• The waybill key should be assigned to the cargo control waybill key for index field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when waybill number index exists in the cargo control data.
Trigger Criteria:
Context: A waybill number index exists in the cargo control data
Applied to: Extract Waybill Number
Action: The waybill number needs to be extracted
Logic Flow:
IF A waybill number index exists in the cargo control data
AND The waybill number needs to be extracted
THEN:
• The waybill number index value should be assigned to the main waybill number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when new cargo control record is being created.
Trigger Criteria:
Context: A new cargo control record is being created
Applied to: Set Status to Pending
Action: The status needs to be initialized
Logic Flow:
IF A new cargo control record is being created
AND The status needs to be initialized
THEN:
• The cargo control status should be set to pending
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment root data contains a car id.
Trigger Criteria:
Context: Shipment root data contains a car ID
Applied to: Extract Equipment Car ID
Action: Equipment information needs to be assigned to cargo control
Logic Flow:
IF Shipment root data contains a car ID
AND Equipment information needs to be assigned to cargo control
THEN:
• The car ID from shipment root should be assigned to the cargo control equipment car field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo control record is being initialized.
Trigger Criteria:
Context: A cargo control record is being initialized
Applied to: Set Error/Release Status
Action: The error or release status needs to be set
Logic Flow:
IF A cargo control record is being initialized
AND The error or release status needs to be set
THEN:
• The error or release status index should be set to 'E'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment root data contains a waybill date.
Trigger Criteria:
Context: Shipment root data contains a waybill date
Applied to: Extract Waybill Date
Action: Waybill date information needs to be assigned to cargo control
Logic Flow:
IF Shipment root data contains a waybill date
AND Waybill date information needs to be assigned to cargo control
THEN:
• The waybill date from shipment root should be assigned to both cargo control waybill date and waybill date index fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when waybill date has been extracted and assigned.
Trigger Criteria:
Context: The waybill date has been extracted and assigned
Applied to: Set Waybill Date Index
Action: The waybill date index needs to be set
Logic Flow:
IF The waybill date has been extracted and assigned
AND The waybill date index needs to be set
THEN:
• The waybill date should be assigned to the waybill date index field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when equipment car information has been assigned to cargo control.
Trigger Criteria:
Context: Equipment car information has been assigned to cargo control
Applied to: Set Equipment ID for Index
Action: The equipment ID index needs to be set
Logic Flow:
IF Equipment car information has been assigned to cargo control
AND The equipment ID index needs to be set
THEN:
• The equipment car value should be assigned to the equipment ID for index field
R-GCCCCADD-cbl-00072 (+3)File: GCCCCADD.cblBusiness Rule: Border Arrival Date Calculation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment root record exists with waybill date information.
Trigger Criteria:
Context: A shipment root record exists with waybill date information
Applied to: Extract Waybill Date from SHIPROOT
Action: The system needs to calculate border arrival ETA
Logic Flow:
IF A shipment root record exists with waybill date information
AND The system needs to calculate border arrival ETA
THEN:
• The waybill date is extracted from the shipment root record and stored in work variables for date calculation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when waybill date exists and needs eta calculation.
Trigger Criteria:
Context: A waybill date exists and needs ETA calculation
Applied to: Configure Date Calculation Parameters
Action: The system prepares to calculate border arrival date
Logic Flow:
IF A waybill date exists and needs ETA calculation
AND The system prepares to calculate border arrival date
THEN:
• The date calculation is configured to add days operation with the waybill date formatted with century information and the configured number of days for ETA
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when date calculation parameters are properly configured with waybill date and days to add. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Date calculation parameters are properly configured with waybill date and days to add
Applied to: Call Date Calculation Utility ISCDTCAL
Action: The system needs to calculate the border arrival ETA
Logic Flow:
IF Date calculation parameters are properly configured with waybill date and days to add
AND The system needs to calculate the border arrival ETA
THEN:
• The ISCDTCAL utility is called to perform the date arithmetic operation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when date calculation utility has been executed.
Trigger Criteria:
Context: The date calculation utility has been executed
Applied to: Date Calculation Successful?
Action: The system checks the calculation result status
Logic Flow:
IF The date calculation utility has been executed
AND The system checks the calculation result status
THEN:
• If calculation is successful, the new calculated date is set as border arrival ETA, otherwise an invalid waybill date error message is retrieved and added to the message collection
R-GCCCCADD-cbl-00076 (+8)File: GCCCCADD.cblBusiness Rule: Station Information Retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record with origin station information.
Trigger Criteria:
Context: A shipment record with origin station information
Applied to: Origin Station Name Present?
Action: The origin station name field is empty or contains only spaces
Logic Flow:
IF A shipment record with origin station information
AND The origin station name field is empty or contains only spaces
THEN:
• Generate an error message indicating invalid origin station name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment record with a valid origin station name.
Trigger Criteria:
Context: A shipment record with a valid origin station name
Applied to: Set Origin Station Name to GCCC-ORIGIN-STATION-NAME
Action: The origin station name field contains data
Logic Flow:
IF A shipment record with a valid origin station name
AND The origin station name field contains data
THEN:
• Set the origin station name in the customs manifest record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment record with origin location information.
Trigger Criteria:
Context: A shipment record with origin location information
Applied to: Origin Province/State Code Present?
Action: The origin province or state code field is empty or contains only spaces
Logic Flow:
IF A shipment record with origin location information
AND The origin province or state code field is empty or contains only spaces
THEN:
• Generate an error message for invalid origin province state code and clear the origin country determination table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment record with a valid origin province or state code.
Trigger Criteria:
Context: A shipment record with a valid origin province or state code
Applied to: Set Origin Station State Code to GCCC-ORIGIN-STATION-STATE-CODE
Action: The origin province or state code field contains data
Logic Flow:
IF A shipment record with a valid origin province or state code
AND The origin province or state code field contains data
THEN:
• Set the origin station state code in the customs manifest record and perform origin country determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record with origin station number in character format.
Trigger Criteria:
Context: A shipment record with origin station number in character format
Applied to: Convert Origin Station Number from Character to Numeric
Action: Processing origin station information
Logic Flow:
IF A shipment record with origin station number in character format
AND Processing origin station information
THEN:
• Convert the character station number to numeric format and assign to the customs manifest origin station number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record with destination station information.
Trigger Criteria:
Context: A shipment record with destination station information
Applied to: Destination Station Name Present?
Action: The destination station name field is empty or contains only spaces
Logic Flow:
IF A shipment record with destination station information
AND The destination station name field is empty or contains only spaces
THEN:
• Generate an error message indicating invalid destination station name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment record with a valid destination station name.
Trigger Criteria:
Context: A shipment record with a valid destination station name
Applied to: Set Destination Station Name to GCCC-DESTIN-STATION-NAME
Action: The destination station name field contains data
Logic Flow:
IF A shipment record with a valid destination station name
AND The destination station name field contains data
THEN:
• Set the destination station name in the customs manifest record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record with destination province or state code information.
Trigger Criteria:
Context: A shipment record with destination province or state code information
Applied to: Set Destination Station State Code to GCCC-DESTIN-STATION-STATE-CODE
Action: Processing destination station information
Logic Flow:
IF A shipment record with destination province or state code information
AND Processing destination station information
THEN:
• Set the destination station state code in the customs manifest record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record with destination station number in character format.
Trigger Criteria:
Context: A shipment record with destination station number in character format
Applied to: Convert Destination Station Number from Character to Numeric
Action: Processing destination station information
Logic Flow:
IF A shipment record with destination station number in character format
AND Processing destination station information
THEN:
• Convert the character station number to numeric format and assign to the customs manifest destination station number field
R-GCCCCADD-cbl-00085 (+11)File: GCCCCADD.cblBusiness Rule: Manifest Port Determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment is being processed for customs manifest creation
Applied to: Set default manifest-from port to 'IIS-A6'
Action: The action code is IIS-A6 OR the multi-manifest indicator equals 'Y' AND the manifest from port in shipment root is blank
Logic Flow:
IF A shipment is being processed for customs manifest creation
AND The action code is IIS-A6 OR the multi-manifest indicator equals 'Y' AND the manifest from port in shipment root is blank
THEN:
• Set the manifest from port to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment is being processed for customs manifest creation
Applied to: Set default manifest-to port to 'IIS-A6'
Action: The action code is IIS-A6 OR the multi-manifest indicator equals 'Y' AND the manifest to port in shipment root is blank
Logic Flow:
IF A shipment is being processed for customs manifest creation
AND The action code is IIS-A6 OR the multi-manifest indicator equals 'Y' AND the manifest to port in shipment root is blank
THEN:
• Set the manifest to port to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest from port has been determined from shipment root data.
Trigger Criteria:
Context: A manifest from port has been determined from shipment root data
Applied to: Lookup manifest-from port in MC table
Action: The system needs to validate and get details for the manifest from port
Logic Flow:
IF A manifest from port has been determined from shipment root data
AND The system needs to validate and get details for the manifest from port
THEN:
• Perform a lookup in the MC table using the manifest from port as the sequence ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup for manifest from port was successful.
Trigger Criteria:
Context: MC table lookup for manifest from port was successful
Applied to: Canadian customs code = '00000'?
Action: The Canadian customs code from MC table equals '00000'
Logic Flow:
IF MC table lookup for manifest from port was successful
AND The Canadian customs code from MC table equals '00000'
THEN:
• Clear the MC table data AND add an error message for invalid Canadian customs code for manifest port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest from port needs to be validated in the mc table.
Trigger Criteria:
Context: A manifest from port needs to be validated in the MC table
Applied to: Add invalid manifest port error message
Action: The MC table lookup is not successful
Logic Flow:
IF A manifest from port needs to be validated in the MC table
AND The MC table lookup is not successful
THEN:
• Clear the MC table data AND add an error message for invalid manifest port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup for manifest from port was successful and canadian customs code is valid.
Trigger Criteria:
Context: MC table lookup for manifest from port was successful AND Canadian customs code is valid
Applied to: Set manifest-from station code
Action: Processing manifest from port information
Logic Flow:
IF MC table lookup for manifest from port was successful AND Canadian customs code is valid
AND Processing manifest from port information
THEN:
• Set the manifest from station code to the Canadian customs code from MC table AND set the US port of exit code from MC table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment requires manifest to port information.
Trigger Criteria:
Context: A shipment requires manifest to port information
Applied to: Set error flag for missing manifest-to port
Action: The manifest to port from shipment root is blank
Logic Flow:
IF A shipment requires manifest to port information
AND The manifest to port from shipment root is blank
THEN:
• Set error flag 1 to ON
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when mc table lookup for manifest to port was successful.
Trigger Criteria:
Context: MC table lookup for manifest to port was successful
Applied to: Canadian customs code = '00000'?
Action: The Canadian customs code from MC table equals '00000'
Logic Flow:
IF MC table lookup for manifest to port was successful
AND The Canadian customs code from MC table equals '00000'
THEN:
• Clear the MC table data AND set error flag 2 to ON AND save the port name for error messaging
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest to port needs to be validated in the mc table.
Trigger Criteria:
Context: A manifest to port needs to be validated in the MC table
Applied to: Add invalid customs code error message
Action: The MC table lookup is not successful
Logic Flow:
IF A manifest to port needs to be validated in the MC table
AND The MC table lookup is not successful
THEN:
• Clear the MC table data AND set error flag 3 to ON AND save the port name for error messaging
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment with ccn type equals '9'.
Trigger Criteria:
Context: A shipment with CCN type equals '9'
Applied to: Override both ports to 'IIS-A6'
Action: The US port of exit code is not '00000' OR the manifest from station name is not 'IIS-A6' OR the manifest to station name is not 'IIS-A6' OR the manifest to station name does not equal the manifest from station name
Logic Flow:
IF A shipment with CCN type equals '9'
AND The US port of exit code is not '00000' OR the manifest from station name is not 'IIS-A6' OR the manifest to station name is not 'IIS-A6' OR the manifest to station name does not equal the manifest from station name
THEN:
• Set both manifest from station name and manifest to station name to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup for manifest to port was successful and canadian customs code is valid and ccn type 9 override conditions are not met.
Trigger Criteria:
Context: MC table lookup for manifest to port was successful AND Canadian customs code is valid AND CCN type 9 override conditions are not met
Applied to: Set manifest-to station code
Action: Processing manifest to port information
Logic Flow:
IF MC table lookup for manifest to port was successful AND Canadian customs code is valid AND CCN type 9 override conditions are not met
AND Processing manifest to port information
THEN:
• Set the manifest to station code to the Canadian customs code from MC table AND set the destination station number from MC table station number AND set the destination station number index from MC table station number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mc table data is available for manifest to port.
Trigger Criteria:
Context: MC table data is available for manifest to port
Applied to: Set sub-location code from MC table
Action: The sub-location code from MC table is blank OR low-values OR the manifest to station name equals 'IIS-A6' OR the manifest to station name equals the manifest from station name
Logic Flow:
IF MC table data is available for manifest to port
AND The sub-location code from MC table is blank OR low-values OR the manifest to station name equals 'IIS-A6' OR the manifest to station name equals the manifest from station name
THEN:
• Set the sub-location code to blank ELSE set the sub-location code to the value from MC table
R-GCCCCADD-cbl-00097 (+4)File: GCCCCADD.cblBusiness Rule: Special Port Code Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment is being processed with either iis-a6 action code or multi-manifest indicator set to 'y'.
Trigger Criteria:
Context: A shipment is being processed with either IIS-A6 action code or multi-manifest indicator set to 'Y'
Applied to: Set Manifest From Port to IIS-A6
Action: The manifest from port field in the shipment root is empty (spaces)
Logic Flow:
IF A shipment is being processed with either IIS-A6 action code or multi-manifest indicator set to 'Y'
AND The manifest from port field in the shipment root is empty (spaces)
THEN:
• The manifest from port should be automatically set to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment is being processed with either iis-a6 action code or multi-manifest indicator set to 'y'.
Trigger Criteria:
Context: A shipment is being processed with either IIS-A6 action code or multi-manifest indicator set to 'Y'
Applied to: Set Manifest To Port to IIS-A6
Action: The manifest to port field in the shipment root is empty (spaces)
Logic Flow:
IF A shipment is being processed with either IIS-A6 action code or multi-manifest indicator set to 'Y'
AND The manifest to port field in the shipment root is empty (spaces)
THEN:
• The manifest to port should be automatically set to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment has ccn type equal to '9'.
Trigger Criteria:
Context: A shipment has CCN type equal to '9'
Applied to: Override Both Ports to IIS-A6
Action: The US station exit code is not '00000' OR the manifest from station name is not 'IIS-A6' OR the manifest to station name is not 'IIS-A6' OR the manifest to station name does not equal the manifest from station name
Logic Flow:
IF A shipment has CCN type equal to '9'
AND The US station exit code is not '00000' OR the manifest from station name is not 'IIS-A6' OR the manifest to station name is not 'IIS-A6' OR the manifest to station name does not equal the manifest from station name
THEN:
• Both the manifest from station name and manifest to station name should be set to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has manifest to station name equal to 'iis-a6' and the destination is not in the united states.
Trigger Criteria:
Context: A shipment has manifest to station name equal to 'IIS-A6' and the destination is not in the United States
Applied to: Lookup CM Table for Station
Action: The system needs to determine sub-location code information
Logic Flow:
IF A shipment has manifest to station name equal to 'IIS-A6' and the destination is not in the United States
AND The system needs to determine sub-location code information
THEN:
• The destination station number should be looked up in the CM table to retrieve port manifest upon information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cm table lookup was successful and returned port manifest upon information.
Trigger Criteria:
Context: The CM table lookup was successful and returned port manifest upon information
Applied to: Set Sub-location Code from MC Table
Action: The port manifest upon value is used to lookup the MC table
Logic Flow:
IF The CM table lookup was successful and returned port manifest upon information
AND The port manifest upon value is used to lookup the MC table
THEN:
• If the MC table lookup is successful, the sub-location code should be retrieved from the MC table record, otherwise the sub-location code should be cleared
Business Justification: Establishes the required business protocol to be followed when manifest from port has been successfully looked up in the mc table.
Trigger Criteria:
Context: A manifest from port has been successfully looked up in the MC table
Applied to: Check Canadian Customs Code
Action: The Canadian customs code equals '00000'
Logic Flow:
IF A manifest from port has been successfully looked up in the MC table
AND The Canadian customs code equals '00000'
THEN:
• The system marks the Canadian customs code as invalid, generates an error message for invalid Canadian customs port, and clears the MC table data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest from port has been successfully looked up in the mc table and the canadian customs code is not '00000'.
Trigger Criteria:
Context: A manifest from port has been successfully looked up in the MC table and the Canadian customs code is not '00000'
Applied to: Set Canadian Customs Code
Action: The customs code validation passes
Logic Flow:
IF A manifest from port has been successfully looked up in the MC table and the Canadian customs code is not '00000'
AND The customs code validation passes
THEN:
• The system sets the Canadian customs code to the manifest from station code and sets the US port of exit code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest from port lookup is attempted in the mc table.
Trigger Criteria:
Context: A manifest from port lookup is attempted in the MC table
Applied to: Generate MC Table Not Found Error
Action: The MC table lookup is not successful
Logic Flow:
IF A manifest from port lookup is attempted in the MC table
AND The MC table lookup is not successful
THEN:
• The system clears the MC table data, generates an error message for invalid manifest port MC, and uses the port name as the error message number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest to port has been successfully looked up in the mc table.
Trigger Criteria:
Context: A manifest to port has been successfully looked up in the MC table
Applied to: Check Manifest To Canadian Customs Code
Action: The Canadian customs code equals '00000'
Logic Flow:
IF A manifest to port has been successfully looked up in the MC table
AND The Canadian customs code equals '00000'
THEN:
• The system clears the MC table data, sets error flag 2, and saves the port name for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest to port has been successfully looked up in the mc table and the canadian customs code is valid. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A manifest to port has been successfully looked up in the MC table and the Canadian customs code is valid
Applied to: Set Manifest To Station Code
Action: The customs code validation passes
Logic Flow:
IF A manifest to port has been successfully looked up in the MC table and the Canadian customs code is valid
AND The customs code validation passes
THEN:
• The system sets the manifest to station code, batch print call letters, and destination station number for indexing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest to port lookup is attempted in the mc table.
Trigger Criteria:
Context: A manifest to port lookup is attempted in the MC table
Applied to: Generate MC Table Not Found Error
Action: The MC table lookup is not successful
Logic Flow:
IF A manifest to port lookup is attempted in the MC table
AND The MC table lookup is not successful
THEN:
• The system clears the MC table data, sets error flag 3, and saves the port name for error reporting
R-GCCCCADD-cbl-00108 (+35)File: GCCCCADD.cblBusiness Rule: Sub
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cargo manifest with a manifest-to station name.
Trigger Criteria:
Context: A cargo manifest with a manifest-to station name
Applied to: Is Manifest-To Station = 'IIS-A6'?
Action: The system checks if the manifest-to station equals 'IIS-A6'
Logic Flow:
IF A cargo manifest with a manifest-to station name
AND The system checks if the manifest-to station equals 'IIS-A6'
THEN:
• The system proceeds to destination country validation if true, otherwise checks existing sub-location code from MC table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest-to station of 'iis-a6' and a destination with state/province code.
Trigger Criteria:
Context: A manifest-to station of 'IIS-A6' and a destination with state/province code
Applied to: Is Destination NOT US?
Action: The system searches the state-country table to determine if destination state corresponds to 'US' country
Logic Flow:
IF A manifest-to station of 'IIS-A6' and a destination with state/province code
AND The system searches the state-country table to determine if destination state corresponds to 'US' country
THEN:
• The system proceeds to CM table lookup if destination is not US, otherwise sets sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when destination that is not us and manifest-to station of 'iis-a6'.
Trigger Criteria:
Context: A destination that is not US and manifest-to station of 'IIS-A6'
Applied to: Lookup CM Table with Destination Station Number
Action: The system calls GCCTBIO with table ID 'CM' and destination station number as sequence ID
Logic Flow:
IF A destination that is not US and manifest-to station of 'IIS-A6'
AND The system calls GCCTBIO with table ID 'CM' and destination station number as sequence ID
THEN:
• The system retrieves CM table segment data for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cm table lookup has been performed with destination station number.
Trigger Criteria:
Context: A CM table lookup has been performed with destination station number
Applied to: CM Table Lookup Successful?
Action: The system checks the GCCTBIO return flag for successful status
Logic Flow:
IF A CM table lookup has been performed with destination station number
AND The system checks the GCCTBIO return flag for successful status
THEN:
• The system proceeds to get port manifest information if successful, otherwise sets sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when successful cm table lookup with valid segment data.
Trigger Criteria:
Context: A successful CM table lookup with valid segment data
Applied to: Get Port Manifest Upon from CM Table
Action: The system moves the CM table segment to GCSTBRTCM structure
Logic Flow:
IF A successful CM table lookup with valid segment data
AND The system moves the CM table segment to GCSTBRTCM structure
THEN:
• The system extracts the port manifest upon value for subsequent MC table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when port manifest upon value extracted from cm table.
Trigger Criteria:
Context: A port manifest upon value extracted from CM table
Applied to: Lookup MC Table with Port Manifest Upon
Action: The system calls GCCTBIO with table ID 'MC' and port manifest upon as sequence ID
Logic Flow:
IF A port manifest upon value extracted from CM table
AND The system calls GCCTBIO with table ID 'MC' and port manifest upon as sequence ID
THEN:
• The system retrieves MC table segment data for sub-location code extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup has been performed with port manifest upon value.
Trigger Criteria:
Context: An MC table lookup has been performed with port manifest upon value
Applied to: MC Table Lookup Successful?
Action: The system checks the GCCTBIO return flag for successful status
Logic Flow:
IF An MC table lookup has been performed with port manifest upon value
AND The system checks the GCCTBIO return flag for successful status
THEN:
• The system sets sub-location code from MC table if successful, otherwise sets sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when successful mc table lookup with valid segment data.
Trigger Criteria:
Context: A successful MC table lookup with valid segment data
Applied to: Set Sub-location Code from MC Table
Action: The system moves the MC table segment to GCSTBRTMC structure
Logic Flow:
IF A successful MC table lookup with valid segment data
AND The system moves the MC table segment to GCSTBRTMC structure
THEN:
• The system assigns the MC sub-location code to the cargo manifest sub-location code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when failed cm table lookup, failed mc table lookup, or destination is us.
Trigger Criteria:
Context: A failed CM table lookup, failed MC table lookup, or destination is US
Applied to: Set Sub-location Code to SPACES
Action: The system cannot retrieve valid sub-location information
Logic Flow:
IF A failed CM table lookup, failed MC table lookup, or destination is US
AND The system cannot retrieve valid sub-location information
THEN:
• The system sets the sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when existing sub-location code from mc table processing.
Trigger Criteria:
Context: An existing sub-location code from MC table processing
Applied to: Sub-location Code from MC = SPACES or LOW-VALUES?
Action: The system checks if the MC sub-location code equals spaces or low-values
Logic Flow:
IF An existing sub-location code from MC table processing
AND The system checks if the MC sub-location code equals spaces or low-values
THEN:
• The system clears the sub-location code if empty, otherwise checks manifest station conditions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when non-empty sub-location code from mc table.
Trigger Criteria:
Context: A non-empty sub-location code from MC table
Applied to: Manifest-To = 'IIS-A6' OR Manifest-From = Manifest-To?
Action: The system checks if manifest-to station equals 'IIS-A6' OR manifest-to station equals manifest-from station
Logic Flow:
IF A non-empty sub-location code from MC table
AND The system checks if manifest-to station equals 'IIS-A6' OR manifest-to station equals manifest-from station
THEN:
• The system clears the sub-location code if conditions are met, otherwise keeps the existing sub-location code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when sub-location code from mc table is empty or manifest stations meet special conditions.
Trigger Criteria:
Context: Sub-location code from MC table is empty OR manifest stations meet special conditions
Applied to: Clear Sub-location Code
Action: The system determines that sub-location code should be cleared
Logic Flow:
IF Sub-location code from MC table is empty OR manifest stations meet special conditions
AND The system determines that sub-location code should be cleared
THEN:
• The system sets the sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when non-empty sub-location code from mc table and manifest stations do not meet clearing conditions.
Trigger Criteria:
Context: A non-empty sub-location code from MC table and manifest stations do not meet clearing conditions
Applied to: Keep Sub-location Code from MC Table
Action: The system determines that sub-location code should be retained
Logic Flow:
IF A non-empty sub-location code from MC table and manifest stations do not meet clearing conditions
AND The system determines that sub-location code should be retained
THEN:
• The system keeps the existing sub-location code from the MC table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with destination station information.
Trigger Criteria:
Context: A shipment with destination station information
Applied to: Is Sub-location Code Present?
Action: The sub-location code field is evaluated for presence
Logic Flow:
IF A shipment with destination station information
AND The sub-location code field is evaluated for presence
THEN:
• If sub-location code is not spaces, sub-location requirements are considered met
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment without a sub-location code.
Trigger Criteria:
Context: A shipment without a sub-location code
Applied to: CSA Indicator On?
Action: The CSA indicator is evaluated
Logic Flow:
IF A shipment without a sub-location code
AND The CSA indicator is evaluated
THEN:
• If CSA indicator is ON, sub-location requirements are considered met
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment without sub-location code and csa indicator off.
Trigger Criteria:
Context: A shipment without sub-location code and CSA indicator OFF
Applied to: Manifest From = Manifest To AND Not IIS-A6?
Action: Manifest from station name equals manifest to station name AND manifest to station name is not 'IIS-A6'
Logic Flow:
IF A shipment without sub-location code and CSA indicator OFF
AND Manifest from station name equals manifest to station name AND manifest to station name is not 'IIS-A6'
THEN:
• Sub-location requirements are considered met
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment that doesn't meet previous sub-location exemptions.
Trigger Criteria:
Context: A shipment that doesn't meet previous sub-location exemptions
Applied to: Destination is US?
Action: The destination country is determined to be US based on state/province code lookup
Logic Flow:
IF A shipment that doesn't meet previous sub-location exemptions
AND The destination country is determined to be US based on state/province code lookup
THEN:
• Sub-location requirements are considered met
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment that doesn't meet other sub-location exemptions.
Trigger Criteria:
Context: A shipment that doesn't meet other sub-location exemptions
Applied to: Arrival Indicator = 'Y'?
Action: The arrival indicator is evaluated
Logic Flow:
IF A shipment that doesn't meet other sub-location exemptions
AND The arrival indicator is evaluated
THEN:
• If arrival indicator equals 'Y', sub-location requirements are considered met
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment that doesn't meet any sub-location exemption criteria.
Trigger Criteria:
Context: A shipment that doesn't meet any sub-location exemption criteria
Applied to: Set Sub-location Error Flag
Action: All sub-location validation checks are completed
Logic Flow:
IF A shipment that doesn't meet any sub-location exemption criteria
AND All sub-location validation checks are completed
THEN:
• The sub-location error flag is set to indicate missing required sub-location code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment that has completed sub-location validation.
Trigger Criteria:
Context: A shipment that has completed sub-location validation
Applied to: Clear Sub-location Code
Action: The shipment has in-transit status of TRANSIT or RETURN
Logic Flow:
IF A shipment that has completed sub-location validation
AND The shipment has in-transit status of TRANSIT or RETURN
THEN:
• The sub-location code is cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when non-transit/non-return shipment with sub-location error flag set.
Trigger Criteria:
Context: A non-transit/non-return shipment with sub-location error flag set
Applied to: Generate Invalid Destination Station Sub-location Error
Action: Final sub-location validation is performed
Logic Flow:
IF A non-transit/non-return shipment with sub-location error flag set
AND Final sub-location validation is performed
THEN:
• An error message for invalid destination station sub-location code is generated and added to the message list
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest to station name equals 'iis-a6' and destination is not us.
Trigger Criteria:
Context: Manifest to station name equals 'IIS-A6' and destination is not US
Applied to: Lookup CM Table with Destination Station
Action: System looks up destination station number in CM table
Logic Flow:
IF Manifest to station name equals 'IIS-A6' and destination is not US
AND System looks up destination station number in CM table
THEN:
• If CM table lookup is successful, retrieve port manifest upon information for further MC table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cm table lookup was successful and returned port manifest upon information.
Trigger Criteria:
Context: CM table lookup was successful and returned port manifest upon information
Applied to: Set Sub-location Code from MC Table
Action: System looks up the port manifest upon value in MC table
Logic Flow:
IF CM table lookup was successful and returned port manifest upon information
AND System looks up the port manifest upon value in MC table
THEN:
• If MC table lookup is successful, set sub-location code from MC table sub-location code field, otherwise set sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee chop code and destination station number are available.
Trigger Criteria:
Context: Consignee CHOP code and destination station number are available
Applied to: Check Customer Bonded Siding
Action: System looks up consignee in RF table using CHOP code and station number
Logic Flow:
IF Consignee CHOP code and destination station number are available
AND System looks up consignee in RF table using CHOP code and station number
THEN:
• If RF table lookup is successful, set sub-location code from RF table and set customer bonded indicator to true, otherwise set customer bonded indicator to false
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when sub-location code processing is complete.
Trigger Criteria:
Context: Sub-location code processing is complete
Applied to: Apply Sub-location Requirement Rules
Action: System evaluates if sub-location code is present OR CSA indicator is on OR manifest from equals manifest to (and not IIS-A6) OR destination is US OR arrival indicator is Y
Logic Flow:
IF Sub-location code processing is complete
AND System evaluates if sub-location code is present OR CSA indicator is on OR manifest from equals manifest to (and not IIS-A6) OR destination is US OR arrival indicator is Y
THEN:
• If any condition is true, sub-location code is valid and processing continues, otherwise set sub-location error flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has in-transit status (transit or return).
Trigger Criteria:
Context: Shipment has in-transit status (transit or return)
Applied to: Clear Sub-location Code and Customer Bonded Indicator
Action: System processes sub-location requirements
Logic Flow:
IF Shipment has in-transit status (transit or return)
AND System processes sub-location requirements
THEN:
• Clear sub-location code and customer bonded indicator to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when sub-location error flag is set and shipment is not in-transit or return status.
Trigger Criteria:
Context: Sub-location error flag is set and shipment is not in-transit or return status
Applied to: Generate Sub-location Error Message
Action: System validates sub-location requirements
Logic Flow:
IF Sub-location error flag is set and shipment is not in-transit or return status
AND System validates sub-location requirements
THEN:
• Generate error message for invalid destination station sub-location code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo manifest is being processed with destination station information.
Trigger Criteria:
Context: A cargo manifest is being processed with destination station information
Applied to: Sub-location Code Present?
Action: The sub-location code field contains a value that is not spaces
Logic Flow:
IF A cargo manifest is being processed with destination station information
AND The sub-location code field contains a value that is not spaces
THEN:
• The sub-location requirements are considered met and no further validation is needed
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo manifest is being processed and sub-location code is not present.
Trigger Criteria:
Context: A cargo manifest is being processed and sub-location code is not present
Applied to: CSA Indicator On?
Action: The CSA indicator is set to ON
Logic Flow:
IF A cargo manifest is being processed and sub-location code is not present
AND The CSA indicator is set to ON
THEN:
• The sub-location requirements are considered met regardless of other conditions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cargo manifest is being processed with csa indicator off and no sub-location code.
Trigger Criteria:
Context: A cargo manifest is being processed with CSA indicator OFF and no sub-location code
Applied to: Manifest From = Manifest To AND Not IIS-A6?
Action: The manifest from station name equals the manifest to station name AND the manifest to station name is not equal to 'IIS-A6'
Logic Flow:
IF A cargo manifest is being processed with CSA indicator OFF and no sub-location code
AND The manifest from station name equals the manifest to station name AND the manifest to station name is not equal to 'IIS-A6'
THEN:
• The sub-location requirements are considered met
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo manifest is being processed with manifest stations not equal or manifest to station is iis-a6.
Trigger Criteria:
Context: A cargo manifest is being processed with manifest stations not equal or manifest to station is IIS-A6
Applied to: Destination is US?
Action: The destination state/province code corresponds to a US state in the state-country lookup table
Logic Flow:
IF A cargo manifest is being processed with manifest stations not equal or manifest to station is IIS-A6
AND The destination state/province code corresponds to a US state in the state-country lookup table
THEN:
• The sub-location requirements are considered met
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo manifest is being processed with destination not in us.
Trigger Criteria:
Context: A cargo manifest is being processed with destination not in US
Applied to: Arrival Indicator = Y?
Action: The arrival indicator field is set to 'Y'
Logic Flow:
IF A cargo manifest is being processed with destination not in US
AND The arrival indicator field is set to 'Y'
THEN:
• The sub-location requirements are considered met
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo manifest is being validated for sub-location requirements.
Trigger Criteria:
Context: A cargo manifest is being validated for sub-location requirements
Applied to: Sub-location Requirements Met
Action: Any of the following conditions are met: sub-location code is present, CSA indicator is ON, manifest stations are equal and not IIS-A6, destination is US, or arrival indicator is Y
Logic Flow:
IF A cargo manifest is being validated for sub-location requirements
AND Any of the following conditions are met: sub-location code is present, CSA indicator is ON, manifest stations are equal and not IIS-A6, destination is US, or arrival indicator is Y
THEN:
• The sub-location validation passes and no error flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cargo manifest is being processed for sub-location validation.
Trigger Criteria:
Context: A cargo manifest is being processed for sub-location validation
Applied to: Set Sub-location Error Flag
Action: Sub-location code is not present AND CSA indicator is OFF AND manifest stations are not equal or manifest to is IIS-A6 AND destination is not US AND arrival indicator is not Y
Logic Flow:
IF A cargo manifest is being processed for sub-location validation
AND Sub-location code is not present AND CSA indicator is OFF AND manifest stations are not equal or manifest to is IIS-A6 AND destination is not US AND arrival indicator is not Y
THEN:
• The sub-location error flag is set to indicate validation failure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo manifest has failed sub-location validation and is being processed for transit or return.
Trigger Criteria:
Context: A cargo manifest has failed sub-location validation and is being processed for transit or return
Applied to: Invalid Destination Station Sub-location Code
Action: The sub-location error flag is set
Logic Flow:
IF A cargo manifest has failed sub-location validation and is being processed for transit or return
AND The sub-location error flag is set
THEN:
• An error message 'Invalid Destination Station Sub-location Code' is generated and retrieved from the message table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when sub-location validation error message has been generated.
Trigger Criteria:
Context: A sub-location validation error message has been generated
Applied to: Add Error to Message Array
Action: The error message needs to be communicated to the user
Logic Flow:
IF A sub-location validation error message has been generated
AND The error message needs to be communicated to the user
THEN:
• The error message is added to the message array and the return status is set to ERROR
Business Justification: Defines the strict business conditions required to proceed when shipment with consignee chop code and destination station number.
Trigger Criteria:
Context: A shipment with consignee CHOP code and destination station number
Applied to: Setup RF Table Lookup Parameters
Action: The system needs to check for customer bonded siding locations
Logic Flow:
IF A shipment with consignee CHOP code and destination station number
AND The system needs to check for customer bonded siding locations
THEN:
• The system sets up RF table lookup with consignee CHOP as sequence key and destination station number as station parameter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when rf table lookup parameters are configured with consignee chop and destination station. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: RF table lookup parameters are configured with consignee CHOP and destination station
Applied to: Call RF Table Lookup
Action: The system executes the RF table lookup
Logic Flow:
IF RF table lookup parameters are configured with consignee CHOP and destination station
AND The system executes the RF table lookup
THEN:
• The system calls the table lookup function to retrieve rail facility data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when rf table lookup has been executed for consignee and destination.
Trigger Criteria:
Context: An RF table lookup has been executed for consignee and destination
Applied to: RF Table Record Found?
Action: The system evaluates the lookup results
Logic Flow:
IF An RF table lookup has been executed for consignee and destination
AND The system evaluates the lookup results
THEN:
• If a matching RF table record is found, set customer bonded indicator to TRUE, otherwise set customer bonded indicator to FALSE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when matching rf table record exists for the consignee and destination.
Trigger Criteria:
Context: A matching RF table record exists for the consignee and destination
Applied to: Retrieve Sub-location Code from RF Table
Action: The customer is determined to be bonded
Logic Flow:
IF A matching RF table record exists for the consignee and destination
AND The customer is determined to be bonded
THEN:
• The system retrieves and assigns the sub-location code from the RF table record to the customs manifest
R-GCCCCADD-cbl-00133 (+5)File: GCCCCADD.cblBusiness Rule: Conveying Car Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment record contains conveying car information.
Trigger Criteria:
Context: A shipment record contains conveying car information
Applied to: Extract Conveying Car Initial and Number from Shipment Data
Action: The conveying car initial is not empty in the shipment data
Logic Flow:
IF A shipment record contains conveying car information
AND The conveying car initial is not empty in the shipment data
THEN:
• Extract the conveying car initial and number from the shipment record and assign them to the customs manifest
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has no conveying car initial specified.
Trigger Criteria:
Context: A shipment has no conveying car initial specified
Applied to: Initial='UNKN', Number='00000001'
Action: The shipment type is TOFC (Trailer on Flat Car) or COFC (Container on Flat Car)
Logic Flow:
IF A shipment has no conveying car initial specified
AND The shipment type is TOFC (Trailer on Flat Car) or COFC (Container on Flat Car)
THEN:
• Set the conveying car initial to 'UNKN' and the conveying car number to '00000001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has no conveying car initial specified.
Trigger Criteria:
Context: A shipment has no conveying car initial specified
Applied to: Clear Conveying Car Information
Action: The shipment type is neither TOFC nor COFC
Logic Flow:
IF A shipment has no conveying car initial specified
AND The shipment type is neither TOFC nor COFC
THEN:
• Clear the conveying car initial and number fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when conveying car initial is present in the manifest.
Trigger Criteria:
Context: A conveying car initial is present in the manifest
Applied to: Validate Conveying Car ID Using GCCCARID Utility
Action: The car ID validation is performed using the GCCCARID utility
Logic Flow:
IF A conveying car initial is present in the manifest
AND The car ID validation is performed using the GCCCARID utility
THEN:
• The utility validates the car ID format and returns either a validated ID or an error indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when conveying car id has been validated successfully.
Trigger Criteria:
Context: A conveying car ID has been validated successfully
Applied to: Update Conveying Car with Validated ID
Action: The validation utility returns a valid car ID
Logic Flow:
IF A conveying car ID has been validated successfully
AND The validation utility returns a valid car ID
THEN:
• Update the conveying car field with the validated car ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when conveying car id validation has been attempted.
Trigger Criteria:
Context: A conveying car ID validation has been attempted
Applied to: Generate Invalid Conveying Car Error Message
Action: The validation utility indicates the car ID is invalid
Logic Flow:
IF A conveying car ID validation has been attempted
AND The validation utility indicates the car ID is invalid
THEN:
• Generate an error message for invalid conveying car and add it to the message collection
Business Justification: Ensures correct system behavior and process compliance when shipment record exists with conveying car information.
Trigger Criteria:
Context: A shipment record exists with conveying car information
Applied to: Set Conveying Car Details from Shipment
Action: The conveying car initial field is not empty in the shipment data
Logic Flow:
IF A shipment record exists with conveying car information
AND The conveying car initial field is not empty in the shipment data
THEN:
• The system should set the conveying car initial and number from the shipment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment has no conveying car initial specified.
Trigger Criteria:
Context: A shipment has no conveying car initial specified
Applied to: UNKN Number: 00000001
Action: The shipment type is TOFC (T) or COFC (C)
Logic Flow:
IF A shipment has no conveying car initial specified
AND The shipment type is TOFC (T) or COFC (C)
THEN:
• The system should set conveying car initial to 'UNKN' and conveying car number to '00000001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment has no conveying car initial specified.
Trigger Criteria:
Context: A shipment has no conveying car initial specified
Applied to: Clear Conveying Car Details
Action: The shipment type is not TOFC (T) or COFC (C)
Logic Flow:
IF A shipment has no conveying car initial specified
AND The shipment type is not TOFC (T) or COFC (C)
THEN:
• The system should clear the conveying car initial and number fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when conveying car initial and number are specified. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A conveying car initial and number are specified
Applied to: Validate Car ID using GCCCARID Utility
Action: The car ID validation is performed
Logic Flow:
IF A conveying car initial and number are specified
AND The car ID validation is performed
THEN:
• The system should call the GCCCARID utility to validate the car format and return a validated car ID or error indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when car id has been submitted for validation.
Trigger Criteria:
Context: A car ID has been submitted for validation
Applied to: Generate Car ID Validation Error
Action: The car ID validation utility returns an invalid result (all asterisks)
Logic Flow:
IF A car ID has been submitted for validation
AND The car ID validation utility returns an invalid result (all asterisks)
THEN:
• The system should generate an error message indicating invalid conveying car and include the original car value in the message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record contains equipment information.
Trigger Criteria:
Context: A shipment record contains equipment information
Applied to: Set Equipment Car Initial from Shipment & Set Equipment Car Number from Shipment
Action: Processing equipment details for customs manifest
Logic Flow:
IF A shipment record contains equipment information
AND Processing equipment details for customs manifest
THEN:
• The system should set equipment car initial from the shipment car initial field
• The system should set equipment car number from the shipment car number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment record contains load/empty indicator.
Trigger Criteria:
Context: A shipment record contains load/empty indicator
Applied to: Set Load/Empty Status from Shipment
Action: Processing equipment status for customs manifest
Logic Flow:
IF A shipment record contains load/empty indicator
AND Processing equipment status for customs manifest
THEN:
• The system should set the load/empty status from the shipment EL field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment record contains waybill information.
Trigger Criteria:
Context: A shipment record contains waybill information
Applied to: Set Waybill Number from Shipment
Action: Processing waybill details for customs manifest
Logic Flow:
IF A shipment record contains waybill information
AND Processing waybill details for customs manifest
THEN:
• The system should set the waybill number from the shipment waybill number field
R-GCCCCADD-cbl-00148 (+1)File: GCCCCADD.cblBusiness Rule: Previous Carrier Control Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment record with previous carrier number field.
Trigger Criteria:
Context: A shipment record with previous carrier number field
Applied to: Previous Carrier Number is '0000' or Spaces?
Action: The previous carrier number is '0000' or contains only spaces
Logic Flow:
IF A shipment record with previous carrier number field
AND The previous carrier number is '0000' or contains only spaces
THEN:
• The system continues processing without setting any previous carrier control number data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record with a valid previous carrier number that is not '0000' or spaces.
Trigger Criteria:
Context: A shipment record with a valid previous carrier number that is not '0000' or spaces
Applied to: Build Previous CCN - First 4 Characters
Action: The system processes the previous carrier information
Logic Flow:
IF A shipment record with a valid previous carrier number that is not '0000' or spaces
AND The system processes the previous carrier information
THEN:
• The system moves the previous carrier number to positions 1-4 of the previous CCN field and moves the previous cargo control number to positions 5-21 of the previous CCN field
R-GCCCCADD-cbl-00150 (+12)File: GCCCCADD.cblBusiness Rule: Weight and Quantity Roll
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when waybill key is provided for processing.
Trigger Criteria:
Context: A waybill key is provided for processing
Applied to: Check for Valid EDI BOL Data
Action: The system checks for valid EDI BOL data by verifying the origin road number is not zero and retrieving the first SHIPMIN segment with type 'E' and sequence '1'
Logic Flow:
IF A waybill key is provided for processing
AND The system checks for valid EDI BOL data by verifying the origin road number is not zero and retrieving the first SHIPMIN segment with type 'E' and sequence '1'
THEN:
• The system sets the EDI BOL availability flag to valid if data is found, otherwise sets it to invalid, and extracts the EDI BOL key from the data line for subsequent processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system is ready to process commodity weight and quantity data.
Trigger Criteria:
Context: The system is ready to process commodity weight and quantity data
Applied to: Initialize Weight and Quantity Counters to Zero
Action: Weight and quantity roll-up processing begins
Logic Flow:
IF The system is ready to process commodity weight and quantity data
AND Weight and quantity roll-up processing begins
THEN:
• The system initializes commodity weight counter to zero and number of units counter to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid edi bol data is available.
Trigger Criteria:
Context: Valid EDI BOL data is available
Applied to: Process Each Commodity Segment from EDI BOL
Action: The system processes commodity segments starting from sequence 1 and continuing until no more segments are found or sequence exceeds 98
Logic Flow:
IF Valid EDI BOL data is available
AND The system processes commodity segments starting from sequence 1 and continuing until no more segments are found or sequence exceeds 98
THEN:
• The system retrieves each EBSBCCM commodity segment using the EDI BOL key and commodity sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when commodity segment is successfully retrieved from edi bol data.
Trigger Criteria:
Context: A commodity segment is successfully retrieved from EDI BOL data
Applied to: Add Lading Quantity to Total Units
Action: The system processes the commodity segment
Logic Flow:
IF A commodity segment is successfully retrieved from EDI BOL data
AND The system processes the commodity segment
THEN:
• The system adds the L0-LADING-QTY value to the running total of units
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when first commodity segment is being processed.
Trigger Criteria:
Context: The first commodity segment is being processed
Applied to: Get EBSBCCR Weight Segment
Action: The system attempts to retrieve the corresponding EBSBCCR weight segment with type 'CR' and dependent key 'CR001'
Logic Flow:
IF The first commodity segment is being processed
AND The system attempts to retrieve the corresponding EBSBCCR weight segment with type 'CR' and dependent key 'CR001'
THEN:
• If the weight segment is found, the system extracts the N7-WEIGHT value, otherwise sets the weight to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when first commodity segment is being processed.
Trigger Criteria:
Context: The first commodity segment is being processed
Applied to: Set Quantity Qualifier from Lading Data
Action: The system extracts quantity information from the segment
Logic Flow:
IF The first commodity segment is being processed
AND The system extracts quantity information from the segment
THEN:
• The system sets the lading quantity qualifier to the L0-LADING-QTY-QUAL value from the commodity segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when weight information has been extracted from the commodity data.
Trigger Criteria:
Context: Weight information has been extracted from the commodity data
Applied to: Determine Weight Unit Based on Metric Indicator
Action: The system checks the metric indicator from the shipment root data
Logic Flow:
IF Weight information has been extracted from the commodity data
AND The system checks the metric indicator from the shipment root data
THEN:
• If the metric indicator is 'M' or 'L', the system sets the weight unit to kilograms, otherwise sets it to pounds
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol processing has completed with both weight and quantity totaling zero.
Trigger Criteria:
Context: EDI BOL processing has completed with both weight and quantity totaling zero
Applied to: Fall Back to Fastway SHIPCOMM Data
Action: The system needs to obtain weight and quantity information
Logic Flow:
IF EDI BOL processing has completed with both weight and quantity totaling zero
AND The system needs to obtain weight and quantity information
THEN:
• The system switches to processing Fastway SHIPCOMM segments starting with the first segment using 'GU' function
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is falling back to fastway data processing.
Trigger Criteria:
Context: The system is falling back to Fastway data processing
Applied to: Get First SHIPCOMM Segment
Action: SHIPCOMM segments are available
Logic Flow:
IF The system is falling back to Fastway data processing
AND SHIPCOMM segments are available
THEN:
• The system adds NUM-UNITS from SHIPCOMM to the total units, sets quantity qualifier to 'PCS', and adds weight based on metric indicator (MET-CMOD-WGT for metric, CMOD-WGT for standard)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when first shipcomm segment has been processed successfully.
Trigger Criteria:
Context: The first SHIPCOMM segment has been processed successfully
Applied to: Get Next SHIPCOMM Segments
Action: Additional SHIPCOMM segments are available
Logic Flow:
IF The first SHIPCOMM segment has been processed successfully
AND Additional SHIPCOMM segments are available
THEN:
• The system continues processing each subsequent segment using 'GN' function, accumulating units and weight until no more segments are found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when weight and quantity processing has completed.
Trigger Criteria:
Context: Weight and quantity processing has completed
Applied to: Set Default Quantity to 1
Action: The total number of units is zero or less
Logic Flow:
IF Weight and quantity processing has completed
AND The total number of units is zero or less
THEN:
• The system sets the number of units to 1 and uses this value for the lading quantity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when weight processing has completed.
Trigger Criteria:
Context: Weight processing has completed
Applied to: Set Default Weight to 1
Action: The calculated weight is zero or less
Logic Flow:
IF Weight processing has completed
AND The calculated weight is zero or less
THEN:
• The system sets the weight to '00000001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when quantity processing has completed.
Trigger Criteria:
Context: Quantity processing has completed
Applied to: Set Default Qualifier to PCS
Action: The lading quantity qualifier is empty or spaces
Logic Flow:
IF Quantity processing has completed
AND The lading quantity qualifier is empty or spaces
THEN:
• The system sets the lading quantity qualifier to 'PCS' (pieces)
Business Justification: Ensures correct system behavior and process compliance when equipment load/empty status is available from shipment data.
Trigger Criteria:
Context: Equipment load/empty status is available from shipment data
Applied to: Set Qualifier to 'UNT' for Empty Equipment
Action: Equipment load/empty status equals 'E' (Empty)
Logic Flow:
IF Equipment load/empty status is available from shipment data
AND Equipment load/empty status equals 'E' (Empty)
THEN:
• Set lading quantity qualifier to 'UNT'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when equipment is loaded (not empty) and current lading quantity qualifier exists.
Trigger Criteria:
Context: Equipment is loaded (not empty) and current lading quantity qualifier exists
Applied to: Set Qualifier to 'PCS' for Loaded Equipment
Action: Current qualifier equals 'C/L' or 'CLD' or 'CL ' or ' CL'
Logic Flow:
IF Equipment is loaded (not empty) and current lading quantity qualifier exists
AND Current qualifier equals 'C/L' or 'CLD' or 'CL ' or ' CL'
THEN:
• Set lading quantity qualifier to 'PCS'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when lading quantity qualifier processing is complete.
Trigger Criteria:
Context: Lading quantity qualifier processing is complete
Applied to: Set Default Qualifier to 'PCS'
Action: Lading quantity qualifier is spaces or empty
Logic Flow:
IF Lading quantity qualifier processing is complete
AND Lading quantity qualifier is spaces or empty
THEN:
• Set lading quantity qualifier to 'PCS'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when quantity qualifier has been determined and mu table lookup is available.
Trigger Criteria:
Context: A quantity qualifier has been determined and MU table lookup is available
Applied to: Validate Qualifier Against MU Table
Action: Quantity qualifier is validated against MU table
Logic Flow:
IF A quantity qualifier has been determined and MU table lookup is available
AND Quantity qualifier is validated against MU table
THEN:
• If qualifier not found in MU table, generate error message for invalid measurement unit
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when quantity qualifier validation is being performed.
Trigger Criteria:
Context: Quantity qualifier validation is being performed
Applied to: Generate Error Message for Invalid Qualifier
Action: Quantity qualifier is spaces or empty
Logic Flow:
IF Quantity qualifier validation is being performed
AND Quantity qualifier is spaces or empty
THEN:
• Generate error message indicating required quantity qualifier is missing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when quantity qualifier needs validation.
Trigger Criteria:
Context: Quantity qualifier needs validation
Applied to: Validate Qualifier Against MU Table
Action: MU table lookup is invoked with qualifier code
Logic Flow:
IF Quantity qualifier needs validation
AND MU table lookup is invoked with qualifier code
THEN:
• External GCCTBIO service validates qualifier against MU table
Business Justification: Establishes the required business protocol to be followed when consolidated load indicator retrieval process is starting.
Trigger Criteria:
Context: A consolidated load indicator retrieval process is starting
Applied to: Initialize CNS Indicator Search
Action: The system begins the search for CNS indicator
Logic Flow:
IF A consolidated load indicator retrieval process is starting
AND The system begins the search for CNS indicator
THEN:
• The CNS indicator search flag is set to not found and sequence counter is initialized to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consolidated load indicator search is initialized.
Trigger Criteria:
Context: The consolidated load indicator search is initialized
Applied to: Set Search Parameters
Action: Search parameters need to be configured for EBSBCKS segment retrieval
Logic Flow:
IF The consolidated load indicator search is initialized
AND Search parameters need to be configured for EBSBCKS segment retrieval
THEN:
• The search sequence counter is set and CNS indicator flag is set to not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when search parameters are configured and sequence counter is set.
Trigger Criteria:
Context: Search parameters are configured and sequence counter is set
Applied to: Loop Through EBSBCKS Segments
Action: The system retrieves an EBSBCKS segment using the current sequence number
Logic Flow:
IF Search parameters are configured and sequence counter is set
AND The system retrieves an EBSBCKS segment using the current sequence number
THEN:
• The EBSBCKS segment is retrieved from the EDI BOL database using the waybill key and sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebsbcks segment retrieval attempt has been made.
Trigger Criteria:
Context: An EBSBCKS segment retrieval attempt has been made
Applied to: EBSBCKS Segment Found?
Action: The system checks the retrieval status
Logic Flow:
IF An EBSBCKS segment retrieval attempt has been made
AND The system checks the retrieval status
THEN:
• If the segment is found, processing continues to check the special handling code, otherwise the search continues to the next sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebsbcks segment has been successfully retrieved.
Trigger Criteria:
Context: An EBSBCKS segment has been successfully retrieved
Applied to: Check H3 Special Handling Code
Action: The system examines the H3 special handling code field
Logic Flow:
IF An EBSBCKS segment has been successfully retrieved
AND The system examines the H3 special handling code field
THEN:
• The H3 special handling code value is extracted for comparison
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebsbcks segment has been successfully retrieved.
Trigger Criteria:
Context: An EBSBCKS segment has been successfully retrieved
Applied to: Check H3 Special Handling Code
Action: The H3 special handling code is examined
Logic Flow:
IF An EBSBCKS segment has been successfully retrieved
AND The H3 special handling code is examined
THEN:
• The code is checked to determine if it equals 'CNS' indicating consolidated load
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when h3 special handling code has been extracted from the ebsbcks segment.
Trigger Criteria:
Context: The H3 special handling code has been extracted from the EBSBCKS segment
Applied to: Code = 'CNS'?
Action: The system compares the special handling code value
Logic Flow:
IF The H3 special handling code has been extracted from the EBSBCKS segment
AND The system compares the special handling code value
THEN:
• If the code equals 'CNS', the consolidated indicator is found, otherwise the search continues
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when h3 special handling code equals 'cns'.
Trigger Criteria:
Context: The H3 special handling code equals 'CNS'
Applied to: Set Consolidated Indicator Found
Action: The consolidated indicator is detected
Logic Flow:
IF The H3 special handling code equals 'CNS'
AND The consolidated indicator is detected
THEN:
• The CNS indicator found flag is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when h3 special handling code equals 'cns'.
Trigger Criteria:
Context: The H3 special handling code equals 'CNS'
Applied to: Set CNS Indicator Found
Action: The consolidated load indicator is identified
Logic Flow:
IF The H3 special handling code equals 'CNS'
AND The consolidated load indicator is identified
THEN:
• The CNS indicator found flag is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when current ebsbcks segment either doesn't exist or doesn't contain cns special handling code.
Trigger Criteria:
Context: The current EBSBCKS segment either doesn't exist or doesn't contain CNS special handling code
Applied to: Continue Search Next Sequence
Action: The search needs to continue to the next sequence
Logic Flow:
IF The current EBSBCKS segment either doesn't exist or doesn't contain CNS special handling code
AND The search needs to continue to the next sequence
THEN:
• The sequence counter is incremented by 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when search sequence has been incremented or cns indicator has not been found.
Trigger Criteria:
Context: The search sequence has been incremented or CNS indicator has not been found
Applied to: More Sequences to Check?
Action: The system checks if more sequences can be searched
Logic Flow:
IF The search sequence has been incremented or CNS indicator has not been found
AND The system checks if more sequences can be searched
THEN:
• If the sequence counter is less than or equal to 98 and CNS indicator is not found, continue searching, otherwise end the search
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cns indicator has been found in the ebsbcks segments.
Trigger Criteria:
Context: The CNS indicator has been found in the EBSBCKS segments
Applied to: Set Consolidated Load = 'Y'
Action: The consolidated load indicator needs to be set
Logic Flow:
IF The CNS indicator has been found in the EBSBCKS segments
AND The consolidated load indicator needs to be set
THEN:
• The consolidated load field is set to 'Y'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when cns indicator has not been found after searching all available ebsbcks segments.
Trigger Criteria:
Context: The CNS indicator has not been found after searching all available EBSBCKS segments
Applied to: Set Consolidated Load = Space
Action: The consolidated load indicator needs to be set
Logic Flow:
IF The CNS indicator has not been found after searching all available EBSBCKS segments
AND The consolidated load indicator needs to be set
THEN:
• The consolidated load field is set to space
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when consolidated load indicator search is initiated.
Trigger Criteria:
Context: A consolidated load indicator search is initiated
Applied to: Initialize CNS Search Variables
Action: The search parameters need to be initialized
Logic Flow:
IF A consolidated load indicator search is initiated
AND The search parameters need to be initialized
THEN:
• The CNS sequence counter is set to 1 and the CNS indicator flag is set to not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when consolidated load indicator search is about to begin.
Trigger Criteria:
Context: A consolidated load indicator search is about to begin
Applied to: Set CNS Indicator Not Found
Action: The initial status needs to be set
Logic Flow:
IF A consolidated load indicator search is about to begin
AND The initial status needs to be set
THEN:
• The consolidated load indicator flag is set to not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cns sequence number is available for lookup.
Trigger Criteria:
Context: A CNS sequence number is available for lookup
Applied to: Retrieve EBSBCKS CNS Segment
Action: The EBSBCKS segment is retrieved using the EDI BOL key and CNS sequence
Logic Flow:
IF A CNS sequence number is available for lookup
AND The EBSBCKS segment is retrieved using the EDI BOL key and CNS sequence
THEN:
• The special handling segment data is made available for consolidated load checking
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when cns indicator has been found in the special handling segments.
Trigger Criteria:
Context: A CNS indicator has been found in the special handling segments
Applied to: Set Consolidated Load = 'Y'
Action: The consolidated load flag needs to be set
Logic Flow:
IF A CNS indicator has been found in the special handling segments
AND The consolidated load flag needs to be set
THEN:
• The consolidated load indicator is set to 'Y'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current cns sequence does not contain a consolidated load indicator or the segment was not found.
Trigger Criteria:
Context: The current CNS sequence does not contain a consolidated load indicator or the segment was not found
Applied to: Increment CNS Sequence Number
Action: The search needs to continue to the next sequence
Logic Flow:
IF The current CNS sequence does not contain a consolidated load indicator or the segment was not found
AND The search needs to continue to the next sequence
THEN:
• The CNS sequence counter is incremented by 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when cns sequence has been processed.
Trigger Criteria:
Context: A CNS sequence has been processed
Applied to: More Sequences to Check?
Action: The system determines whether to continue searching
Logic Flow:
IF A CNS sequence has been processed
AND The system determines whether to continue searching
THEN:
• Continue if CNS indicator not found and sequence number is 98 or less, otherwise stop searching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when all cns sequences from 1 to 98 have been searched and no cns indicator was found.
Trigger Criteria:
Context: All CNS sequences from 1 to 98 have been searched and no CNS indicator was found
Applied to: Set Consolidated Load = Space
Action: The consolidated load flag needs to be set to its default value
Logic Flow:
IF All CNS sequences from 1 to 98 have been searched and no CNS indicator was found
AND The consolidated load flag needs to be set to its default value
THEN:
• The consolidated load indicator is set to space
R-GCCCCADD-cbl-00180 (+12)File: GCCCCADD.cblBusiness Rule: Shipper Data Extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment requires shipper data extraction.
Trigger Criteria:
Context: A shipment requires shipper data extraction
Applied to: Check EDI BOL for Shipper Data
Action: The system checks for EDI BOL shipper segment availability
Logic Flow:
IF A shipment requires shipper data extraction
AND The system checks for EDI BOL shipper segment availability
THEN:
• If EDI BOL HN segment is found, extract shipper from EDI BOL, otherwise use Fastway SHIPROOT data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol hn segment is available for shipper.
Trigger Criteria:
Context: EDI BOL HN segment is available for shipper
Applied to: Get Shipper Name from F1-CONSIGNOR-NAME
Action: Extracting shipper identification information
Logic Flow:
IF EDI BOL HN segment is available for shipper
AND Extracting shipper identification information
THEN:
• Set shipper entity ID to 'SH', get shipper name from F1-CONSIGNOR-NAME, and get shipper CHOP from F1-SHPR-CHOP
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol ha address segment is available.
Trigger Criteria:
Context: EDI BOL HA address segment is available
Applied to: Extract Address from EDI HA Segment
Action: Processing shipper address information
Logic Flow:
IF EDI BOL HA address segment is available
AND Processing shipper address information
THEN:
• Extract address line 1 from F2-ADDL-NAME-ADDR-1and address line 2 from F2-ADDL-NAME-ADDR-2, andif address line 1 is empty set it to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol ha address segment is not available.
Trigger Criteria:
Context: EDI BOL HA address segment is not available
Applied to: Use Fastway SHIPROOT Address Data
Action: Processing shipper address information
Logic Flow:
IF EDI BOL HA address segment is not available
AND Processing shipper address information
THEN:
• Use SHPR-ADDR array from SHIPROOT, set address line 1 from SHPR-ADDR(1) or 'NA' if empty, and clear address line 2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol hc city/state segment is available.
Trigger Criteria:
Context: EDI BOL HC city/state segment is available
Applied to: Extract City/State from EDI HC Segment
Action: Processing shipper location information
Logic Flow:
IF EDI BOL HC city/state segment is available
AND Processing shipper location information
THEN:
• Extract city from F4-CITY-NAME, state from F4-STATE-PROV-CODE, postal code from F4-POSTAL-CODE, and country from F4-COUNTRY-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol hc segment is not available.
Trigger Criteria:
Context: EDI BOL HC segment is not available
Applied to: Parse Fastway Address for City/State
Action: Processing shipper location information from Fastway data
Logic Flow:
IF EDI BOL HC segment is not available
AND Processing shipper location information from Fastway data
THEN:
• Parse SHPR-ADDR(2) to extract city name, state/province code, postal code, and determine country code from state lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol gp contact segment is available.
Trigger Criteria:
Context: EDI BOL GP contact segment is available
Applied to: Extract Contact from EDI GP Segment
Action: Processing shipper contact information
Logic Flow:
IF EDI BOL GP contact segment is available
AND Processing shipper contact information
THEN:
• Extract contact function code from PER-CONTACT-FUNC-CODE, contact name from PER-NAME, communication number qualifier from PER-COMMUN-NO-QUAL, and communication number from PER-COMMUN-NUMBER
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol gp contact segment is not available.
Trigger Criteria:
Context: EDI BOL GP contact segment is not available
Applied to: No Contact Information Available
Action: Processing shipper contact information
Logic Flow:
IF EDI BOL GP contact segment is not available
AND Processing shipper contact information
THEN:
• Leave all contact fields empty (contact function code, name, communication qualifier, and communication number)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol hn segment is not available.
Trigger Criteria:
Context: EDI BOL HN segment is not available
Applied to: Extract Shipper from Fastway SHIPROOT
Action: Extracting shipper information
Logic Flow:
IF EDI BOL HN segment is not available
AND Extracting shipper information
THEN:
• Set entity ID to 'SH', get shipper name from SHPR-NM, get shipper CHOP from SHPR-CHOP, and clear ID code qualifier and ID code fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper address line 1 is empty or spaces.
Trigger Criteria:
Context: Shipper address line 1 is empty or spaces
Applied to: Set Default Address to 'NA'
Action: Processing shipper address information
Logic Flow:
IF Shipper address line 1 is empty or spaces
AND Processing shipper address information
THEN:
• Set address line 1 to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper address line 2 is empty or has only first character with remaining 18 characters as spaces.
Trigger Criteria:
Context: Shipper address line 2 is empty or has only first character with remaining 18 characters as spaces
Applied to: Set Default Address to 'NA'
Action: Processing shipper address information
Logic Flow:
IF Shipper address line 2 is empty or has only first character with remaining 18 characters as spaces
AND Processing shipper address information
THEN:
• Set address line 2 first 18 characters to 'NA' and set country code to 'US'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper state/province code is not empty and address line 2 is not empty or incomplete.
Trigger Criteria:
Context: Shipper state/province code is not empty and address line 2 is not empty or incomplete
Applied to: Determine Country Code from State
Action: Processing shipper country information
Logic Flow:
IF Shipper state/province code is not empty and address line 2 is not empty or incomplete
AND Processing shipper country information
THEN:
• Search state-country lookup table to find matching country code for the state, andif not found add error message for invalid state/province code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper information is being processed.
Trigger Criteria:
Context: Shipper information is being processed
Applied to: Validate Shipper Data Requirements
Action: Validating shipper data completeness
Logic Flow:
IF Shipper information is being processed
AND Validating shipper data completeness
THEN:
• If shipper name is empty, add error message for invalid shipper name
R-GCCCCADD-cbl-00193 (+16)File: GCCCCADD.cblBusiness Rule: Consignee Data Extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when new consignee record needs to be created.
Trigger Criteria:
Context: A new consignee record needs to be created
Applied to: Initialize Consignee Record
Action: The consignee record initialization is triggered
Logic Flow:
IF A new consignee record needs to be created
AND The consignee record initialization is triggered
THEN:
• The consignee record is cleared, CCN key is set, record type is set to '55', and sequence number is set to '0002'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Check EDI BOL for Consignee Data
Action: The system checks for consignee data in the EDI BOL
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system checks for consignee data in the EDI BOL
THEN:
• The system retrieves the EBSNRSC segment with type 'CN' and sequence '01' and sets the found/not found status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol consignee data is found.
Trigger Criteria:
Context: EDI BOL consignee data is found
Applied to: Extract Consignee Name from EDI BOL
Action: The system processes the consignee segment
Logic Flow:
IF EDI BOL consignee data is found
AND The system processes the consignee segment
THEN:
• The entity ID code is set to 'CN', the consignee name is extracted from D1-SHIPPER-NAME field, and the CHOP code is extracted from D1-CONS-CHOP field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol consignee data exists.
Trigger Criteria:
Context: EDI BOL consignee data exists
Applied to: Check EDI BOL for Address Data
Action: The system checks for address data in the EDI BOL
Logic Flow:
IF EDI BOL consignee data exists
AND The system checks for address data in the EDI BOL
THEN:
• The system retrieves the EBSNRSA segment with type 'CN', sequence '01', address type 'CA', and address sequence '01'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol consignee data exists.
Trigger Criteria:
Context: EDI BOL consignee data exists
Applied to: Check EDI BOL for City/State Data
Action: The system checks for city/state data in the EDI BOL
Logic Flow:
IF EDI BOL consignee data exists
AND The system checks for city/state data in the EDI BOL
THEN:
• The system retrieves the EBSNRSA segment with type 'CN', sequence '01', address type 'CC', and address sequence '01'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol consignee data exists.
Trigger Criteria:
Context: EDI BOL consignee data exists
Applied to: Check EDI BOL for Contact Info
Action: The system checks for contact data in the EDI BOL
Logic Flow:
IF EDI BOL consignee data exists
AND The system checks for contact data in the EDI BOL
THEN:
• The system retrieves the EBSNRSA segment with type 'CN', sequence '01', contact type 'GP', and contact sequence '01'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol address data is found for the consignee.
Trigger Criteria:
Context: EDI BOL address data is found for the consignee
Applied to: Extract Address from EDI BOL
Action: The system processes the address segment
Logic Flow:
IF EDI BOL address data is found for the consignee
AND The system processes the address segment
THEN:
• Address line 1 is set from D2-ADDL-NAME-ADDR-1, address line 2 is set from D2-ADDL-NAME-ADDR-2, andif address line 1 is empty, it is set to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol address data is not found for the consignee.
Trigger Criteria:
Context: EDI BOL address data is not found for the consignee
Applied to: Use Fastway Address Data
Action: The system falls back to Fastway data
Logic Flow:
IF EDI BOL address data is not found for the consignee
AND The system falls back to Fastway data
THEN:
• Address line 1 is set from CONS-DATA(3) or 'NA' if empty, and address line 2 is set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol city/state data is found for the consignee.
Trigger Criteria:
Context: EDI BOL city/state data is found for the consignee
Applied to: Extract City/State/Postal from EDI BOL
Action: The system processes the city/state segment
Logic Flow:
IF EDI BOL city/state data is found for the consignee
AND The system processes the city/state segment
THEN:
• City name is set from D4-CITY-NAME, state/province code is set from D4-STATE-PROV-CODE, postal code is set from D4-POSTAL-CODE, and country code is set from D4-COUNTRY-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol city/state data is not found for the consignee.
Trigger Criteria:
Context: EDI BOL city/state data is not found for the consignee
Applied to: Use Fastway City/State Data
Action: The system falls back to Fastway data
Logic Flow:
IF EDI BOL city/state data is not found for the consignee
AND The system falls back to Fastway data
THEN:
• CONS-DATA(4) is parsed into city name, state/province code, and postal code components, and country code is determined from state/country lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol contact data is found for the consignee.
Trigger Criteria:
Context: EDI BOL contact data is found for the consignee
Applied to: Extract Contact Information
Action: The system processes the contact segment
Logic Flow:
IF EDI BOL contact data is found for the consignee
AND The system processes the contact segment
THEN:
• Contact function code is set from PER-CONTACT-FUNC-CODE, contact name is set from PER-NAME, communication number qualifier is set from PER-COMMUN-NO-QUAL, and communication number is set from PER-COMMUN-NUMBER
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol consignee data is not found.
Trigger Criteria:
Context: EDI BOL consignee data is not found
Applied to: Use Fastway Consignee Data
Action: The system falls back to Fastway data
Logic Flow:
IF EDI BOL consignee data is not found
AND The system falls back to Fastway data
THEN:
• Entity ID is set to 'CN', consignee name is set from CONS-DATA(1), CHOP code is set from CONS-CHOP, and ID code qualifier and ID code are set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address data has been extracted from either edi bol or fastway.
Trigger Criteria:
Context: Address data has been extracted from either EDI BOL or Fastway
Applied to: Set Default Address if Missing
Action: Address line 1 is empty or contains only spaces
Logic Flow:
IF Address data has been extracted from either EDI BOL or Fastway
AND Address line 1 is empty or contains only spaces
THEN:
• Address line 1 is set to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when state or province code exists for the consignee.
Trigger Criteria:
Context: A state or province code exists for the consignee
Applied to: Determine Country Code
Action: The system performs country code determination
Logic Flow:
IF A state or province code exists for the consignee
AND The system performs country code determination
THEN:
• The state-country lookup table is searched to find the matching country code for the given state/province code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when state/province code exists for the consignee.
Trigger Criteria:
Context: A state/province code exists for the consignee
Applied to: Lookup State/Country Combination
Action: The state-country lookup is performed
Logic Flow:
IF A state/province code exists for the consignee
AND The state-country lookup is performed
THEN:
• If a valid country is found, the country code is set; if no valid country is found, an error message is generated for invalid consignee province/state code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee data has been extracted and processed.
Trigger Criteria:
Context: Consignee data has been extracted and processed
Applied to: Validate Consignee Data
Action: Data validation is performed
Logic Flow:
IF Consignee data has been extracted and processed
AND Data validation is performed
THEN:
• The system validates that consignee name is not empty, generates error message if consignee name is missing, and calls the N1 segment validation routine
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee data has been validated and processed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Consignee data has been validated and processed
Applied to: Store Consignee Record
Action: The consignee record is ready for storage
Logic Flow:
IF Consignee data has been validated and processed
AND The consignee record is ready for storage
THEN:
• The complete consignee record is moved to position 2 in the WS-GCSCCS55-DATA array
Business Justification: Governs the functional prerequisites and system routing when shipper record is being processed.
Trigger Criteria:
Context: A shipper record is being processed
Applied to: Set Default US Country Code
Action: Shipper address line 2 is empty OR (first position is not empty AND positions 2-18 are all spaces)
Logic Flow:
IF A shipper record is being processed
AND Shipper address line 2 is empty OR (first position is not empty AND positions 2-18 are all spaces)
THEN:
• Set shipper country code to 'US' and shipper address line 2 to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper record with a non-empty address line 2 and state/province code.
Trigger Criteria:
Context: A shipper record with a non-empty address line 2 and state/province code
Applied to: Lookup Shipper State/Province
Action: The shipper state/province code needs country determination
Logic Flow:
IF A shipper record with a non-empty address line 2 and state/province code
AND The shipper state/province code needs country determination
THEN:
• Search the state-country lookup table using the shipper state/province code to find the corresponding country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when state-country lookup has been performed for shipper state/province code.
Trigger Criteria:
Context: A state-country lookup has been performed for shipper state/province code
Applied to: Set Shipper Country Code from Table
Action: A matching entry is found in the lookup table
Logic Flow:
IF A state-country lookup has been performed for shipper state/province code
AND A matching entry is found in the lookup table
THEN:
• Set the shipper country code to the country value from the matching table entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipper record with a state/province code that requires country determination.
Trigger Criteria:
Context: A shipper record with a state/province code that requires country determination
Applied to: Generate Invalid State Error
Action: The shipper state/province code is not found in the state-country lookup table
Logic Flow:
IF A shipper record with a state/province code that requires country determination
AND The shipper state/province code is not found in the state-country lookup table
THEN:
• Generate an invalid shipper province/state code error message and add it to the message collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record is being processed.
Trigger Criteria:
Context: A consignee record is being processed
Applied to: Set Default CA Country Code
Action: Consignee address line 2 is empty OR (first position is not empty AND positions 2-18 are all spaces)
Logic Flow:
IF A consignee record is being processed
AND Consignee address line 2 is empty OR (first position is not empty AND positions 2-18 are all spaces)
THEN:
• Set consignee country code to 'CA' and consignee address line 2 to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee record with a non-empty address line 2 and state/province code.
Trigger Criteria:
Context: A consignee record with a non-empty address line 2 and state/province code
Applied to: Lookup Consignee State/Province
Action: The consignee state/province code needs country determination
Logic Flow:
IF A consignee record with a non-empty address line 2 and state/province code
AND The consignee state/province code needs country determination
THEN:
• Search the state-country lookup table using the consignee state/province code to find the corresponding country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when state-country lookup has been performed for consignee state/province code.
Trigger Criteria:
Context: A state-country lookup has been performed for consignee state/province code
Applied to: Set Consignee Country Code from Table
Action: A matching entry is found in the lookup table
Logic Flow:
IF A state-country lookup has been performed for consignee state/province code
AND A matching entry is found in the lookup table
THEN:
• Set the consignee country code to the country value from the matching table entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when consignee record with a state/province code that requires country determination.
Trigger Criteria:
Context: A consignee record with a state/province code that requires country determination
Applied to: Generate Invalid State Error
Action: The consignee state/province code is not found in the state-country lookup table
Logic Flow:
IF A consignee record with a state/province code that requires country determination
AND The consignee state/province code is not found in the state-country lookup table
THEN:
• Generate an invalid consignee province/state code error message and add it to the message collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when notify party name exists in the shipment record. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A notify party name exists in the shipment record
Applied to: Copy Consignee Country Code to Notify Party
Action: Processing notify party address information
Logic Flow:
IF A notify party name exists in the shipment record
AND Processing notify party address information
THEN:
• Copy consignee address line 1, address line 2, and country code to the corresponding notify party fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record (n1 segment) with an entity id and name.
Trigger Criteria:
Context: An entity record (N1 segment) with an entity ID and name
Applied to: Generate Missing Address Error
Action: The address line 1 is empty
Logic Flow:
IF An entity record (N1 segment) with an entity ID and name
AND The address line 1 is empty
THEN:
• Generate a required address information error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address record with a city name.
Trigger Criteria:
Context: An address record with a city name
Applied to: Generate City Length Error
Action: The city name length is less than 2 characters
Logic Flow:
IF An address record with a city name
AND The city name length is less than 2 characters
THEN:
• Generate a minimum length requirement error message for city name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address record with a non-empty postal code.
Trigger Criteria:
Context: An address record with a non-empty postal code
Applied to: Generate Postal Code Length Error
Action: The postal code length is less than 3 characters
Logic Flow:
IF An address record with a non-empty postal code
AND The postal code length is less than 3 characters
THEN:
• Generate a minimum length requirement error message for postal code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when address record with country code of ca, us, or mx and a state/province code.
Trigger Criteria:
Context: An address record with country code of CA, US, or MX and a state/province code
Applied to: Generate Invalid State/Country Error
Action: The state/province code is not found in the lookup table for the specified country
Logic Flow:
IF An address record with country code of CA, US, or MX and a state/province code
AND The state/province code is not found in the lookup table for the specified country
THEN:
• Generate an invalid state/province code error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address record with empty country code but valid state/province code.
Trigger Criteria:
Context: An address record with empty country code but valid state/province code
Applied to: Validate State/Country Combination
Action: The country code field is empty
Logic Flow:
IF An address record with empty country code but valid state/province code
AND The country code field is empty
THEN:
• Search the state-country lookup table and set the country code based on the state/province match
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address record that has completed all validation steps.
Trigger Criteria:
Context: An address record that has completed all validation steps
Applied to: Complete Address Validation
Action: The country code field is still empty
Logic Flow:
IF An address record that has completed all validation steps
AND The country code field is still empty
THEN:
• Generate a required country code error message
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest requires entity address processing.
Trigger Criteria:
Context: A manifest requires entity address processing
Applied to: Get Entity Record from Database
Action: The system processes entity records for N1-N3-N4 segment creation
Logic Flow:
IF A manifest requires entity address processing
AND The system processes entity records for N1-N3-N4 segment creation
THEN:
• Entity records are retrieved from GCSCCS55 cargo data array up to maximum sequence number
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when entity record is being processed for address validation.
Trigger Criteria:
Context: An entity record is being processed for address validation
Applied to: Entity Record Exists?
Action: The system checks if the entity record contains valid data
Logic Flow:
IF An entity record is being processed for address validation
AND The system checks if the entity record contains valid data
THEN:
• Processing continues only if the record is not spaces or low-values, otherwise the record is skipped
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record exists and needs address processing.
Trigger Criteria:
Context: An entity record exists and needs address processing
Applied to: Destination Type Check
Action: The system evaluates the destination configuration
Logic Flow:
IF An entity record exists and needs address processing
AND The system evaluates the destination configuration
THEN:
• If309-DESTINATION flag is set, apply 4040 validation rules, otherwise apply 5040 validation rules
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when destination type is 4040 and an entity record exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The destination type is 4040 and an entity record exists
Applied to: Check 4040 Valid N1 Code
Action: The system validates the entity identification code
Logic Flow:
IF The destination type is 4040 and an entity record exists
AND The system validates the entity identification code
THEN:
• The entity code is checked against WS-VALID-4040-N1 validation table
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when destination type is 5040 and an entity record exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The destination type is 5040 and an entity record exists
Applied to: Check 5040 Valid N1 Code
Action: The system validates the entity identification code
Logic Flow:
IF The destination type is 5040 and an entity record exists
AND The system validates the entity identification code
THEN:
• The entity code is checked against WS-VALID-5040-N1 validation table
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity code has been validated against 4040 requirements.
Trigger Criteria:
Context: An entity code has been validated against 4040 requirements
Applied to: Valid N1 Code for 4040?
Action: The system evaluates the validation result
Logic Flow:
IF An entity code has been validated against 4040 requirements
AND The system evaluates the validation result
THEN:
• If the entity code is valid for 4040 destination, proceed to create segments, otherwise skip the entity
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity code has been validated against 5040 requirements.
Trigger Criteria:
Context: An entity code has been validated against 5040 requirements
Applied to: Valid N1 Code for 5040?
Action: The system evaluates the validation result
Logic Flow:
IF An entity code has been validated against 5040 requirements
AND The system evaluates the validation result
THEN:
• If the entity code is valid for 5040 destination, proceed to additional address validation, otherwise skip the entity
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity has passed 5040 code validation.
Trigger Criteria:
Context: An entity has passed 5040 code validation
Applied to: City Name Present?
Action: The system checks address completeness
Logic Flow:
IF An entity has passed 5040 code validation
AND The system checks address completeness
THEN:
• If city name (GCCS-N401-CITY-NAME) is spaces, the entity is skipped, otherwise validation continues
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity has city name present for 5040 destination.
Trigger Criteria:
Context: An entity has city name present for 5040 destination
Applied to: Country Code Present?
Action: The system checks country code completeness
Logic Flow:
IF An entity has city name present for 5040 destination
AND The system checks country code completeness
THEN:
• If country code (GCCS-N404-COUNTRY-CDE) is spaces, the entity is skipped, otherwise validation continues
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when entity has country code present for 5040 destination.
Trigger Criteria:
Context: An entity has country code present for 5040 destination
Applied to: Postal Code Present for US/CA?
Action: The system checks postal code requirements based on country
Logic Flow:
IF An entity has country code present for 5040 destination
AND The system checks postal code requirements based on country
THEN:
• If country is US or CA and postal code (GCCS-N403-POSTAL-CDE) is spaces, the entity is skipped, otherwise validation continues
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity has passed postal code validation for 5040 destination.
Trigger Criteria:
Context: An entity has passed postal code validation for 5040 destination
Applied to: State/Province Code Present for US/CA?
Action: The system checks state/province code requirements based on country
Logic Flow:
IF An entity has passed postal code validation for 5040 destination
AND The system checks state/province code requirements based on country
THEN:
• If country is US or CA and state/province code (GCCS-N402-STATE-PROV-CDE) is spaces, the entity is skipped, otherwise proceed to address mapping check
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity has passed all address validation checks for 5040 destination.
Trigger Criteria:
Context: An entity has passed all address validation checks for 5040 destination
Applied to: Check Consignee-Importer Address Mapping
Action: The system performs consignee-importer address mapping
Logic Flow:
IF An entity has passed all address validation checks for 5040 destination
AND The system performs consignee-importer address mapping
THEN:
• The N20625-CHECK-CN-IMPORTER procedure is executed to validate address mapping relationships
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity has passed all validation checks.
Trigger Criteria:
Context: An entity has passed all validation checks
Applied to: Create N1-N3-N4 Segments
Action: The system creates address segments
Logic Flow:
IF An entity has passed all validation checks
AND The system creates address segments
THEN:
• N1, N3, N4, and PER segments are created through N2063-EACH-N1-N3-N4-PER procedure
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when entity has failed validation checks.
Trigger Criteria:
Context: An entity has failed validation checks
Applied to: Skip Entity - Initialize Record
Action: The system determines the entity should be skipped
Logic Flow:
IF An entity has failed validation checks
AND The system determines the entity should be skipped
THEN:
• The GCSCCS55 entity record is initialized to spaces to skip further processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when current entity processing is complete (either created segments or skipped).
Trigger Criteria:
Context: Current entity processing is complete (either created segments or skipped)
Applied to: Continue to Next Entity
Action: The system moves to process the next entity
Logic Flow:
IF Current entity processing is complete (either created segments or skipped)
AND The system moves to process the next entity
THEN:
• Processing continues with the next entity record in the GCSCCS55 array until maximum sequence is reached
Business Justification: Defines the strict business conditions required to proceed when shipment record is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment record is being processed for customs manifest creation
Applied to: Set Shipper Address 1 to 'NA'
Action: The shipper address line 1 field is empty or contains only spaces
Logic Flow:
IF A shipment record is being processed for customs manifest creation
AND The shipper address line 1 field is empty or contains only spaces
THEN:
• The system sets the shipper address line 1 to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment record is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment record is being processed for customs manifest creation
Applied to: Set Consignee Address 1 to 'NA'
Action: The consignee address line 1 field is empty or contains only spaces
Logic Flow:
IF A shipment record is being processed for customs manifest creation
AND The consignee address line 1 field is empty or contains only spaces
THEN:
• The system sets the consignee address line 1 to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment record is being processed and shipper address line 1 has been validated.
Trigger Criteria:
Context: A shipment record is being processed and shipper address line 1 has been validated
Applied to: Set Shipper Address 2 to 'NA' and Country to 'US'
Action: The shipper address line 2 is empty OR the first character is not empty but characters 2-18 are all spaces
Logic Flow:
IF A shipment record is being processed and shipper address line 1 has been validated
AND The shipper address line 2 is empty OR the first character is not empty but characters 2-18 are all spaces
THEN:
• The system sets shipper address line 2 to 'NA' for positions 1-18and sets the shipper country code to 'US'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment record is being processed and consignee address line 1 has been validated.
Trigger Criteria:
Context: A shipment record is being processed and consignee address line 1 has been validated
Applied to: Set Consignee Address 2 to 'NA' and Country to 'CA'
Action: The consignee address line 2 is empty OR the first character is not empty but characters 2-18 are all spaces
Logic Flow:
IF A shipment record is being processed and consignee address line 1 has been validated
AND The consignee address line 2 is empty OR the first character is not empty but characters 2-18 are all spaces
THEN:
• The system sets consignee address line 2 to 'NA' for positions 1-18and sets the consignee country code to 'CA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when processing is called from gcx011 system and shipper postal code is not empty.
Trigger Criteria:
Context: The processing is called from GCX011 system and shipper postal code is not empty
Applied to: Pad Shipper Postal Code with Periods
Action: The shipper postal code length is less than 5 characters
Logic Flow:
IF The processing is called from GCX011 system and shipper postal code is not empty
AND The shipper postal code length is less than 5 characters
THEN:
• The system pads the shipper postal code with periods starting from position 5 to make it 5 characters total
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when processing is called from gcx011 system and consignee postal code is not empty.
Trigger Criteria:
Context: The processing is called from GCX011 system and consignee postal code is not empty
Applied to: Pad Consignee Postal Code with Periods
Action: The consignee postal code length is less than 5 characters
Logic Flow:
IF The processing is called from GCX011 system and consignee postal code is not empty
AND The consignee postal code length is less than 5 characters
THEN:
• The system pads the consignee postal code with periods starting from position 5 to make it 5 characters total
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when processing is called from gcx011 system and notify party postal code is not empty.
Trigger Criteria:
Context: The processing is called from GCX011 system and notify party postal code is not empty
Applied to: Pad Notify Party Postal Code with Periods
Action: The notify party postal code length is less than 5 characters
Logic Flow:
IF The processing is called from GCX011 system and notify party postal code is not empty
AND The notify party postal code length is less than 5 characters
THEN:
• The system pads the notify party postal code with periods starting from position 5 to make it 5 characters total
R-GCCCCADD-cbl-00232 (+11)File: GCCCCADD.cblBusiness Rule: Commodity Description Building
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipcomm data is available with commodity description fields.
Trigger Criteria:
Context: SHIPCOMM data is available with commodity description fields
Applied to: Extract 10 Commodity Description Lines
Action: The system processes commodity description building
Logic Flow:
IF SHIPCOMM data is available with commodity description fields
AND The system processes commodity description building
THEN:
• All 10 commodity description lines from SHIPCOMM are extracted and stored in working storage description array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shiproot data is available with free form description fields.
Trigger Criteria:
Context: SHIPROOT data is available with free form description fields
Applied to: Extract 2 Free Form Description Lines from SHIPROOT
Action: The system processes commodity description building
Logic Flow:
IF SHIPROOT data is available with free form description fields
AND The system processes commodity description building
THEN:
• Both free form description lines from SHIPROOT are extracted and stored in working storage description array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling codes exist in the shipment data.
Trigger Criteria:
Context: Special handling codes exist in the shipment data
Applied to: Check Special Handling Code
Action: The system processes each special handling code entry up to 7 entries
Logic Flow:
IF Special handling codes exist in the shipment data
AND The system processes each special handling code entry up to 7 entries
THEN:
• Each special handling code is evaluated for inclusion in commodity description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling code is being processed.
Trigger Criteria:
Context: A special handling code is being processed
Applied to: Code = VA, EV, or VS?
Action: The special handling code is VA (Valuable), EV (Extremely Valuable), or VS (Valuable Shipment)
Logic Flow:
IF A special handling code is being processed
AND The special handling code is VA (Valuable), EV (Extremely Valuable), or VS (Valuable Shipment)
THEN:
• The code and its instructions are included in the commodity description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling code of type va, ev, or vs is identified.
Trigger Criteria:
Context: A special handling code of type VA, EV, or VS is identified
Applied to: Extract Special Handling Code and Instructions
Action: The system processes the special handling entry
Logic Flow:
IF A special handling code of type VA, EV, or VS is identified
AND The system processes the special handling entry
THEN:
• Both the special handling code and its instructions are extracted and formatted for inclusion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when special handling code and instructions have been extracted.
Trigger Criteria:
Context: Special handling code and instructions have been extracted
Applied to: Add to Special Handling Description Array
Action: The system adds the information to the description array
Logic Flow:
IF Special handling code and instructions have been extracted
AND The system adds the information to the description array
THEN:
• The special handling information is placed in the first available position in the special handling description array (positions 1, 2, or 3)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is processing special handling codes.
Trigger Criteria:
Context: The system is processing special handling codes
Applied to: More Special Handling Codes?
Action: The current counter is less than 7 and more special handling codes exist
Logic Flow:
IF The system is processing special handling codes
AND The current counter is less than 7 and more special handling codes exist
THEN:
• The system continues to the next special handling code for evaluation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all description components have been extracted (shipcomm descriptions, shiproot free form descriptions, and special handling descriptions).
Trigger Criteria:
Context: All description components have been extracted (SHIPCOMM descriptions, SHIPROOT free form descriptions, and special handling descriptions)
Applied to: Combine All Description Components
Action: The system combines all description components
Logic Flow:
IF All description components have been extracted (SHIPCOMM descriptions, SHIPROOT free form descriptions, and special handling descriptions)
AND The system combines all description components
THEN:
• All description elements are merged into a single comprehensive description structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when all description components have been combined.
Trigger Criteria:
Context: All description components have been combined
Applied to: Prepare Description for Compression
Action: The system prepares for compression
Logic Flow:
IF All description components have been combined
AND The system prepares for compression
THEN:
• Description data is formatted with proper length parameters (45000 for source, 22500 for target) for compression utility
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description data is prepared for compression with proper length parameters. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description data is prepared for compression with proper length parameters
Applied to: Call GCCCOMP Utility for Data Compression
Action: The GCCCOMP utility is called with the description data
Logic Flow:
IF Description data is prepared for compression with proper length parameters
AND The GCCCOMP utility is called with the description data
THEN:
• The description data is compressed according to the utility's compression algorithm
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description data has been compressed by the gcccomp utility.
Trigger Criteria:
Context: Description data has been compressed by the GCCCOMP utility
Applied to: Store Compressed Description in GCCC-LADING-DESCRIPTION
Action: The system stores the compressed description
Logic Flow:
IF Description data has been compressed by the GCCCOMP utility
AND The system stores the compressed description
THEN:
• The compressed description is stored in GCCC-LADING-DESCRIPTION field for the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when compressed description data is available.
Trigger Criteria:
Context: Compressed description data is available
Applied to: Distribute Description Data to GCSCCS53 Array
Action: The system distributes the description data
Logic Flow:
IF Compressed description data is available
AND The system distributes the description data
THEN:
• The description data is distributed across all 46 positions of the GCSCCS53 cargo data array
R-GCCCCADD-cbl-00244 (+19)File: GCCCCADD.cblBusiness Rule: Description Data Compression
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment has commodity records with descriptions and shipment root with free-form descriptions.
Trigger Criteria:
Context: A shipment has commodity records with descriptions and shipment root with free-form descriptions
Applied to: Build Description from Multiple Sources
Action: The system builds the complete cargo description
Logic Flow:
IF A shipment has commodity records with descriptions and shipment root with free-form descriptions
AND The system builds the complete cargo description
THEN:
• All commodity descriptions from SHIPCOMM records (1-10) are included and all free-form descriptions from SHIPROOT records (1-2) are included in the description workspace
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment commodity records contain description data in fields 1 through 10. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Shipment commodity records contain description data in fields 1 through 10
Applied to: Combine SHIPCOMM Commodity Descriptions
Action: The system processes commodity descriptions
Logic Flow:
IF Shipment commodity records contain description data in fields 1 through 10
AND The system processes commodity descriptions
THEN:
• Each commodity description line (CMOD-DESC 01 through 10) is moved to the corresponding workspace description field (WS-DESC-FW-SHIPCOMM 01 through 10)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment root contains free-form description data in two fields. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Shipment root contains free-form description data in two fields
Applied to: Add SHIPROOT Free Form Descriptions
Action: The system processes free-form descriptions
Logic Flow:
IF Shipment root contains free-form description data in two fields
AND The system processes free-form descriptions
THEN:
• Free-form description line 1 is moved to WS-DESC-FW-SHIPROOT field 1 and free-form description line 2 is moved to WS-DESC-FW-SHIPROOT field 2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has special handling codes and instructions defined.
Trigger Criteria:
Context: A shipment has special handling codes and instructions defined
Applied to: Process Special Handling Codes
Action: The system processes special handling codes from positions 1 through 7
Logic Flow:
IF A shipment has special handling codes and instructions defined
AND The system processes special handling codes from positions 1 through 7
THEN:
• Each special handling code is evaluated to determine if it matches VA, EV, or VS codes for inclusion in description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when special handling code is va, ev, or vs. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A special handling code is VA, EV, or VS
Applied to: Add Special Handling Instructions
Action: The system processes the special handling code and instruction
Logic Flow:
IF A special handling code is VA, EV, or VS
AND The system processes the special handling code and instruction
THEN:
• The handling code and instruction are combined and added to the first available special handling description field (WS-DESC-FW-SPCL-HNDLG positions 1, 2, or 3)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when all description components have been collected from various sources. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All description components have been collected from various sources
Applied to: Prepare Description for Compression
Action: The system prepares for description compression
Logic Flow:
IF All description components have been collected from various sources
AND The system prepares for description compression
THEN:
• All description data is moved to WS-DESC-2 workspace and compression length parameters are set to 45000 for input and 22500 for output
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when description data is prepared in ws-desc-2 with compression parameters set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description data is prepared in WS-DESC-2 with compression parameters set
Applied to: Call GCCCOMP Utility
Action: The system calls GCCCOMP utility with CCCOM, WS-DESC-2, WS-DESC, WS-DESC-LENGTH, and WS-DESC-LENGTH-2 parameters
Logic Flow:
IF Description data is prepared in WS-DESC-2 with compression parameters set
AND The system calls GCCCOMP utility with CCCOM, WS-DESC-2, WS-DESC, WS-DESC-LENGTH, and WS-DESC-LENGTH-2 parameters
THEN:
• The description data is compressed and returned in WS-DESC workspace
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when description data has been successfully compressed by gcccomp utility. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description data has been successfully compressed by GCCCOMP utility
Applied to: Store Compressed Description in GCCC-LADING-DESCRIPTION
Action: The system stores the compressed description
Logic Flow:
IF Description data has been successfully compressed by GCCCOMP utility
AND The system stores the compressed description
THEN:
• The compressed description from WS-DESC-DB-GCSCCRT is moved to GCCC-LADING-DESCRIPTION field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when compressed description data is available in ws-desc-db-gcsccs53 array format. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Compressed description data is available in WS-DESC-DB-GCSCCS53 array format
Applied to: Distribute Compressed Data to GCSCCS53 Array
Action: The system distributes the compressed data
Logic Flow:
IF Compressed description data is available in WS-DESC-DB-GCSCCS53 array format
AND The system distributes the compressed data
THEN:
• Each element from WS-DESC-DB-GCSCCS53 array (positions 1 through 46) is moved to the corresponding WS-GCSCCS53-CARGO-DATA array element
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment with commodity data exists in shipcomm.
Trigger Criteria:
Context: A shipment with commodity data exists in SHIPCOMM
Applied to: Collect SHIPCOMM Commodity Descriptions
Action: The system processes description data for customs manifest
Logic Flow:
IF A shipment with commodity data exists in SHIPCOMM
AND The system processes description data for customs manifest
THEN:
• All 10 commodity description lines from SHIPCOMM are collected and stored in description work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with free form description data exists in shiproot.
Trigger Criteria:
Context: A shipment with free form description data exists in SHIPROOT
Applied to: Collect SHIPROOT Free Form Descriptions
Action: The system processes description data for customs manifest
Logic Flow:
IF A shipment with free form description data exists in SHIPROOT
AND The system processes description data for customs manifest
THEN:
• Both free form description lines from SHIPROOT are collected and stored in description work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has special handling codes defined.
Trigger Criteria:
Context: A shipment has special handling codes defined
Applied to: Collect Special Handling Code Descriptions
Action: The system processes special handling codes VA, EV, or VS with instructions
Logic Flow:
IF A shipment has special handling codes defined
AND The system processes special handling codes VA, EV, or VS with instructions
THEN:
• The special handling code and instruction are combined and stored in the first available special handling description slot (up to 3 slots)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description data needs to be compressed for storage.
Trigger Criteria:
Context: Description data needs to be compressed for storage
Applied to: Set Compression Parameters
Action: The system prepares for description compression
Logic Flow:
IF Description data needs to be compressed for storage
AND The system prepares for description compression
THEN:
• Source length is set to 45000 bytes and target length is set to 22500 bytes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description data is prepared with compression parameters set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description data is prepared with compression parameters set
Applied to: Call GCCCOMP Utility
Action: The system needs to compress description data
Logic Flow:
IF Description data is prepared with compression parameters set
AND The system needs to compress description data
THEN:
• GCCCOMP utility is called with source data, target area, and length parameters to perform compression
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when description data has been successfully compressed.
Trigger Criteria:
Context: Description data has been successfully compressed
Applied to: Store Compressed Description in GCSCCRT
Action: The system stores the compressed description
Logic Flow:
IF Description data has been successfully compressed
AND The system stores the compressed description
THEN:
• The compressed description is moved to GCCC-LADING-DESCRIPTION field in the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description data has been compressed into segments. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description data has been compressed into segments
Applied to: Store Compressed Data in GCSCCS53 Array
Action: The system stores segmented description data
Logic Flow:
IF Description data has been compressed into segments
AND The system stores segmented description data
THEN:
• All 46 description segments are moved from compressed data to WS-GCSCCS53-CARGO-DATA array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment is being processed for customs manifest.
Trigger Criteria:
Context: A shipment is being processed for customs manifest
Applied to: Transit Action Required?
Action: The system checks if transit action is required
Logic Flow:
IF A shipment is being processed for customs manifest
AND The system checks if transit action is required
THEN:
• If action code is 'US' or 'RT' and description from CCN is provided, transit description processing is initiated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when transit action is required and description from ccn is specified.
Trigger Criteria:
Context: Transit action is required and description from CCN is specified
Applied to: Retrieve Description from Related CCN
Action: The system retrieves description from the related CCN
Logic Flow:
IF Transit action is required and description from CCN is specified
AND The system retrieves description from the related CCN
THEN:
• Description data is fetched from the specified CCN using GCCCCIO2 and stored for enhancement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when action code is 'us' and description from ccn is available.
Trigger Criteria:
Context: Action code is 'US' and description from CCN is available
Applied to: Add 'MOVING IN TRANSIT THROUGH CANADA' text
Action: The system builds enhanced transit description
Logic Flow:
IF Action code is 'US' and description from CCN is available
AND The system builds enhanced transit description
THEN:
• Description is enhanced by concatenating CCN identifier, ' MOVING IN TRANSIT THROUGH CANADA ', and original description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when action code is 'rt' and description from ccn is available.
Trigger Criteria:
Context: Action code is 'RT' and description from CCN is available
Applied to: Add 'MOVING IN TRANSIT THROUGH US' text
Action: The system builds enhanced transit description
Logic Flow:
IF Action code is 'RT' and description from CCN is available
AND The system builds enhanced transit description
THEN:
• Description is enhanced by concatenating CCN identifier, ' MOVING IN TRANSIT THROUGH US ', and original description
R-GCCCCADD-cbl-00253 (+14)File: GCCCCADD.cblBusiness Rule: Hazardous Material Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when hazardous material processing is starting.
Trigger Criteria:
Context: Hazardous material processing is starting
Applied to: Initialize Hazmat Fields
Action: The system begins hazmat information extraction
Logic Flow:
IF Hazardous material processing is starting
AND The system begins hazmat information extraction
THEN:
• The commodity description danger field and UN number field are cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment requires hazmat processing.
Trigger Criteria:
Context: A shipment requires hazmat processing
Applied to: Check for EDI BOL Hazmat Data
Action: The system checks for EDI BOL hazmat data in commodity segments with type 'CH'
Logic Flow:
IF A shipment requires hazmat processing
AND The system checks for EDI BOL hazmat data in commodity segments with type 'CH'
THEN:
• The system identifies if hazmat segments exist and sets the appropriate processing flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol hazmat data is found in commodity segments.
Trigger Criteria:
Context: EDI BOL hazmat data is found in commodity segments
Applied to: Process EDI BOL Hazmat Data
Action: The system processes hazmat information from EDI BOL
Logic Flow:
IF EDI BOL hazmat data is found in commodity segments
AND The system processes hazmat information from EDI BOL
THEN:
• The system extracts UN numbers and proper shipping names from the EDI BOL hazmat segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when hazmat data exists in edi bol commodity segments.
Trigger Criteria:
Context: Hazmat data exists in EDI BOL commodity segments
Applied to: UN Number Found in EDI?
Action: The system examines the UN/NA identification code
Logic Flow:
IF Hazmat data exists in EDI BOL commodity segments
AND The system examines the UN/NA identification code
THEN:
• If the first two characters equal 'UN', the system accepts it as a valid UN number, otherwise continues searching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid un number is found in edi bol hazmat data.
Trigger Criteria:
Context: A valid UN number is found in EDI BOL hazmat data
Applied to: Extract UN Number from EDI
Action: The UN/NA identification code starts with 'UN'
Logic Flow:
IF A valid UN number is found in EDI BOL hazmat data
AND The UN/NA identification code starts with 'UN'
THEN:
• The system moves the complete UN/NA identification code to the commodity UN number field and sets hazmat found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid un number has been extracted from edi bol.
Trigger Criteria:
Context: A valid UN number has been extracted from EDI BOL
Applied to: Get Proper Shipping Name from EDI
Action: The system looks up the corresponding hazmat information segment
Logic Flow:
IF A valid UN number has been extracted from EDI BOL
AND The system looks up the corresponding hazmat information segment
THEN:
• If the hazmat information segment is found, the proper shipping name is moved to the commodity description danger field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when current edi bol hazmat record does not contain valid un number.
Trigger Criteria:
Context: Current EDI BOL hazmat record does not contain valid UN number
Applied to: Check Next EDI Hazmat Record
Action: The UN/NA identification code does not start with 'UN'
Logic Flow:
IF Current EDI BOL hazmat record does not contain valid UN number
AND The UN/NA identification code does not start with 'UN'
THEN:
• The system increments the commodity sequence number and continues searching if sequence is 98 or less and hazmat not yet found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no valid hazmat data found in edi bol or edi bol is not available.
Trigger Criteria:
Context: No valid hazmat data found in EDI BOL or EDI BOL is not available
Applied to: Check Fastway Hazmat Data
Action: The system checks Fastway shipment commodity data
Logic Flow:
IF No valid hazmat data found in EDI BOL or EDI BOL is not available
AND The system checks Fastway shipment commodity data
THEN:
• The system retrieves shipment commodity information and looks up emergency response data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when fastway shipment commodity data is available.
Trigger Criteria:
Context: Fastway shipment commodity data is available
Applied to: Fastway Hazmat Found?
Action: The system examines the emergency response UN/NA code
Logic Flow:
IF Fastway shipment commodity data is available
AND The system examines the emergency response UN/NA code
THEN:
• If emergency response data is found and the UN/NA code starts with 'UN', the system accepts it as valid hazmat data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid fastway emergency response data with un number is found.
Trigger Criteria:
Context: Valid Fastway emergency response data with UN number is found
Applied to: Extract UN Number from Fastway
Action: The UN/NA code starts with 'UN'
Logic Flow:
IF Valid Fastway emergency response data with UN number is found
AND The UN/NA code starts with 'UN'
THEN:
• The system moves the UN/NA code to the commodity UN number field and sets hazmat found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid un number has been extracted from fastway data.
Trigger Criteria:
Context: Valid UN number has been extracted from Fastway data
Applied to: Get Hazmat Description from Fastway
Action: The system looks up emergency response description data
Logic Flow:
IF Valid UN number has been extracted from Fastway data
AND The system looks up emergency response description data
THEN:
• If description data is found, the first 15 characters of hazmat description are moved to commodity description danger field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no hazmat data found in edi bol or fastway sources.
Trigger Criteria:
Context: No hazmat data found in EDI BOL or Fastway sources
Applied to: Use Commodity Table for Hazmat Info
Action: The system accesses the commodity master table using the commodity code
Logic Flow:
IF No hazmat data found in EDI BOL or Fastway sources
AND The system accesses the commodity master table using the commodity code
THEN:
• The system retrieves commodity description and looks up associated hazmat codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when commodity master record is successfully retrieved.
Trigger Criteria:
Context: Commodity master record is successfully retrieved
Applied to: Extract Description from Commodity
Action: The commodity table contains hazmat information
Logic Flow:
IF Commodity master record is successfully retrieved
AND The commodity table contains hazmat information
THEN:
• The system moves the commodity description to the commodity description danger field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when commodity description has been extracted from master table.
Trigger Criteria:
Context: Commodity description has been extracted from master table
Applied to: Extract UN Number from Commodity
Action: The system looks up hazmat codes for the commodity
Logic Flow:
IF Commodity description has been extracted from master table
AND The system looks up hazmat codes for the commodity
THEN:
• If hazmat codes are found, the DOT ID is moved to the UN number field, otherwise both fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no hazmat information found in edi bol, fastway, or commodity table sources.
Trigger Criteria:
Context: No hazmat information found in EDI BOL, Fastway, or commodity table sources
Applied to: Set Hazmat Fields to Spaces
Action: All hazmat data sources have been exhausted without finding valid information
Logic Flow:
IF No hazmat information found in EDI BOL, Fastway, or commodity table sources
AND All hazmat data sources have been exhausted without finding valid information
THEN:
• The system clears both the UN number field and commodity description danger field to spaces
R-GCCCCADD-cbl-00268 (+15)File: GCCCCADD.cblBusiness Rule: Bill of Lading Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo manifest is being created with valid shipment data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo manifest is being created with valid shipment data
Applied to: Call GCCCBOL Program
Action: The system needs to process bill of lading information
Logic Flow:
IF A cargo manifest is being created with valid shipment data
AND The system needs to process bill of lading information
THEN:
• The GCCCBOL program is called with shipment root, customs records, and BOL parameters to extract related CCN data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when gcccbol program has been executed successfully.
Trigger Criteria:
Context: The GCCCBOL program has been executed successfully
Applied to: Extract Multiple CCN Array
Action: The system checks for multiple related cargo control numbers
Logic Flow:
IF The GCCCBOL program has been executed successfully
AND The system checks for multiple related cargo control numbers
THEN:
• The CCN array table is examined to determine if multiple CCNs exist for processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ccn array has been extracted from bol processing results.
Trigger Criteria:
Context: The CCN array has been extracted from BOL processing results
Applied to: Multiple CCNs Found?
Action: The system checks if the CCN array contains data
Logic Flow:
IF The CCN array has been extracted from BOL processing results
AND The system checks if the CCN array contains data
THEN:
• If the CCN array is not spaces or low-values, multiple CCNs are considered found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when multiple ccns have been found in the bol processing results.
Trigger Criteria:
Context: Multiple CCNs have been found in the BOL processing results
Applied to: Process Each Related CCN
Action: The system processes related CCNs
Logic Flow:
IF Multiple CCNs have been found in the BOL processing results
AND The system processes related CCNs
THEN:
• For each CCN from index 1 to 99, if the CCN is not spaces, it is processed for manifest creation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when related ccn needs to be processed for manifest creation.
Trigger Criteria:
Context: A related CCN needs to be processed for manifest creation
Applied to: Set Spawn Parameters
Action: The system sets up spawn parameters
Logic Flow:
IF A related CCN needs to be processed for manifest creation
AND The system sets up spawn parameters
THEN:
• The waybill key, waybill date, CCN, and action code 'AM' are set for the spawn process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when spawn parameters have been set for a related ccn.
Trigger Criteria:
Context: Spawn parameters have been set for a related CCN
Applied to: Create Manifest for Related CCN
Action: The system creates a manifest for the related CCN
Logic Flow:
IF Spawn parameters have been set for a related CCN
AND The system creates a manifest for the related CCN
THEN:
• The GCT0111E process is spawned with the configured parameters to create the manifest
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment is being processed for customs manifest creation
Applied to: EDI BOL Data Available?
Action: The system checks for EDI BOL data availability
Logic Flow:
IF A shipment is being processed for customs manifest creation
AND The system checks for EDI BOL data availability
THEN:
• If the origin road number is not zero, the system attempts to retrieve EDI BOL data from SHIPMIN segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Extract Shipper Information from EDI
Action: The system extracts shipper information
Logic Flow:
IF EDI BOL data is available for processing
AND The system extracts shipper information
THEN:
• The EBSNRSC segment with entity type 'HN' and sequence '01' is retrieved to get shipper name and identification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Extract Consignee Information from EDI
Action: The system extracts consignee information
Logic Flow:
IF EDI BOL data is available for processing
AND The system extracts consignee information
THEN:
• The EBSNRSC segment with entity type 'CN' and sequence '01' is retrieved to get consignee name and identification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Extract Entity Segments from EDI
Action: The system extracts entity segments
Logic Flow:
IF EDI BOL data is available for processing
AND The system extracts entity segments
THEN:
• Various entity types (SF, UC, BN, C1, N1, PF, SS, 11, MC, OO, FW, NN) are retrieved from EBSNRSC segments based on their specific entity codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Extract Commodity Information
Action: The system extracts commodity information
Logic Flow:
IF EDI BOL data is available for processing
AND The system extracts commodity information
THEN:
• Commodity segments (CM type) and hazmat segments (CH type) are retrieved from EBSBCCM segments to get lading quantity, weight, and hazardous material information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Process Transportation Segments
Action: The system processes transportation segments
Logic Flow:
IF EDI BOL data is available for processing
AND The system processes transportation segments
THEN:
• Transportation segments (TN, T2, TA, T3 types) are retrieved from EBSNRTD segments to get transportation details, additional addresses, and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Extract MCOA Charge Information
Action: The system extracts MCOA charge information
Logic Flow:
IF EDI BOL data is available for processing
AND The system extracts MCOA charge information
THEN:
• MCOA segments (OT, ON, OC types) are retrieved from EBSMCOA segments to get organization details, addresses, and charge information for entities like freight forwarders and bill recipients
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity information has been extracted from edi bol.
Trigger Criteria:
Context: Entity information has been extracted from EDI BOL
Applied to: Extract Address Information
Action: The system extracts address information
Logic Flow:
IF Entity information has been extracted from EDI BOL
AND The system extracts address information
THEN:
• Address segments (N3 and N4 types) are retrieved from EBSNRSA segments to get street addresses, city, state, postal code, and country information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity and address information has been extracted from edi bol.
Trigger Criteria:
Context: Entity and address information has been extracted from EDI BOL
Applied to: Process Contact Information
Action: The system processes contact information
Logic Flow:
IF Entity and address information has been extracted from EDI BOL
AND The system processes contact information
THEN:
• Contact segments (PER type) are retrieved from EBSNRSA segments to get contact function code, name, communication number qualifier, and communication number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when all edi bol segments have been extracted and processed.
Trigger Criteria:
Context: All EDI BOL segments have been extracted and processed
Applied to: Validate EDI BOL Structure
Action: The system validates the EDI BOL structure
Logic Flow:
IF All EDI BOL segments have been extracted and processed
AND The system validates the EDI BOL structure
THEN:
• Each N1 segment is validated for required fields (entity ID, name), address information is validated for completeness, and contact information is validated for proper format
Business Justification: Dictates the expected operational logic and validation steps when cargo manifest processing request with potential multiple ccns.
Trigger Criteria:
Context: A cargo manifest processing request with potential multiple CCNs
Applied to: CCN Array from EDI BOL Available?
Action: The system checks for CCN array data from EDI BOL processing
Logic Flow:
IF A cargo manifest processing request with potential multiple CCNs
AND The system checks for CCN array data from EDI BOL processing
THEN:
• The system determines if CCN array contains valid data or is empty/low-values to decide processing path
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ccn array with multiple entries for processing.
Trigger Criteria:
Context: A CCN array with multiple entries for processing
Applied to: More CCNs to Process?
Action: The system iterates through CCN entries using index counter
Logic Flow:
IF A CCN array with multiple entries for processing
AND The system iterates through CCN entries using index counter
THEN:
• The system continues processing while CCN index is less than or equal to 99 and current CCN entry is not spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid ccn entry from the array requiring manifest creation.
Trigger Criteria:
Context: A valid CCN entry from the array requiring manifest creation
Applied to: Set Spawn Parameters
Action: The system prepares to spawn manifest creation process
Logic Flow:
IF A valid CCN entry from the array requiring manifest creation
AND The system prepares to spawn manifest creation process
THEN:
• The system sets waybill key from input, waybill date from shipment, current CCN from array, and action code to 'AM'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when spawn parameters are properly configured for a ccn entry.
Trigger Criteria:
Context: Spawn parameters are properly configured for a CCN entry
Applied to: Spawn GCT0111E for Manifest Creation
Action: The system invokes the GCT0111E manifest creation program
Logic Flow:
IF Spawn parameters are properly configured for a CCN entry
AND The system invokes the GCT0111E manifest creation program
THEN:
• The system calls GCT0111E with the spawn message containing waybill, date, CCN, and action code information
R-GCCCCADD-cbl-00288 (+9)File: GCCCCADD.cblBusiness Rule: Related Manifest Creation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bill of lading record exists with potential multiple ccns.
Trigger Criteria:
Context: An EDI Bill of Lading record exists with potential multiple CCNs
Applied to: Process EDI Bill of Lading Data
Action: The system processes the EDI BOL data through GCCCBOL program
Logic Flow:
IF An EDI Bill of Lading record exists with potential multiple CCNs
AND The system processes the EDI BOL data through GCCCBOL program
THEN:
• The system extracts CCN array data and makes it available for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol processing has completed and ccn array data is available.
Trigger Criteria:
Context: EDI BOL processing has completed and CCN array data is available
Applied to: Multiple CCNs Found in EDI BOL?
Action: The system checks if GCWCBOL-CCN-ARRAY-TBL contains data and is not spaces or low-values
Logic Flow:
IF EDI BOL processing has completed and CCN array data is available
AND The system checks if GCWCBOL-CCN-ARRAY-TBL contains data and is not spaces or low-values
THEN:
• The system identifies whether multiple CCNs need to be processed for manifest creation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when multiple ccns have been identified in the edi bol array.
Trigger Criteria:
Context: Multiple CCNs have been identified in the EDI BOL array
Applied to: Initialize CCN Processing Loop
Action: The system begins processing the CCN array
Logic Flow:
IF Multiple CCNs have been identified in the EDI BOL array
AND The system begins processing the CCN array
THEN:
• The system initializes CCN index counter starting from 1 and prepares for loop iteration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ccn processing loop is active with a valid index counter.
Trigger Criteria:
Context: CCN processing loop is active with a valid index counter
Applied to: Get Next CCN from Array
Action: The system accesses the CCN array at the current index position
Logic Flow:
IF CCN processing loop is active with a valid index counter
AND The system accesses the CCN array at the current index position
THEN:
• The system extracts the specific CCN value for manifest creation processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ccn processing loop is active with current index position.
Trigger Criteria:
Context: CCN processing loop is active with current index position
Applied to: More CCNs to Process?
Action: The system checks if current CCN index is within array bounds (≤ 99) and current CCN is not spaces
Logic Flow:
IF CCN processing loop is active with current index position
AND The system checks if current CCN index is within array bounds (≤ 99) and current CCN is not spaces
THEN:
• The system determines whether to continue processing more CCNs or complete the loop
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid ccn has been extracted from the array for processing.
Trigger Criteria:
Context: A valid CCN has been extracted from the array for processing
Applied to: Prepare Spawn Message for GCT0111E
Action: The system prepares spawn message data
Logic Flow:
IF A valid CCN has been extracted from the array for processing
AND The system prepares spawn message data
THEN:
• The system sets up waybill key, waybill date, extracted CCN, and action code 'AM' in the spawn message structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when spawn message structure is being prepared for gct0111e.
Trigger Criteria:
Context: Spawn message structure is being prepared for GCT0111E
Applied to: Set Waybill Key and Date
Action: The system sets waybill information in the spawn message
Logic Flow:
IF Spawn message structure is being prepared for GCT0111E
AND The system sets waybill information in the spawn message
THEN:
• The system moves original waybill key to SPAWN-WAYBILLand waybill date to SPAWN-WAYBILL-DATE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when specific ccn has been extracted from the ccn array.
Trigger Criteria:
Context: A specific CCN has been extracted from the CCN array
Applied to: Set Current CCN
Action: The system assigns CCN to the spawn message
Logic Flow:
IF A specific CCN has been extracted from the CCN array
AND The system assigns CCN to the spawn message
THEN:
• The system moves the current CCN value to SPAWN-CCN field in the message structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when spawn message is being prepared for related manifest creation.
Trigger Criteria:
Context: Spawn message is being prepared for related manifest creation
Applied to: Set Action Code to 'AM'
Action: The system sets the action code in the spawn message
Logic Flow:
IF Spawn message is being prepared for related manifest creation
AND The system sets the action code in the spawn message
THEN:
• The system assigns action code 'AM' to SPAWN-ACTION-CODE to indicate manifest creation action
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when spawn message has been fully prepared with waybill, ccn, and action code information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Spawn message has been fully prepared with waybill, CCN, and action code information
Applied to: Call GCT0111E Program
Action: The system invokes the Z700-SPAWN-GCT0111E procedure
Logic Flow:
IF Spawn message has been fully prepared with waybill, CCN, and action code information
AND The system invokes the Z700-SPAWN-GCT0111E procedure
THEN:
• The system executes GCT0111E program with the prepared message data for manifest creation
R-GCCCCADD-cbl-00298 (+15)File: GCCCCADD.cblBusiness Rule: Importer Data Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system is processing importer data and csa indicator is already on.
Trigger Criteria:
Context: The system is processing importer data and CSA indicator is already ON
Applied to: CSA Indicator ON?
Action: The importer processing logic is executed
Logic Flow:
IF The system is processing importer data and CSA indicator is already ON
AND The importer processing logic is executed
THEN:
• Skip AU table lookup and importer data processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is checking for au table data availability and csa indicator is off.
Trigger Criteria:
Context: The system is checking for AU table data availability and CSA indicator is OFF
Applied to: AU Table Data Available?
Action: AU table data is not available (GCSTBRTAU is spaces)
Logic Flow:
IF The system is checking for AU table data availability and CSA indicator is OFF
AND AU table data is not available (GCSTBRTAU is spaces)
THEN:
• Skip importer data processing and continue with next steps
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system has au table data available and csa indicator is off and importer data has already been found and set from previous processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system has AU table data available and CSA indicator is OFF and importer data has already been found and set from previous processing
Applied to: Importer Already Set?
Action: The system checks if importer is already set (WS-AU-IMP-FOUND is true)
Logic Flow:
IF The system has AU table data available and CSA indicator is OFF and importer data has already been found and set from previous processing
AND The system checks if importer is already set (WS-AU-IMP-FOUND is true)
THEN:
• Skip AU table lookup and importer data processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system needs to find importer data and csa indicator is off and au table data is available and importer is not already set.
Trigger Criteria:
Context: The system needs to find importer data and CSA indicator is OFF and AU table data is available and importer is not already set
Applied to: Lookup AU Table by Consignee CHOP and Commodity Code
Action: The system performs AU table lookup using consignee CHOP code and commodity code
Logic Flow:
IF The system needs to find importer data and CSA indicator is OFF and AU table data is available and importer is not already set
AND The system performs AU table lookup using consignee CHOP code and commodity code
THEN:
• Retrieve AU table record with matching consignee CHOP and commodity code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has performed au table lookup using consignee chop and commodity code.
Trigger Criteria:
Context: The system has performed AU table lookup using consignee CHOP and commodity code
Applied to: AU Record Found?
Action: AU table lookup returns no matching record (GCCTBIO-RETURN-FLAG not equal to SUCCESSFUL)
Logic Flow:
IF The system has performed AU table lookup using consignee CHOP and commodity code
AND AU table lookup returns no matching record (GCCTBIO-RETURN-FLAG not equal to SUCCESSFUL)
THEN:
• Skip importer data processing and continue with next steps
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid au table record has been found with matching consignee chop and commodity code.
Trigger Criteria:
Context: A valid AU table record has been found with matching consignee CHOP and commodity code
Applied to: Set Importer Name from AU Table
Action: The system processes the AU record data
Logic Flow:
IF A valid AU table record has been found with matching consignee CHOP and commodity code
AND The system processes the AU record data
THEN:
• Set importer name to the value from AU table importer field (GCSTBRT-AU-IMPORTER)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid au table record has been found and importer name has been set.
Trigger Criteria:
Context: A valid AU table record has been found and importer name has been set
Applied to: Set Business Number from AU Table
Action: The system processes the AU record business number data
Logic Flow:
IF A valid AU table record has been found and importer name has been set
AND The system processes the AU record business number data
THEN:
• Set business number to the value from AU table business number field (GCSTBRT-AU-BUSINESS-NBR)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data is being set from au table record and business number has been assigned.
Trigger Criteria:
Context: Importer data is being set from AU table record and business number has been assigned
Applied to: Set Business Number Qualifier to 'M5'
Action: The system sets the business number qualifier
Logic Flow:
IF Importer data is being set from AU table record and business number has been assigned
AND The system sets the business number qualifier
THEN:
• Set business number qualifier to 'M5' to indicate AU table source
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data has been successfully set from au table including name, business number, and qualifier.
Trigger Criteria:
Context: Importer data has been successfully set from AU table including name, business number, and qualifier
Applied to: Turn CSA Indicator ON
Action: The system finalizes the AU table importer setup
Logic Flow:
IF Importer data has been successfully set from AU table including name, business number, and qualifier
AND The system finalizes the AU table importer setup
THEN:
• Turn CSA indicator ON to indicate Canada-US agreement processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data has been successfully set from au table and csa indicator has been turned on. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Importer data has been successfully set from AU table and CSA indicator has been turned ON
Applied to: Mark AU Importer Found
Action: The system completes AU table importer processing
Logic Flow:
IF Importer data has been successfully set from AU table and CSA indicator has been turned ON
AND The system completes AU table importer processing
THEN:
• Set AU importer found flag (WS-AU-IMP-FOUND) to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when au table importer data has been processed and au importer found flag is set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: AU table importer data has been processed and AU importer found flag is set
Applied to: Check for EDI Importer Data
Action: The system checks for additional EDI importer data
Logic Flow:
IF AU table importer data has been processed and AU importer found flag is set
AND The system checks for additional EDI importer data
THEN:
• Verify if EDI importer data exists (WS-S55-IMP-FOUND) for further processing decisions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when au importer data has been processed and edi importer data also exists.
Trigger Criteria:
Context: AU importer data has been processed and EDI importer data also exists
Applied to: Business Number Qualifier BN or Blank?
Action: The system evaluates the EDI business number qualifier
Logic Flow:
IF AU importer data has been processed and EDI importer data also exists
AND The system evaluates the EDI business number qualifier
THEN:
• Check if business number qualifier is 'BN' or blank (spaces) to determine CSA indicator action
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when au importer data has been processed with csa indicator on and edi importer data exists with business number qualifier 'bn' or blank.
Trigger Criteria:
Context: AU importer data has been processed with CSA indicator ON and EDI importer data exists with business number qualifier 'BN' or blank
Applied to: Turn CSA Indicator OFF
Action: The system determines CSA indicator setting based on data source priority
Logic Flow:
IF AU importer data has been processed with CSA indicator ON and EDI importer data exists with business number qualifier 'BN' or blank
AND The system determines CSA indicator setting based on data source priority
THEN:
• Turn CSA indicator OFF to prioritize EDI importer data over AU table data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer data has been processed from au table and csa indicator decisions have been made.
Trigger Criteria:
Context: Importer data has been processed from AU table and CSA indicator decisions have been made
Applied to: Create Final Importer Record
Action: The system creates the final importer record
Logic Flow:
IF Importer data has been processed from AU table and CSA indicator decisions have been made
AND The system creates the final importer record
THEN:
• Build customs record 55 with importer entity type, name, business number, qualifier, and address information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when final importer record needs to be created and the system has reached the maximum of 24 n1 records.
Trigger Criteria:
Context: Final importer record needs to be created and the system has reached the maximum of 24 N1 records
Applied to: Replace Last N1 Record
Action: The system attempts to add the importer record
Logic Flow:
IF Final importer record needs to be created and the system has reached the maximum of 24 N1 records
AND The system attempts to add the importer record
THEN:
• Replace the last N1 record (sequence 24) with the new importer record using REPL function
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when final importer record needs to be created and the system has not reached the maximum of 24 n1 records.
Trigger Criteria:
Context: Final importer record needs to be created and the system has not reached the maximum of 24 N1 records
Applied to: Insert New N1 Record
Action: The system adds the importer record
Logic Flow:
IF Final importer record needs to be created and the system has not reached the maximum of 24 N1 records
AND The system adds the importer record
THEN:
• Insert new N1 record at the next available sequence position with importer information
Business Justification: Ensures correct system behavior and process compliance when shipment is being processed for customs.
Trigger Criteria:
Context: A shipment is being processed for customs
Applied to: CSA Indicator Already On?
Action: The CSA indicator is already set to ON
Logic Flow:
IF A shipment is being processed for customs
AND The CSA indicator is already set to ON
THEN:
• Skip CSA indicator management and proceed to transit/return validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment requires csa indicator evaluation.
Trigger Criteria:
Context: A shipment requires CSA indicator evaluation
Applied to: AU Table Data Available?
Action: The AU table lookup returns no importer data
Logic Flow:
IF A shipment requires CSA indicator evaluation
AND The AU table lookup returns no importer data
THEN:
• Skip CSA indicator activation and proceed to transit/return validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when au table contains importer data and csa indicator is not already on.
Trigger Criteria:
Context: AU table contains importer data and CSA indicator is not already on
Applied to: Importer Data Present in Input?
Action: Importer data is already present in the input
Logic Flow:
IF AU table contains importer data and CSA indicator is not already on
AND Importer data is already present in the input
THEN:
• Skip AU table importer retrieval and proceed to transit/return validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when csa indicator is off, au table has data, and no importer data exists in input.
Trigger Criteria:
Context: CSA indicator is off, AU table has data, and no importer data exists in input
Applied to: Retrieve AU Table Importer Data
Action: AU table lookup is performed for the consignee and commodity combination
Logic Flow:
IF CSA indicator is off, AU table has data, and no importer data exists in input
AND AU table lookup is performed for the consignee and commodity combination
THEN:
• Retrieve importer name and business number from AU table if found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer data has been successfully retrieved from au table.
Trigger Criteria:
Context: Importer data has been successfully retrieved from AU table
Applied to: Set CSA Indicator ON
Action: AU table contains valid importer information
Logic Flow:
IF Importer data has been successfully retrieved from AU table
AND AU table contains valid importer information
THEN:
• Set the CSA indicator to ON to enable CSA processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when csa indicator has been set to on.
Trigger Criteria:
Context: CSA indicator has been set to ON
Applied to: Set Importer Name from AU Table
Action: AU table importer data is available
Logic Flow:
IF CSA indicator has been set to ON
AND AU table importer data is available
THEN:
• Set the importer name field to the value from AU table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer name has been set from au table.
Trigger Criteria:
Context: Importer name has been set from AU table
Applied to: Set Business Number from AU Table
Action: AU table contains business number information
Logic Flow:
IF Importer name has been set from AU table
AND AU table contains business number information
THEN:
• Set the business number field to the value from AU table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when business number has been set from au table.
Trigger Criteria:
Context: Business number has been set from AU table
Applied to: Set Business Number Qualifier to M5
Action: AU table importer data is being processed
Logic Flow:
IF Business number has been set from AU table
AND AU table importer data is being processed
THEN:
• Set the business number qualifier to 'M5'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has been processed for csa indicator management.
Trigger Criteria:
Context: A shipment has been processed for CSA indicator management
Applied to: Reset CSA Indicator OFF
Action: The shipment is classified as transit (moving through Canada) or return (moving back to origin)
Logic Flow:
IF A shipment has been processed for CSA indicator management
AND The shipment is classified as transit (moving through Canada) or return (moving back to origin)
THEN:
• Set the CSA indicator to OFF to disable CSA processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when csa indicator has been reset to off for transit or return shipment.
Trigger Criteria:
Context: CSA indicator has been reset to OFF for transit or return shipment
Applied to: Clear Importer Data
Action: The shipment does not require importer information
Logic Flow:
IF CSA indicator has been reset to OFF for transit or return shipment
AND The shipment does not require importer information
THEN:
• Clear all importer data fields including name, business number, and business number qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment is not transit or return type.
Trigger Criteria:
Context: Shipment is not transit or return type
Applied to: Reset CSA Indicator OFF for Duplicate Sources
Action: AU table importer data is found AND EDI BOL importer data exists with business number qualifier (BN or spaces)
Logic Flow:
IF Shipment is not transit or return type
AND AU table importer data is found AND EDI BOL importer data exists with business number qualifier (BN or spaces)
THEN:
• Set CSA indicator to OFF to resolve data source conflict
R-GCCCCADD-cbl-00325 (+23)File: GCCCCADD.cblBusiness Rule: Description Capture from Related CCN
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when request to capture description from a related ccn is initiated.
Trigger Criteria:
Context: A request to capture description from a related CCN is initiated
Applied to: Save Current Description Data
Action: The system begins the description capture process
Logic Flow:
IF A request to capture description from a related CCN is initiated
AND The system begins the description capture process
THEN:
• The current manifest data (GCSCCRT), cargo segment data (GCSCCS52), and all cargo description array elements (46 elements) are saved to backup variables for potential restoration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when source ccn is specified in the description-from-ccn field.
Trigger Criteria:
Context: A source CCN is specified in the description-from-CCN field
Applied to: Set CCN Key to Source CCN
Action: The system prepares to retrieve description data
Logic Flow:
IF A source CCN is specified in the description-from-CCN field
AND The system prepares to retrieve description data
THEN:
• The CCN key is set to the source CCN value and the accept status is set to 'GE' for retrieval operations
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid source ccn is set and the system is configured for retrieval.
Trigger Criteria:
Context: A valid source CCN is set and the system is configured for retrieval
Applied to: Retrieve Description from Source CCN
Action: The description retrieval process is executed
Logic Flow:
IF A valid source CCN is set and the system is configured for retrieval
AND The description retrieval process is executed
THEN:
• The GCCCCIO2 program is called to fetch all segments (GCSCCS00, GCSCCRT, GCSCCS52, GCSCCS53, GCSCCS54, GCSCCS55, GCSCCS56) from the source CCN
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when attempt to retrieve description data from source ccn has been made.
Trigger Criteria:
Context: An attempt to retrieve description data from source CCN has been made
Applied to: Description Retrieved Successfully?
Action: The retrieval operation completes
Logic Flow:
IF An attempt to retrieve description data from source CCN has been made
AND The retrieval operation completes
THEN:
• If the error number is spaces (no error), the retrieval is considered successful and processing continues; otherwise, the original data is restored
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when attempt to retrieve description data from source ccn has been made.
Trigger Criteria:
Context: An attempt to retrieve description data from source CCN has been made
Applied to: Description Retrieved Successfully?
Action: The system evaluates the retrieval operation result
Logic Flow:
IF An attempt to retrieve description data from source CCN has been made
AND The system evaluates the retrieval operation result
THEN:
• If the error number is spaces then description retrieval is successful, otherwise it failed
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description data has been successfully retrieved from the source ccn.
Trigger Criteria:
Context: Description data has been successfully retrieved from the source CCN
Applied to: Extract Description Components
Action: The system processes the retrieved data
Logic Flow:
IF Description data has been successfully retrieved from the source CCN
AND The system processes the retrieved data
THEN:
• The lading description is extracted from GCCC-LADING-DESCRIPTIONand all 46 cargo data elements are extracted from the cargo data array into the working description structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description data has been successfully retrieved from the source ccn.
Trigger Criteria:
Context: Description data has been successfully retrieved from the source CCN
Applied to: Extract Description Components
Action: The system processes the retrieved description data
Logic Flow:
IF Description data has been successfully retrieved from the source CCN
AND The system processes the retrieved description data
THEN:
• The system moves the first cargo description segment to GCSCCS53 and the first description array element to GCSCCS55, then extracts lading description and all cargo data elements from the description arrays into working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when action code is 'us' and description data has been extracted from source ccn.
Trigger Criteria:
Context: The action code is 'US' and description data has been extracted from source CCN
Applied to: Build Transit Description for US Action
Action: The system builds the enhanced description
Logic Flow:
IF The action code is 'US' and description data has been extracted from source CCN
AND The system builds the enhanced description
THEN:
• The description is formatted as: source CCN + ' MOVING IN TRANSIT THROUGH CANADA ' + original description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when action code is 'rt' and description data has been extracted from source ccn.
Trigger Criteria:
Context: The action code is 'RT' and description data has been extracted from source CCN
Applied to: Build Transit Description for RT Action
Action: The system builds the enhanced description
Logic Flow:
IF The action code is 'RT' and description data has been extracted from source CCN
AND The system builds the enhanced description
THEN:
• The description is formatted as: source CCN + ' MOVING IN TRANSIT THROUGH US ' + original description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when action code is neither 'us' nor 'rt' and description data has been extracted.
Trigger Criteria:
Context: The action code is neither 'US' nor 'RT' and description data has been extracted
Applied to: Use Original Description
Action: The system processes the description
Logic Flow:
IF The action code is neither 'US' nor 'RT' and description data has been extracted
AND The system processes the description
THEN:
• The original retrieved description is used without any transit-specific formatting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when enhanced description has been built (either transit-formatted or original).
Trigger Criteria:
Context: An enhanced description has been built (either transit-formatted or original)
Applied to: Compress Enhanced Description
Action: The description compression process is executed
Logic Flow:
IF An enhanced description has been built (either transit-formatted or original)
AND The description compression process is executed
THEN:
• The GCCCOMP program is called with source description (45000 length) and target description (22500 length) to compress the content appropriately
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description has been successfully compressed and processed.
Trigger Criteria:
Context: The description has been successfully compressed and processed
Applied to: Update Current Description Data
Action: The system updates the current description data
Logic Flow:
IF The description has been successfully compressed and processed
AND The system updates the current description data
THEN:
• The compressed description is moved to GCCC-LADING-DESCRIPTIONand all 46 cargo data elements are moved to the cargo data array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when description processing (successful or failed) has completed.
Trigger Criteria:
Context: Description processing (successful or failed) has completed
Applied to: Restore Original CCN Context
Action: The system finalizes the description capture process
Logic Flow:
IF Description processing (successful or failed) has completed
AND The system finalizes the description capture process
THEN:
• The original GCSCCRT and GCSCCS52 data is restored from the saved backup, and the cargo data array is cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description retrieval from source ccn has failed (error number is not spaces).
Trigger Criteria:
Context: Description retrieval from source CCN has failed (error number is not spaces)
Applied to: Restore Original Data - No Changes
Action: The system handles the retrieval failure
Logic Flow:
IF Description retrieval from source CCN has failed (error number is not spaces)
AND The system handles the retrieval failure
THEN:
• All original data (GCSCCRT, GCSCCS52, and all 46 cargo data array elements) is restored from backup variables without any changes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cargo manifest with existing description data needs to be processed for description capture from related ccn.
Trigger Criteria:
Context: A cargo manifest with existing description data needs to be processed for description capture from related CCN
Applied to: Save Current Description Data
Action: The description capture process begins
Logic Flow:
IF A cargo manifest with existing description data needs to be processed for description capture from related CCN
AND The description capture process begins
THEN:
• The system saves the current cargo manifest record, cargo description segments, and all description array data to temporary storage for potential restoration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description from ccn parameter is provided for description capture.
Trigger Criteria:
Context: A description from CCN parameter is provided for description capture
Applied to: Set CCN Key to Source CCN
Action: The system prepares to retrieve description data from the source CCN
Logic Flow:
IF A description from CCN parameter is provided for description capture
AND The system prepares to retrieve description data from the source CCN
THEN:
• The system sets the CCN key to the description from CCN parameter value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid source ccn key is set for description retrieval.
Trigger Criteria:
Context: A valid source CCN key is set for description retrieval
Applied to: Retrieve Description from Source CCN
Action: The system attempts to retrieve description data from the source CCN
Logic Flow:
IF A valid source CCN key is set for description retrieval
AND The system attempts to retrieve description data from the source CCN
THEN:
• The system calls GCCCCIO2 program with fetch all segments flag to retrieve cargo description records including GCSCCRT, GCSCCS52, GCSCCS53, GCSCCS54, GCSCCS55, and GCSCCS56 segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description data has been extracted from the source ccn and an action code is specified.
Trigger Criteria:
Context: Description data has been extracted from the source CCN and an action code is specified
Applied to: Action Code Check
Action: The system evaluates the action code for description formatting
Logic Flow:
IF Description data has been extracted from the source CCN and an action code is specified
AND The system evaluates the action code for description formatting
THEN:
• If action code is 'US' then format for US transit, if action code is 'RT' then format for return transit, otherwise use original description without modification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when action code is 'us' and description data is available from source ccn.
Trigger Criteria:
Context: Action code is 'US' and description data is available from source CCN
Applied to: Build US Transit Description
Action: The system formats the description for US transit
Logic Flow:
IF Action code is 'US' and description data is available from source CCN
AND The system formats the description for US transit
THEN:
• The system concatenates the description from CCN parameter, the text ' MOVING IN TRANSIT THROUGH CANADA ', and the extracted description into the description work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when action code is 'rt' and description data is available from source ccn.
Trigger Criteria:
Context: Action code is 'RT' and description data is available from source CCN
Applied to: Build RT Transit Description
Action: The system formats the description for return transit
Logic Flow:
IF Action code is 'RT' and description data is available from source CCN
AND The system formats the description for return transit
THEN:
• The system concatenates the description from CCN parameter, the text ' MOVING IN TRANSIT THROUGH US ', and the extracted description into the description work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when action code is neither 'us' nor 'rt' and description data is available from source ccn.
Trigger Criteria:
Context: Action code is neither 'US' nor 'RT' and description data is available from source CCN
Applied to: Use Original Description
Action: The system processes the description for formatting
Logic Flow:
IF Action code is neither 'US' nor 'RT' and description data is available from source CCN
AND The system processes the description for formatting
THEN:
• The system moves the extracted description to the description work area without any modifications
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when formatted description is ready for compression with description length set to 45000 and compressed length set to 22500.
Trigger Criteria:
Context: A formatted description is ready for compression with description length set to 45000 and compressed length set to 22500
Applied to: Compress Enhanced Description
Action: The system compresses the description data
Logic Flow:
IF A formatted description is ready for compression with description length set to 45000 and compressed length set to 22500
AND The system compresses the description data
THEN:
• The system calls GCCCOMP program to compress the description work area and updates the lading description and cargo data arrays with the compressed results
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description data has been successfully enhanced and compressed.
Trigger Criteria:
Context: Description data has been successfully enhanced and compressed
Applied to: Update Current Description Data
Action: The system updates the current description data
Logic Flow:
IF Description data has been successfully enhanced and compressed
AND The system updates the current description data
THEN:
• The system moves the compressed description to the lading description field and updates all cargo data array elements with the compressed description segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description retrieval from source ccn has failed and original data was previously saved.
Trigger Criteria:
Context: Description retrieval from source CCN has failed and original data was previously saved
Applied to: Restore Original Data on Error
Action: The system handles the retrieval failure
Logic Flow:
IF Description retrieval from source CCN has failed and original data was previously saved
AND The system handles the retrieval failure
THEN:
• The system restores the saved cargo manifest record, cargo description segments, and clears all description array elements, then restores the saved description array data
Business Justification: Dictates the expected operational logic and validation steps when cargo manifest is being processed for transit description enhancement.
Trigger Criteria:
Context: A cargo manifest is being processed for transit description enhancement
Applied to: Save Current Description Data
Action: The system begins the description enhancement process
Logic Flow:
IF A cargo manifest is being processed for transit description enhancement
AND The system begins the description enhancement process
THEN:
• The current manifest description data and cargo data array are saved to working storage for potential restoration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo manifest is being processed for transit description enhancement.
Trigger Criteria:
Context: A cargo manifest is being processed for transit description enhancement
Applied to: Save Current Description Data
Action: The system begins the transit description enhancement process
Logic Flow:
IF A cargo manifest is being processed for transit description enhancement
AND The system begins the transit description enhancement process
THEN:
• The current manifest data (GCSCCRT), commodity segment data (GCSCCS52), and all cargo description segments (GCSCCS53 array) are saved to working storage variables for potential restoration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when related ccn is specified for description enhancement.
Trigger Criteria:
Context: A related CCN is specified for description enhancement
Applied to: Retrieve Description from Related CCN
Action: The system retrieves description data from the related CCN
Logic Flow:
IF A related CCN is specified for description enhancement
AND The system retrieves description data from the related CCN
THEN:
• The system fetches all description segments including main description and cargo data array from the specified CCN
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when related ccn is specified for description enhancement.
Trigger Criteria:
Context: A related CCN is specified for description enhancement
Applied to: Retrieve Description from Related CCN
Action: The system needs to retrieve description data from the related CCN
Logic Flow:
IF A related CCN is specified for description enhancement
AND The system needs to retrieve description data from the related CCN
THEN:
• The system calls GCCCCIO2 to fetch all segments (GCSCCS00, GCSCCRT, GCSCCS52, GCSCCS53, GCSCCS54, GCSCCS55, GCSCCS56) from the specified CCN using GU function with fetch-all option
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when attempt has been made to retrieve description from a related ccn.
Trigger Criteria:
Context: An attempt has been made to retrieve description from a related CCN
Applied to: Description Retrieved Successfully?
Action: The system checks the retrieval operation result
Logic Flow:
IF An attempt has been made to retrieve description from a related CCN
AND The system checks the retrieval operation result
THEN:
• If retrieval was successful, proceed with description enhancement, otherwise restore original data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description data has been successfully retrieved from a related ccn.
Trigger Criteria:
Context: Description data has been successfully retrieved from a related CCN
Applied to: Extract Description Components
Action: The system processes the retrieved description data
Logic Flow:
IF Description data has been successfully retrieved from a related CCN
AND The system processes the retrieved description data
THEN:
• The main description and cargo data array components are extracted and prepared for enhancement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description data has been successfully retrieved from a related ccn. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description data has been successfully retrieved from a related CCN
Applied to: Extract Commodity Description
Action: The system processes the retrieved data
Logic Flow:
IF Description data has been successfully retrieved from a related CCN
AND The system processes the retrieved data
THEN:
• The lading description is moved from GCCC-LADING-DESCRIPTION to the description work area, and all 46 cargo data segments are moved from WS-GCSCCS53-CARGO-DATA array to the description database work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description components have been extracted for enhancement.
Trigger Criteria:
Context: Description components have been extracted for enhancement
Applied to: Action Code Check
Action: The system evaluates the shipment action code
Logic Flow:
IF Description components have been extracted for enhancement
AND The system evaluates the shipment action code
THEN:
• Route to US transit description for 'US' action, RT transit description for 'RT' action, or use original description for other actions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when action code is 'us' and description components are available.
Trigger Criteria:
Context: The action code is 'US' and description components are available
Applied to: Build US Transit Description
Action: The system builds the enhanced description
Logic Flow:
IF The action code is 'US' and description components are available
AND The system builds the enhanced description
THEN:
• The description is formatted as: '[CCN] MOVING IN TRANSIT THROUGH CANADA [Original Description]'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when action code is 'rt' and description components are available.
Trigger Criteria:
Context: The action code is 'RT' and description components are available
Applied to: Build RT Transit Description
Action: The system builds the enhanced description
Logic Flow:
IF The action code is 'RT' and description components are available
AND The system builds the enhanced description
THEN:
• The description is formatted as: '[CCN] MOVING IN TRANSIT THROUGH US [Original Description]'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when action code is neither 'us' nor 'rt'.
Trigger Criteria:
Context: The action code is neither 'US' nor 'RT'
Applied to: Use Original Description
Action: The system processes the description
Logic Flow:
IF The action code is neither 'US' nor 'RT'
AND The system processes the description
THEN:
• The original retrieved description is used without transit-specific enhancement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when action code is neither 'us' nor 'rt'.
Trigger Criteria:
Context: The action code is neither 'US' nor 'RT'
Applied to: Use Original Description
Action: The system processes the description enhancement
Logic Flow:
IF The action code is neither 'US' nor 'RT'
AND The system processes the description enhancement
THEN:
• The original commodity description is used without modification in the enhanced description work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when enhanced description has been built.
Trigger Criteria:
Context: An enhanced description has been built
Applied to: Compress Enhanced Description
Action: The system processes the description for storage
Logic Flow:
IF An enhanced description has been built
AND The system processes the description for storage
THEN:
• The description is compressed using the GCCCOMP utility to fit within the 45000/22500 character limits
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when enhanced description has been compressed successfully.
Trigger Criteria:
Context: The enhanced description has been compressed successfully
Applied to: Update Cargo Description Fields
Action: The system updates the cargo manifest
Logic Flow:
IF The enhanced description has been compressed successfully
AND The system updates the cargo manifest
THEN:
• The main lading description and cargo data array are updated with the enhanced description components
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when description enhancement has failed due to retrieval error or processing failure.
Trigger Criteria:
Context: Description enhancement has failed due to retrieval error or processing failure
Applied to: Restore Original Data if Error
Action: The system handles the enhancement failure
Logic Flow:
IF Description enhancement has failed due to retrieval error or processing failure
AND The system handles the enhancement failure
THEN:
• The original manifest description and cargo data array are restored from the saved working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when attempt has been made to retrieve description data from a related ccn.
Trigger Criteria:
Context: An attempt has been made to retrieve description data from a related CCN
Applied to: Description Retrieved Successfully?
Action: The system checks the result of the retrieval operation
Logic Flow:
IF An attempt has been made to retrieve description data from a related CCN
AND The system checks the result of the retrieval operation
THEN:
• IfGCWCCIO2-ERROR-NUM equals SPACES, the retrieval is considered successful and processing continues; otherwise, the original data is restored
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when action code is 'us' and commodity description data is available.
Trigger Criteria:
Context: The action code is 'US' and commodity description data is available
Applied to: Build US Transit Description
Action: The system builds the enhanced description for US transit
Logic Flow:
IF The action code is 'US' and commodity description data is available
AND The system builds the enhanced description for US transit
THEN:
• The description is constructed by concatenating the CCN from GCWCCADD-DESC-FROM-CCN, the text ' MOVING IN TRANSIT THROUGH CANADA ', and the original commodity description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when action code is 'rt' and commodity description data is available.
Trigger Criteria:
Context: The action code is 'RT' and commodity description data is available
Applied to: Build Return Transit Description
Action: The system builds the enhanced description for return transit
Logic Flow:
IF The action code is 'RT' and commodity description data is available
AND The system builds the enhanced description for return transit
THEN:
• The description is constructed by concatenating the CCN from GCWCCADD-DESC-FROM-CCN, the text ' MOVING IN TRANSIT THROUGH US ', and the original commodity description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when enhanced description has been built for the shipment.
Trigger Criteria:
Context: An enhanced description has been built for the shipment
Applied to: Compress Enhanced Description
Action: The system needs to compress the description to fit field constraints
Logic Flow:
IF An enhanced description has been built for the shipment
AND The system needs to compress the description to fit field constraints
THEN:
• The system calls GCCCOMP with the enhanced description (45000 character limit) and compresses it to fit the target length (22500 characters) for database storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when enhanced description has been successfully compressed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The enhanced description has been successfully compressed
Applied to: Update Cargo Description Fields
Action: The system updates the cargo manifest fields
Logic Flow:
IF The enhanced description has been successfully compressed
AND The system updates the cargo manifest fields
THEN:
• The compressed description is moved from the work area to GCCC-LADING-DESCRIPTION, and all 46 cargo data segments are moved from the description work area to WS-GCSCCS53-CARGO-DATA array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when description enhancement process has failed (gcwccio2-error-num is not spaces). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The description enhancement process has failed (GCWCCIO2-ERROR-NUM is not SPACES)
Applied to: Restore Original Data if Error
Action: The system needs to handle the enhancement failure
Logic Flow:
IF The description enhancement process has failed (GCWCCIO2-ERROR-NUM is not SPACES)
AND The system needs to handle the enhancement failure
THEN:
• The original manifest data is restored from working storage: WS-SAVE-GCSCCRT to GCSCCRT, WS-SAVE-GCSCCS52 to GCSCCS52, and all 46 saved cargo description segments are restored to WS-GCSCCS53-DATA array
R-GCCCCADD-cbl-00348 (+2)File: GCCCCADD.cblBusiness Rule: Country Code Determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when origin station state code exists.
Trigger Criteria:
Context: An origin station state code exists
Applied to: Search State-Country Table for Origin Station State Code
Action: The system searches the state-country lookup table for the origin station state code
Logic Flow:
IF An origin station state code exists
AND The system searches the state-country lookup table for the origin station state code
THEN:
• If the state code is found in the table, set the origin country code to the corresponding country entry from the table, otherwise set the origin country code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when destination station state code exists.
Trigger Criteria:
Context: A destination station state code exists
Applied to: Search State-Country Table for Destination Station State Code
Action: The system searches the state-country lookup table for the destination station state code
Logic Flow:
IF A destination station state code exists
AND The system searches the state-country lookup table for the destination station state code
THEN:
• If the state code is found in the table, set the destination country code to the corresponding country entry from the table, otherwise set the destination country code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when notify party name exists and consignee country code has been determined.
Trigger Criteria:
Context: A notify party name exists and consignee country code has been determined
Applied to: Set Notify Party Country Code Same as Consignee Country Code
Action: The system processes notify party information
Logic Flow:
IF A notify party name exists and consignee country code has been determined
AND The system processes notify party information
THEN:
• Set the notify party country code to the same value as the consignee country code
R-GCCCCADD-cbl-00351File: GCCCCADD.cblBusiness Rule: Notify Party Country Setting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has consignee information with a country code and notify party name field.
Trigger Criteria:
Context: A shipment has consignee information with a country code and notify party name field
Applied to: Set Notify Party Country Code = Consignee Country Code
Action: The notify party name is not blank or spaces
Logic Flow:
IF A shipment has consignee information with a country code and notify party name field
AND The notify party name is not blank or spaces
THEN:
• The notify party country code is set to the same value as the consignee country code
R-GCCCCADD-cbl-00352 (+3)File: GCCCCADD.cblBusiness Rule: Application Type Determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when origin station state code exists.
Trigger Criteria:
Context: An origin station state code exists
Applied to: Lookup Origin Country from State-Country Table
Action: The system searches the state-country table for a matching state entry
Logic Flow:
IF An origin station state code exists
AND The system searches the state-country table for a matching state entry
THEN:
• If a match is found, the corresponding country code is assigned to the origin country field, otherwise the origin country remains empty
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when destination station state code exists.
Trigger Criteria:
Context: A destination station state code exists
Applied to: Lookup Destination Country from State-Country Table
Action: The system searches the state-country table for a matching state entry
Logic Flow:
IF A destination station state code exists
AND The system searches the state-country table for a matching state entry
THEN:
• If a match is found, the corresponding country code is assigned to the destination country field, otherwise the destination country remains empty
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when origin and destination country codes have been determined.
Trigger Criteria:
Context: Origin and destination country codes have been determined
Applied to: Search Application Type Table with Country Combination
Action: The system searches the application type table using the country code combination
Logic Flow:
IF Origin and destination country codes have been determined
AND The system searches the application type table using the country code combination
THEN:
• If a matching combination is found, the corresponding application type and in-transit status are assigned, otherwise both fields are set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when in-transit status is set to ocean and the ccn key starts with '6105e'.
Trigger Criteria:
Context: The in-transit status is set to ocean and the CCN key starts with '6105E'
Applied to: Set Application Type and In-Transit Status from Table
Action: The application type and in-transit status are being finalized
Logic Flow:
IF The in-transit status is set to ocean and the CCN key starts with '6105E'
AND The application type and in-transit status are being finalized
THEN:
• The broker name is automatically set to 'NOT-REQ' to indicate no broker is required
R-GCCCCADD-cbl-00356 (+21)File: GCCCCADD.cblBusiness Rule: Broker Information Retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment has shipper chop code, consignee chop code, origin station number, destination road number, and commodity stcc code.
Trigger Criteria:
Context: A shipment has shipper CHOP code, consignee CHOP code, origin station number, destination road number, and commodity STCC code
Applied to: Use Shipper CHOP, Consignee CHOP, Origin Station, Destination Road, Commodity Code
Action: The system performs the primary broker search in the crossing table
Logic Flow:
IF A shipment has shipper CHOP code, consignee CHOP code, origin station number, destination road number, and commodity STCC code
AND The system performs the primary broker search in the crossing table
THEN:
• The system uses shipper CHOP, consignee CHOP, origin station, destination road formatted as 'ROAD' + road number, and commodity code as search criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when primary broker search returned no results and shipment has consignee chop, destination road, and commodity code.
Trigger Criteria:
Context: The primary broker search returned no results and shipment has consignee CHOP, destination road, and commodity code
Applied to: Use Wildcard for Shipper CHOP and Origin Station
Action: The system performs the secondary broker search
Logic Flow:
IF The primary broker search returned no results and shipment has consignee CHOP, destination road, and commodity code
AND The system performs the secondary broker search
THEN:
• The system uses wildcard values for shipper CHOP and origin station while maintaining consignee CHOP, destination road, and commodity code as search criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when both primary and secondary broker searches returned no results.
Trigger Criteria:
Context: Both primary and secondary broker searches returned no results
Applied to: Use Wildcard for Commodity Code
Action: The system performs the tertiary broker search
Logic Flow:
IF Both primary and secondary broker searches returned no results
AND The system performs the tertiary broker search
THEN:
• The system uses wildcard values for shipper CHOP, origin station, and commodity code while maintaining consignee CHOP and destination road as search criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when both primary and secondary broker searches returned no results.
Trigger Criteria:
Context: Both primary and secondary broker searches returned no results
Applied to: Use Wildcard for Commodity Code
Action: The system performs the final broker search
Logic Flow:
IF Both primary and secondary broker searches returned no results
AND The system performs the final broker search
THEN:
• The system uses wildcard values for shipper CHOP, origin station, and commodity code while maintaining consignee CHOP and destination road criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when broker data has been found in the crossing table.
Trigger Criteria:
Context: Broker data has been found in the crossing table
Applied to: Check Override Flag
Action: The system evaluates the override flag in the broker data
Logic Flow:
IF Broker data has been found in the crossing table
AND The system evaluates the override flag in the broker data
THEN:
• If override flag equals 'Y', the system will apply the broker information regardless of existing broker status
• The system determines whether to apply broker data unconditionally or check existing broker status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when broker data has been found and override flag is not 'y'.
Trigger Criteria:
Context: Broker data has been found and override flag is not 'Y'
Applied to: Check Current Broker Status
Action: The system evaluates the current broker name
Logic Flow:
IF Broker data has been found and override flag is not 'Y'
AND The system evaluates the current broker name
THEN:
• If current broker name is spaces, 'UNKNOWN', or 'NOT-REQ', the system will apply the new broker information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when broker data has been found and either override flag is 'y' or current broker status allows replacement.
Trigger Criteria:
Context: Broker data has been found and either override flag is 'Y' or current broker status allows replacement
Applied to: Move Broker Name to Output
Action: The system processes broker information assignment
Logic Flow:
IF Broker data has been found and either override flag is 'Y' or current broker status allows replacement
AND The system processes broker information assignment
THEN:
• The system moves the broker name from the crossing table to the customs cargo record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when broker information has been successfully applied to the customs record.
Trigger Criteria:
Context: Broker information has been successfully applied to the customs record
Applied to: Check Manifest-To Station Override
Action: The system evaluates the Canadian manifest-to station field in the broker data
Logic Flow:
IF Broker information has been successfully applied to the customs record
AND The system evaluates the Canadian manifest-to station field in the broker data
THEN:
• If the Canadian manifest-to station field is not spaces, the system will process the station override
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when new manifest-to station has been specified in the broker data.
Trigger Criteria:
Context: A new manifest-to station has been specified in the broker data
Applied to: Validate New Manifest-To Station
Action: The system validates the station in the MC table
Logic Flow:
IF A new manifest-to station has been specified in the broker data
AND The system validates the station in the MC table
THEN:
• The system performs a lookup using 'MC' table ID and the specified station name as the sequence ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest-to station lookup in mc table was successful.
Trigger Criteria:
Context: The manifest-to station lookup in MC table was successful
Applied to: Lookup Station in MC Table
Action: The system evaluates the Canadian customs code for the station
Logic Flow:
IF The manifest-to station lookup in MC table was successful
AND The system evaluates the Canadian customs code for the station
THEN:
• If the Canadian customs code equals '00000', the system sets error flag 2 and records the station name for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest-to station validation was successful and canadian customs code is not '00000'. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The manifest-to station validation was successful and Canadian customs code is not '00000'
Applied to: Update Manifest-To Station Code
Action: The system updates the manifest-to station information
Logic Flow:
IF The manifest-to station validation was successful and Canadian customs code is not '00000'
AND The system updates the manifest-to station information
THEN:
• The system moves the Canadian customs code to manifest-to station code, station number to destination station number fields, and call letters to batch print call letters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest-to station lookup in mc table was not successful.
Trigger Criteria:
Context: The manifest-to station lookup in MC table was not successful
Applied to: Set Station Validation Error
Action: The system processes the lookup failure
Logic Flow:
IF The manifest-to station lookup in MC table was not successful
AND The system processes the lookup failure
THEN:
• The system sets error flag 3 and records the station name for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with shipper chop, consignee chop, origin station number, destination road number, and commodity code.
Trigger Criteria:
Context: A shipment with shipper CHOP, consignee CHOP, origin station number, destination road number, and commodity code
Applied to: Use Shipper CHOP, Consignee CHOP, Origin Station, Destination Road, Commodity Code
Action: The system performs the primary broker search in the crossing table
Logic Flow:
IF A shipment with shipper CHOP, consignee CHOP, origin station number, destination road number, and commodity code
AND The system performs the primary broker search in the crossing table
THEN:
• The system uses all five criteria (shipper CHOP, consignee CHOP, origin station, destination road with 'ROAD' prefix, commodity code) to find matching broker data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when primary broker search returned no results.
Trigger Criteria:
Context: The primary broker search returned no results
Applied to: Use Wildcard for Shipper CHOP and Origin Station
Action: The system performs the secondary broker search
Logic Flow:
IF The primary broker search returned no results
AND The system performs the secondary broker search
THEN:
• The system uses wildcard values for shipper CHOP and origin station while maintaining consignee CHOP, destination road, and commodity code criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when broker data is found and override flag equals 'y'.
Trigger Criteria:
Context: Broker data is found and override flag equals 'Y'
Applied to: Apply Broker Data Override
Action: The system processes the broker override
Logic Flow:
IF Broker data is found and override flag equals 'Y'
AND The system processes the broker override
THEN:
• The system applies the broker name and manifest-to station information from crossing table unconditionally
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when broker data is found and override flag is not 'y'.
Trigger Criteria:
Context: Broker data is found and override flag is not 'Y'
Applied to: Apply Broker Data
Action: The existing broker name is spaces, 'UNKNOWN', or 'NOT-REQ'
Logic Flow:
IF Broker data is found and override flag is not 'Y'
AND The existing broker name is spaces, 'UNKNOWN', or 'NOT-REQ'
THEN:
• The system applies the broker name and manifest-to station information from crossing table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when broker data is found, override flag is not 'y', and existing broker name is not empty, unknown, or not-required.
Trigger Criteria:
Context: Broker data is found, override flag is not 'Y', and existing broker name is not empty, unknown, or not-required
Applied to: Keep Existing Broker
Action: The system evaluates broker application conditions
Logic Flow:
IF Broker data is found, override flag is not 'Y', and existing broker name is not empty, unknown, or not-required
AND The system evaluates broker application conditions
THEN:
• The system retains the existing broker information without applying crossing table data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when broker data has been applied and contains a non-empty canadian manifest-to station value. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Broker data has been applied and contains a non-empty Canadian manifest-to station value
Applied to: Update Manifest-To Station if Provided
Action: The system processes the manifest-to station update
Logic Flow:
IF Broker data has been applied and contains a non-empty Canadian manifest-to station value
AND The system processes the manifest-to station update
THEN:
• The system updates the manifest-to station name, Canadian customs code, station number, and call letters from the MC table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest-to station has been specified by broker data.
Trigger Criteria:
Context: A manifest-to station has been specified by broker data
Applied to: Validate Canadian Customs Code
Action: The system looks up the station in the MC table and retrieves the Canadian customs code
Logic Flow:
IF A manifest-to station has been specified by broker data
AND The system looks up the station in the MC table and retrieves the Canadian customs code
THEN:
• The system validates that the Canadian customs code is not '00000' (invalid default)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when canadian customs code for broker manifest station is valid (not '00000'). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The Canadian customs code for broker manifest station is valid (not '00000')
Applied to: Set Manifest-To Station Information
Action: The system processes the manifest station update
Logic Flow:
IF The Canadian customs code for broker manifest station is valid (not '00000')
AND The system processes the manifest station update
THEN:
• The system updates manifest-to station code, destination station number, and batch print call letters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when canadian customs code for broker manifest station equals '00000'.
Trigger Criteria:
Context: The Canadian customs code for broker manifest station equals '00000'
Applied to: Generate Error for Invalid Customs Code
Action: The system validates the customs code
Logic Flow:
IF The Canadian customs code for broker manifest station equals '00000'
AND The system validates the customs code
THEN:
• The system generates an error message indicating invalid manifest port Canadian customs code
R-GCCCCADD-cbl-00367 (+16)File: GCCCCADD.cblBusiness Rule: Broker Data Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when crossing table lookup has been performed and broker data is available.
Trigger Criteria:
Context: A crossing table lookup has been performed and broker data is available
Applied to: Move Broker Name from Crossing Table
Action: The system processes broker information from the crossing table
Logic Flow:
IF A crossing table lookup has been performed and broker data is available
AND The system processes broker information from the crossing table
THEN:
• The broker name from the crossing table is assigned to the customs manifest broker name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when broker data has been retrieved from the crossing table.
Trigger Criteria:
Context: Broker data has been retrieved from the crossing table
Applied to: Canadian Manifest-To Station Available?
Action: The system checks if a Canadian manifest-to station is specified in the crossing table data
Logic Flow:
IF Broker data has been retrieved from the crossing table
AND The system checks if a Canadian manifest-to station is specified in the crossing table data
THEN:
• If the Canadian manifest-to station field is not spaces, proceed with manifest-to station processing, otherwise skip the processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when broker data has been retrieved from the crossing table.
Trigger Criteria:
Context: Broker data has been retrieved from the crossing table
Applied to: Manifest-To Station from Crossing Table Available?
Action: The system checks for manifest-to station override information
Logic Flow:
IF Broker data has been retrieved from the crossing table
AND The system checks for manifest-to station override information
THEN:
• If the Canadian manifest-to field is not spaces, proceed with manifest-to station processing, otherwise skip manifest-to station updates
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when canadian manifest-to station is specified in the crossing table.
Trigger Criteria:
Context: A Canadian manifest-to station is specified in the crossing table
Applied to: Reset Error Flags
Action: The system begins processing the broker-specified manifest-to station
Logic Flow:
IF A Canadian manifest-to station is specified in the crossing table
AND The system begins processing the broker-specified manifest-to station
THEN:
• All three manifest-to station error flags (error-1, error-2, error-3) are reset to OFF status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when crossing table contains a valid canadian manifest-to station specification.
Trigger Criteria:
Context: The crossing table contains a valid Canadian manifest-to station specification
Applied to: Set Manifest-To Station Name
Action: The system processes the broker-specified manifest-to station
Logic Flow:
IF The crossing table contains a valid Canadian manifest-to station specification
AND The system processes the broker-specified manifest-to station
THEN:
• The manifest-to station name is updated with the Canadian manifest-to station value from the crossing table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest-to station name has been set from broker data.
Trigger Criteria:
Context: A manifest-to station name has been set from broker data
Applied to: Lookup MC Table for Station Code
Action: The system validates the manifest-to station
Logic Flow:
IF A manifest-to station name has been set from broker data
AND The system validates the manifest-to station
THEN:
• A lookup is performed in the MC table using the manifest-to station name as the search key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when lookup has been performed in the mc table for the manifest-to station.
Trigger Criteria:
Context: A lookup has been performed in the MC table for the manifest-to station
Applied to: MC Table Lookup Successful?
Action: The MC table lookup is not successful
Logic Flow:
IF A lookup has been performed in the MC table for the manifest-to station
AND The MC table lookup is not successful
THEN:
• Error flag 3 is set to ON status and the station sequence ID is saved for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mc table lookup was successful and returned station data.
Trigger Criteria:
Context: The MC table lookup was successful and returned station data
Applied to: Validate Canadian Customs Code
Action: The system validates the Canadian customs code from the MC table data
Logic Flow:
IF The MC table lookup was successful and returned station data
AND The system validates the Canadian customs code from the MC table data
THEN:
• If the Canadian customs code equals '00000', it is considered invalid and error flag 2 is set to ON status with the station sequence ID saved for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup was successful and the canadian customs code is valid. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The MC table lookup was successful and the Canadian customs code is valid
Applied to: Set Station Information
Action: The system processes the valid station information
Logic Flow:
IF The MC table lookup was successful and the Canadian customs code is valid
AND The system processes the valid station information
THEN:
• The manifest-to station code is set to the Canadian customs code, the destination station number is set to the MC station number, and the batch print call letters are set to the MC call letters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when broker data has been successfully retrieved from the crossing table.
Trigger Criteria:
Context: Broker data has been successfully retrieved from the crossing table
Applied to: Move Broker Name from Crossing Table
Action: The system processes the broker information
Logic Flow:
IF Broker data has been successfully retrieved from the crossing table
AND The system processes the broker information
THEN:
• The broker name from the crossing table is assigned to the customs manifest broker name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when crossing table contains manifest-to station information.
Trigger Criteria:
Context: The crossing table contains manifest-to station information
Applied to: Reset Error Flags
Action: The system begins processing the manifest-to station override
Logic Flow:
IF The crossing table contains manifest-to station information
AND The system begins processing the manifest-to station override
THEN:
• All three manifest-to error flags (error-1, error-2, error-3) are set to OFF status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when crossing table contains a valid manifest-to station specification.
Trigger Criteria:
Context: The crossing table contains a valid manifest-to station specification
Applied to: Set Manifest-To Station Name
Action: The system processes the manifest-to station override
Logic Flow:
IF The crossing table contains a valid manifest-to station specification
AND The system processes the manifest-to station override
THEN:
• The manifest-to station name is updated with the Canadian manifest-to value from the crossing table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest-to station name has been specified from the crossing table.
Trigger Criteria:
Context: A manifest-to station name has been specified from the crossing table
Applied to: Lookup Manifest-To Station in MC Table
Action: The system validates the manifest-to station
Logic Flow:
IF A manifest-to station name has been specified from the crossing table
AND The system validates the manifest-to station
THEN:
• The MC table is queried using the manifest-to station name to retrieve station details
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest-to station lookup has been attempted in the mc table.
Trigger Criteria:
Context: A manifest-to station lookup has been attempted in the MC table
Applied to: MC Table Lookup Successful?
Action: The MC table lookup is unsuccessful
Logic Flow:
IF A manifest-to station lookup has been attempted in the MC table
AND The MC table lookup is unsuccessful
THEN:
• Clear the MC table segment data and set error flag 3 to ON with the station name saved for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when station information has been successfully retrieved from the mc table.
Trigger Criteria:
Context: Station information has been successfully retrieved from the MC table
Applied to: Validate Canadian Customs Code
Action: The system validates the Canadian customs code
Logic Flow:
IF Station information has been successfully retrieved from the MC table
AND The system validates the Canadian customs code
THEN:
• If the Canadian customs code equals '00000', clear the MC table segment data and set error flag 2 to ON with the station name saved for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid station information exists in the mc table with a valid canadian customs code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Valid station information exists in the MC table with a valid Canadian customs code
Applied to: Set Station Information
Action: The system processes the station information
Logic Flow:
IF Valid station information exists in the MC table with a valid Canadian customs code
AND The system processes the station information
THEN:
• The Canadian customs code is assigned to the manifest-to station code, the station number is assigned to the destination station number fields, and the call letters are assigned to the batch print call letters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest-to station processing has been completed.
Trigger Criteria:
Context: Manifest-to station processing has been completed
Applied to: Check and Report Manifest-To Errors
Action: The system checks for any manifest-to related errors
Logic Flow:
IF Manifest-to station processing has been completed
AND The system checks for any manifest-to related errors
THEN:
• If error flag 1 is ON, generate invalid manifest upon error message; if error flag 2 is ON, generate invalid Canadian customs code error message with station name; if error flag 3 is ON, generate invalid manifest port MC error message with station name
Business Justification: Governs the functional prerequisites and system routing when shipment is being processed with action code 'rt' (return) or 'us' (transit).
Trigger Criteria:
Context: A shipment is being processed with action code 'RT' (Return) or 'US' (Transit)
Applied to: Set Broker Name to 'NOT-REQ'
Action: The system processes the broker requirements
Logic Flow:
IF A shipment is being processed with action code 'RT' (Return) or 'US' (Transit)
AND The system processes the broker requirements
THEN:
• The broker name should be set to 'NOT-REQ' and the secondary broker name should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment is being processed with action code 'rt' (return) or 'us' (transit).
Trigger Criteria:
Context: A shipment is being processed with action code 'RT' (Return) or 'US' (Transit)
Applied to: Set Broker Name to 'NOT-REQ'
Action: The system processes the broker assignment logic
Logic Flow:
IF A shipment is being processed with action code 'RT' (Return) or 'US' (Transit)
AND The system processes the broker assignment logic
THEN:
• The broker name should be set to 'NOT-REQ' and the secondary broker name should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment is being processed with action code 'rt' or 'us'.
Trigger Criteria:
Context: A shipment is being processed with action code 'RT' or 'US'
Applied to: Clear Broker Name 2
Action: The system processes broker information
Logic Flow:
IF A shipment is being processed with action code 'RT' or 'US'
AND The system processes broker information
THEN:
• The secondary broker name field should be set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has action code 'rt' (return).
Trigger Criteria:
Context: A shipment has action code 'RT' (Return)
Applied to: Set In-Transit Status to Return
Action: The system configures the transit status
Logic Flow:
IF A shipment has action code 'RT' (Return)
AND The system configures the transit status
THEN:
• The in-transit status should be set to RETURN
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has action code 'rt' (return).
Trigger Criteria:
Context: A shipment has action code 'RT' (Return)
Applied to: Set Application Type to '33'
Action: The system sets the customs application type
Logic Flow:
IF A shipment has action code 'RT' (Return)
AND The system sets the customs application type
THEN:
• The application type should be set to '33'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has action code 'rt' (return).
Trigger Criteria:
Context: A shipment has action code 'RT' (Return)
Applied to: Clear Destination Station Numbers
Action: The system processes destination information
Logic Flow:
IF A shipment has action code 'RT' (Return)
AND The system processes destination information
THEN:
• The destination station number for index, destination station number index, and error/release status index should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has action code 'rt' (return).
Trigger Criteria:
Context: A shipment has action code 'RT' (Return)
Applied to: Set In-Transit Status to Return
Action: The in-transit status is being determined
Logic Flow:
IF A shipment has action code 'RT' (Return)
AND The in-transit status is being determined
THEN:
• The in-transit status should be set to RETURN
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has action code 'rt' (return).
Trigger Criteria:
Context: A shipment has action code 'RT' (Return)
Applied to: Set Application Type to '33'
Action: The customs application type is being assigned
Logic Flow:
IF A shipment has action code 'RT' (Return)
AND The customs application type is being assigned
THEN:
• The application type should be set to '33'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has action code 'rt' (return).
Trigger Criteria:
Context: A shipment has action code 'RT' (Return)
Applied to: Clear Destination Station Numbers
Action: The destination information is being processed
Logic Flow:
IF A shipment has action code 'RT' (Return)
AND The destination information is being processed
THEN:
• The destination station number for index and destination station number index should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has action code 'rt' (return).
Trigger Criteria:
Context: A shipment has action code 'RT' (Return)
Applied to: Clear Error/Release Status Index
Action: The error/release status is being processed
Logic Flow:
IF A shipment has action code 'RT' (Return)
AND The error/release status is being processed
THEN:
• The error or release status index should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has action code 'rt' (return) and a manifest from station name.
Trigger Criteria:
Context: A shipment has action code 'RT' (Return) and a manifest from station name
Applied to: Update Origin Station Name from Port
Action: The system searches the port city state table for matching port name
Logic Flow:
IF A shipment has action code 'RT' (Return) and a manifest from station name
AND The system searches the port city state table for matching port name
THEN:
• The origin station name should be updated with the port city and origin station state code should be updated with the port state
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment has action code 'us' (transit).
Trigger Criteria:
Context: A shipment has action code 'US' (Transit)
Applied to: Set In-Transit Status to Transit
Action: The system configures the transit status
Logic Flow:
IF A shipment has action code 'US' (Transit)
AND The system configures the transit status
THEN:
• The in-transit status should be set to TRANSIT and application type should be set to '33'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment has action code 'us' (transit).
Trigger Criteria:
Context: A shipment has action code 'US' (Transit)
Applied to: Set In-Transit Status to Transit
Action: The in-transit status is being determined
Logic Flow:
IF A shipment has action code 'US' (Transit)
AND The in-transit status is being determined
THEN:
• The in-transit status should be set to TRANSIT
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment has action code 'us' (transit).
Trigger Criteria:
Context: A shipment has action code 'US' (Transit)
Applied to: Set Application Type to '33'
Action: The customs application type is being assigned
Logic Flow:
IF A shipment has action code 'US' (Transit)
AND The customs application type is being assigned
THEN:
• The application type should be set to '33'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has in-transit status of transit or return and csa indicator is on.
Trigger Criteria:
Context: A shipment has in-transit status of TRANSIT or RETURN and CSA indicator is on
Applied to: Turn Off CSA Indicator
Action: The system processes CSA requirements
Logic Flow:
IF A shipment has in-transit status of TRANSIT or RETURN and CSA indicator is on
AND The system processes CSA requirements
THEN:
• The CSA indicator should be turned off, importer name should be cleared, business number qualifier should be cleared, and business number should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has in-transit status of transit or return.
Trigger Criteria:
Context: A shipment has in-transit status of TRANSIT or RETURN
Applied to: Clear Customer Bonded Indicator
Action: The system processes bonded warehouse information
Logic Flow:
IF A shipment has in-transit status of TRANSIT or RETURN
AND The system processes bonded warehouse information
THEN:
• The customer bonded indicator should be cleared and sub-location code should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has in-transit status of transit or return.
Trigger Criteria:
Context: A shipment has in-transit status of TRANSIT or RETURN
Applied to: Clear Customer Bonded Indicator
Action: The customer bonded status is being processed
Logic Flow:
IF A shipment has in-transit status of TRANSIT or RETURN
AND The customer bonded status is being processed
THEN:
• The customer bonded indicator should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has in-transit status of transit or return.
Trigger Criteria:
Context: A shipment has in-transit status of TRANSIT or RETURN
Applied to: Clear Sub-location Code
Action: The sub-location code is being processed
Logic Flow:
IF A shipment has in-transit status of TRANSIT or RETURN
AND The sub-location code is being processed
THEN:
• The sub-location code should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment does not have in-transit status of transit or return and has a sub-location error.
Trigger Criteria:
Context: A shipment does not have in-transit status of TRANSIT or RETURN and has a sub-location error
Applied to: Continue Processing
Action: The system validates sub-location requirements
Logic Flow:
IF A shipment does not have in-transit status of TRANSIT or RETURN and has a sub-location error
AND The system validates sub-location requirements
THEN:
• An error message for invalid destination station sub-location code should be generated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with action code 'rt' or 'us' is being processed.
Trigger Criteria:
Context: A shipment with action code 'RT' or 'US' is being processed
Applied to: Clear Broker Name 2
Action: The broker information is being updated
Logic Flow:
IF A shipment with action code 'RT' or 'US' is being processed
AND The broker information is being updated
THEN:
• The secondary broker name field should be set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has action code 'rt' (return) and manifest from station name exists in the port city state table.
Trigger Criteria:
Context: A shipment has action code 'RT' (Return) and manifest from station name exists in the port city state table
Applied to: Update Origin Station Name from Port
Action: The origin station information is being updated
Logic Flow:
IF A shipment has action code 'RT' (Return) and manifest from station name exists in the port city state table
AND The origin station information is being updated
THEN:
• The origin station name should be set to the corresponding port city from the lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has action code 'rt' (return) and manifest from station name exists in the port city state table.
Trigger Criteria:
Context: A shipment has action code 'RT' (Return) and manifest from station name exists in the port city state table
Applied to: Update Origin Station State from Port
Action: The origin station state information is being updated
Logic Flow:
IF A shipment has action code 'RT' (Return) and manifest from station name exists in the port city state table
AND The origin station state information is being updated
THEN:
• The origin station state code should be set to the corresponding port state from the lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has in-transit status of transit or return and csa indicator is currently on.
Trigger Criteria:
Context: A shipment has in-transit status of TRANSIT or RETURN and CSA indicator is currently on
Applied to: Turn Off CSA Indicator
Action: The CSA indicator is being processed
Logic Flow:
IF A shipment has in-transit status of TRANSIT or RETURN and CSA indicator is currently on
AND The CSA indicator is being processed
THEN:
• The CSA indicator should be turned off
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has in-transit status of transit or return and csa indicator was on.
Trigger Criteria:
Context: A shipment has in-transit status of TRANSIT or RETURN and CSA indicator was on
Applied to: Clear Importer Data
Action: The importer information is being processed
Logic Flow:
IF A shipment has in-transit status of TRANSIT or RETURN and CSA indicator was on
AND The importer information is being processed
THEN:
• The importer name, business number qualifier, and business number should be cleared
R-GCCCCADD-cbl-00385 (+12)File: GCCCCADD.cblFile: GCCCCREL.cblFile: GCCS309C.cblBusiness Rule: In
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when origin station state code exists.
Trigger Criteria:
Context: An origin station state code exists
Applied to: Determine Origin Country Code
Action: The system searches the state-country lookup table for the origin station state code
Logic Flow:
IF An origin station state code exists
AND The system searches the state-country lookup table for the origin station state code
THEN:
• The corresponding country code is assigned to the origin country field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when destination station state code exists.
Trigger Criteria:
Context: A destination station state code exists
Applied to: Determine Destination Country Code
Action: The system searches the state-country lookup table for the destination station state code
Logic Flow:
IF A destination station state code exists
AND The system searches the state-country lookup table for the destination station state code
THEN:
• The corresponding country code is assigned to the destination country field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when origin and destination country codes are determined.
Trigger Criteria:
Context: Origin and destination country codes are determined
Applied to: Search Application Type Table
Action: The system searches the application type table using the country code combination
Logic Flow:
IF Origin and destination country codes are determined
AND The system searches the application type table using the country code combination
THEN:
• If a matching combination is found, the application type and in-transit status are set from the table values, otherwise they are set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment action code is provided.
Trigger Criteria:
Context: A shipment action code is provided
Applied to: Set Broker Name to 'NOT-REQ'
Action: The action code equals 'RT' (Return) or 'US' (Transit)
Logic Flow:
IF A shipment action code is provided
AND The action code equals 'RT' (Return) or 'US' (Transit)
THEN:
• The broker name is set to 'NOT-REQ' and broker name2 is cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with action code 'rt'.
Trigger Criteria:
Context: A shipment with action code 'RT'
Applied to: Set In-Transit Status to RETURN
Action: The system processes the return shipment
Logic Flow:
IF A shipment with action code 'RT'
AND The system processes the return shipment
THEN:
• The in-transit status is set to RETURN, application type is set to '33', destination station numbers are cleared, and origin station information is updated from port lookup if found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with action code 'us'.
Trigger Criteria:
Context: A shipment with action code 'US'
Applied to: Set In-Transit Status to TRANSIT
Action: The system processes the transit shipment
Logic Flow:
IF A shipment with action code 'US'
AND The system processes the transit shipment
THEN:
• The in-transit status is set to TRANSIT and application type is set to '33'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment with csa indicator turned on and in-transit status of either transit or return.
Trigger Criteria:
Context: A shipment with CSA indicator turned ON and in-transit status of either TRANSIT or RETURN
Applied to: Turn OFF CSA Indicator
Action: The system processes the shipment
Logic Flow:
IF A shipment with CSA indicator turned ON and in-transit status of either TRANSIT or RETURN
AND The system processes the shipment
THEN:
• The CSA indicator is turned OFF, importer data is cleared (importer name, business number qualifier, business number), and AU importer flag is set to not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with in-transit status of either transit or return.
Trigger Criteria:
Context: A shipment with in-transit status of either TRANSIT or RETURN
Applied to: Clear Customer Bonded Indicator
Action: The system processes the shipment
Logic Flow:
IF A shipment with in-transit status of either TRANSIT or RETURN
AND The system processes the shipment
THEN:
• The customer bonded indicator is cleared and sub-location code is cleared
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo release is being canceled and the cargo has an in-transit status.
Trigger Criteria:
Context: A cargo release is being canceled and the cargo has an in-transit status
Applied to: Update Status to 'L' Local
Action: The current in-transit status is 'Z' (In-Transit-Zulu) or 'E' (In-Transit-Echo)
Logic Flow:
IF A cargo release is being canceled and the cargo has an in-transit status
AND The current in-transit status is 'Z' (In-Transit-Zulu) or 'E' (In-Transit-Echo)
THEN:
• The in-transit status must be updated to 'L' (Local) to indicate the cargo is now considered local rather than in transit
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has in-transit status of 'l' (local).
Trigger Criteria:
Context: A manifest has in-transit status of 'L' (Local)
Applied to: Access Export Destination Table EX
Action: The system processes the manifest for customs notification
Logic Flow:
IF A manifest has in-transit status of 'L' (Local)
AND The system processes the manifest for customs notification
THEN:
• The system accesses the export destination table using table ID 'EX' and the destination station number as the key
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest has in-transit status of 't' (transit).
Trigger Criteria:
Context: A manifest has in-transit status of 'T' (Transit)
Applied to: In-Transit Status = 'T'?
Action: The system processes N9 reference segments
Logic Flow:
IF A manifest has in-transit status of 'T' (Transit)
AND The system processes N9 reference segments
THEN:
• The system creates an N9 segment with reference qualifier 'KD' and reference number 'IN-TRANSIT'
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest has in-transit status 'l' and origin country is not 'ca' and export destination table lookup was successful.
Trigger Criteria:
Context: A manifest has in-transit status 'L' and origin country is not 'CA' and export destination table lookup was successful
Applied to: Status = 'L' AND Origin Country ≠ 'CA' AND Table Found?
Action: The system processes N9 reference segments
Logic Flow:
IF A manifest has in-transit status 'L' and origin country is not 'CA' and export destination table lookup was successful
AND The system processes N9 reference segments
THEN:
• The system creates an N9 segment with reference qualifier 'KD' and reference number 'IN-TRANSIT'
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest has in-transit status 'e' (export) and origin country is not 'ca'.
Trigger Criteria:
Context: A manifest has in-transit status 'E' (Export) and origin country is not 'CA'
Applied to: Status = 'E' AND Origin Country ≠ 'CA'?
Action: The system processes N9 reference segments
Logic Flow:
IF A manifest has in-transit status 'E' (Export) and origin country is not 'CA'
AND The system processes N9 reference segments
THEN:
• The system creates an N9 segment with reference qualifier 'KD' and reference number 'IN-TRANSIT'
R-GCCCCADD-cbl-00393 (+11)File: GCCCCADD.cblBusiness Rule: Origin Country Determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when origin country determination process is starting.
Trigger Criteria:
Context: The origin country determination process is starting
Applied to: Initialize Origin Country to Spaces
Action: The system begins to determine the origin country
Logic Flow:
IF The origin country determination process is starting
AND The system begins to determine the origin country
THEN:
• The origin country field should be initialized to spaces (blank)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system needs to lookup authorized user information for origin country determination.
Trigger Criteria:
Context: The system needs to lookup authorized user information for origin country determination
Applied to: Setup AU Table Lookup Parameters
Action: Setting up the AU table lookup parameters
Logic Flow:
IF The system needs to lookup authorized user information for origin country determination
AND Setting up the AU table lookup parameters
THEN:
• The lookup should be configured with 'AU' as table ID, consignee CHOP code as the key CHOP, and commodity code as the key commodity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au table lookup parameters are configured with consignee chop and commodity code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The AU table lookup parameters are configured with consignee CHOP and commodity code
Applied to: Call AU Table Lookup
Action: The system executes the AU table lookup
Logic Flow:
IF The AU table lookup parameters are configured with consignee CHOP and commodity code
AND The system executes the AU table lookup
THEN:
• The system should call the table lookup function to retrieve authorized user data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when au table lookup has been executed.
Trigger Criteria:
Context: The AU table lookup has been executed
Applied to: AU Table Record Found?
Action: The system checks the lookup results
Logic Flow:
IF The AU table lookup has been executed
AND The system checks the lookup results
THEN:
• If the lookup is successful, the AU table data should be loaded; otherwise, the AU table data should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when au table processing has been completed.
Trigger Criteria:
Context: The AU table processing has been completed
Applied to: Origin Country = 'MX'?
Action: The system checks if the origin country is set to 'MX' (Mexico)
Logic Flow:
IF The AU table processing has been completed
AND The system checks if the origin country is set to 'MX' (Mexico)
THEN:
• If the origin country is Mexico, the determination process should exit and keep the Mexico origin; otherwise, continue with state-country validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when origin country is not mexico and state-country validation is needed.
Trigger Criteria:
Context: The origin country is not Mexico and state-country validation is needed
Applied to: Search State-Country Table
Action: The system searches the state-country table using the origin station state code
Logic Flow:
IF The origin country is not Mexico and state-country validation is needed
AND The system searches the state-country table using the origin station state code
THEN:
• If the origin state code is found in the table, the origin country should be set from the corresponding table entry; otherwise, the origin country should remain spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when origin country is not mexico and state-country validation is needed.
Trigger Criteria:
Context: The origin country is not Mexico and state-country validation is needed
Applied to: Search State-Country Table
Action: The state-country table is searched using the origin station state code
Logic Flow:
IF The origin country is not Mexico and state-country validation is needed
AND The state-country table is searched using the origin station state code
THEN:
• If a matching state code is found in the table, the corresponding country code should be assigned to the origin country field, otherwise the origin country should remain spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to determine origin country from au table.
Trigger Criteria:
Context: The system needs to determine origin country from AU table
Applied to: Setup AU Table Lookup Parameters
Action: Setting up the AU table lookup parameters
Logic Flow:
IF The system needs to determine origin country from AU table
AND Setting up the AU table lookup parameters
THEN:
• The table ID should be set to 'AU', consignee CHOP should be used as the CHOP key, and commodity code should be used as the commodity key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when au table lookup parameters are configured with table id 'au', consignee chop, and commodity code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: AU table lookup parameters are configured with table ID 'AU', consignee CHOP, and commodity code
Applied to: Call Table Lookup Service
Action: The table lookup service is called
Logic Flow:
IF AU table lookup parameters are configured with table ID 'AU', consignee CHOP, and commodity code
AND The table lookup service is called
THEN:
• The system should attempt to retrieve the corresponding AU table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when au table lookup service has been executed.
Trigger Criteria:
Context: The AU table lookup service has been executed
Applied to: AU Table Record Found?
Action: The lookup result is evaluated
Logic Flow:
IF The AU table lookup service has been executed
AND The lookup result is evaluated
THEN:
• If the lookup is successful, the AU table data should be loaded into the working segment, otherwise the AU table data should be cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when origin country determination process is running.
Trigger Criteria:
Context: The origin country determination process is running
Applied to: Origin Country = 'MX'?
Action: The current origin country value is evaluated
Logic Flow:
IF The origin country determination process is running
AND The current origin country value is evaluated
THEN:
• If the origin country is 'MX' (Mexico), the process should exit immediately and keep the Mexico designation without further state-country validation
Business Justification: Establishes the required business protocol to be followed when waybill processing request is initiated.
Trigger Criteria:
Context: A waybill processing request is initiated
Applied to: Check for Valid EDI BOL
Action: The system checks for valid EDI BOL data by verifying origin road number is not zero
Logic Flow:
IF A waybill processing request is initiated
AND The system checks for valid EDI BOL data by verifying origin road number is not zero
THEN:
• The system sets EDI BOL availability status and extracts BOL key from shipment mining data if available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when waybill processing request is initiated.
Trigger Criteria:
Context: A waybill processing request is initiated
Applied to: Check for Valid EDI BOL
Action: The system checks for valid EDI BOL data by verifying origin road number is not zero and retrieving shipment mining segment E1
Logic Flow:
IF A waybill processing request is initiated
AND The system checks for valid EDI BOL data by verifying origin road number is not zero and retrieving shipment mining segment E1
THEN:
• The system sets EDI BOL availability status and extracts EDI BOL key if data is found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid edi bol data is available for processing.
Trigger Criteria:
Context: Valid EDI BOL data is available for processing
Applied to: Initialize Weight and Quantity Counters
Action: The system begins commodity quantity processing
Logic Flow:
IF Valid EDI BOL data is available for processing
AND The system begins commodity quantity processing
THEN:
• Weight counter and quantity counter are both initialized to zero
• The system sets commodity weight counter and number of units counter to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol key is available and commodity sequence number is set.
Trigger Criteria:
Context: EDI BOL key is available and commodity sequence number is set
Applied to: Retrieve EBSBCCM Segment
Action: The system attempts to retrieve commodity segment EBSBCCM with type 'CM'
Logic Flow:
IF EDI BOL key is available and commodity sequence number is set
AND The system attempts to retrieve commodity segment EBSBCCM with type 'CM'
THEN:
• The system returns commodity segment data if found or sets not-found status if segment does not exist
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when commodity segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: A commodity segment is successfully retrieved from EDI BOL
Applied to: Add Lading Quantity to Total
Action: The segment contains lading quantity data
Logic Flow:
IF A commodity segment is successfully retrieved from EDI BOL
AND The segment contains lading quantity data
THEN:
• The lading quantity is added to the total quantity counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when current commodity segment is the first segment in the sequence.
Trigger Criteria:
Context: The current commodity segment is the first segment in the sequence
Applied to: Retrieve Weight from EBSBCCR Segment
Action: The system processes weight data for the commodity
Logic Flow:
IF The current commodity segment is the first segment in the sequence
AND The system processes weight data for the commodity
THEN:
• Weight information is retrieved from EBSBCCR segment with type 'CR' and dependent key 'CR001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when current commodity segment is the first segment in the sequence.
Trigger Criteria:
Context: The current commodity segment is the first segment in the sequence
Applied to: Get EBSBCCR Weight Segment
Action: The system processes the first commodity segment
Logic Flow:
IF The current commodity segment is the first segment in the sequence
AND The system processes the first commodity segment
THEN:
• The system attempts to retrieve the corresponding EBSBCCR weight segment using EDI BOL key and commodity type CR with sequence CR001
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when weight segment ebsbccr is successfully retrieved.
Trigger Criteria:
Context: Weight segment EBSBCCR is successfully retrieved
Applied to: Set Weight from N7-WEIGHT Field
Action: The segment contains N7-WEIGHT field data
Logic Flow:
IF Weight segment EBSBCCR is successfully retrieved
AND The segment contains N7-WEIGHT field data
THEN:
• The weight counter is set to the N7-WEIGHT field value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when weight segment ebsbccr cannot be retrieved from edi bol.
Trigger Criteria:
Context: Weight segment EBSBCCR cannot be retrieved from EDI BOL
Applied to: Set Weight to Zero
Action: The system processes the first commodity segment
Logic Flow:
IF Weight segment EBSBCCR cannot be retrieved from EDI BOL
AND The system processes the first commodity segment
THEN:
• The weight counter is set to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when weight value has been determined for the commodity.
Trigger Criteria:
Context: Weight value has been determined for the commodity
Applied to: Determine Weight Unit Based on Metric Indicator
Action: The shipment root metric indicator is 'M' or 'L'
Logic Flow:
IF Weight value has been determined for the commodity
AND The shipment root metric indicator is 'M' or 'L'
THEN:
• Weight unit is set to kilograms, otherwise weight unit is set to pounds
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when commodity segment contains lading quantity qualifier data.
Trigger Criteria:
Context: Commodity segment contains lading quantity qualifier data
Applied to: Set Quantity Qualifier from Lading Data
Action: The system processes the first commodity segment
Logic Flow:
IF Commodity segment contains lading quantity qualifier data
AND The system processes the first commodity segment
THEN:
• The quantity qualifier is set to the lading quantity qualifier from the EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi processing results in both weight and quantity being zero.
Trigger Criteria:
Context: EDI processing results in both weight and quantity being zero
Applied to: Use Fastway SHIPCOMM Data as Fallback
Action: The system needs commodity data for the shipment
Logic Flow:
IF EDI processing results in both weight and quantity being zero
AND The system needs commodity data for the shipment
THEN:
• The system retrieves commodity data from Fastway SHIPCOMM segments as fallback
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when fastway data is being used as fallback for commodity information.
Trigger Criteria:
Context: Fastway data is being used as fallback for commodity information
Applied to: Retrieve First SHIPCOMM Segment
Action: The system retrieves the first SHIPCOMM segment using 'GU' function
Logic Flow:
IF Fastway data is being used as fallback for commodity information
AND The system retrieves the first SHIPCOMM segment using 'GU' function
THEN:
• The first commodity segment data is returned if available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when fastway data is being used as fallback for commodity information.
Trigger Criteria:
Context: Fastway data is being used as fallback for commodity information
Applied to: Get First SHIPCOMM Segment
Action: The system retrieves the first SHIPCOMM segment
Logic Flow:
IF Fastway data is being used as fallback for commodity information
AND The system retrieves the first SHIPCOMM segment
THEN:
• The system calls FWCWBIO with GU function to get the first SHIPCOMM segment and sets found status based on result
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when fastway shipcomm segment is successfully retrieved.
Trigger Criteria:
Context: Fastway SHIPCOMM segment is successfully retrieved
Applied to: Add Units from SHIPCOMM to Total
Action: The segment contains number of units data
Logic Flow:
IF Fastway SHIPCOMM segment is successfully retrieved
AND The segment contains number of units data
THEN:
• The number of units is added to the total quantity counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when commodity data is being retrieved from fastway shipcomm.
Trigger Criteria:
Context: Commodity data is being retrieved from Fastway SHIPCOMM
Applied to: Set Quantity Qualifier to PCS
Action: Quantity information is processed from Fastway data
Logic Flow:
IF Commodity data is being retrieved from Fastway SHIPCOMM
AND Quantity information is processed from Fastway data
THEN:
• The quantity qualifier is set to 'PCS' (pieces)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when fastway shipcomm segment contains weight data.
Trigger Criteria:
Context: Fastway SHIPCOMM segment contains weight data
Applied to: Add Weight Based on Metric Indicator
Action: The shipment root metric indicator is 'M' or 'L'
Logic Flow:
IF Fastway SHIPCOMM segment contains weight data
AND The shipment root metric indicator is 'M' or 'L'
THEN:
• Metric commodity weight is added to total weight, otherwise standard commodity weight is added
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when first fastway shipcomm segment has been processed.
Trigger Criteria:
Context: First Fastway SHIPCOMM segment has been processed
Applied to: Get Next SHIPCOMM Segment
Action: The system continues processing additional commodity segments using 'GN' function
Logic Flow:
IF First Fastway SHIPCOMM segment has been processed
AND The system continues processing additional commodity segments using 'GN' function
THEN:
• Additional commodity segments are retrieved and processed until no more segments are found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when commodity processing has completed and total quantity is calculated.
Trigger Criteria:
Context: Commodity processing has completed and total quantity is calculated
Applied to: Use Calculated Quantity
Action: The total quantity is greater than zero
Logic Flow:
IF Commodity processing has completed and total quantity is calculated
AND The total quantity is greater than zero
THEN:
• The final lading quantity is set to the calculated total quantity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when commodity processing has completed.
Trigger Criteria:
Context: Commodity processing has completed
Applied to: Set Default Quantity to 1
Action: The total calculated quantity is zero
Logic Flow:
IF Commodity processing has completed
AND The total calculated quantity is zero
THEN:
• The final lading quantity is set to 1 as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when weight processing has completed and total weight is calculated.
Trigger Criteria:
Context: Weight processing has completed and total weight is calculated
Applied to: Use Calculated Weight
Action: The calculated weight is greater than zero
Logic Flow:
IF Weight processing has completed and total weight is calculated
AND The calculated weight is greater than zero
THEN:
• The final weight is set to the calculated total weight
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when weight processing has completed.
Trigger Criteria:
Context: Weight processing has completed
Applied to: Set Default Weight to 1
Action: The calculated total weight is zero
Logic Flow:
IF Weight processing has completed
AND The calculated total weight is zero
THEN:
• The final weight is set to '00000001' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when commodity quantity processing is complete.
Trigger Criteria:
Context: Commodity quantity processing is complete
Applied to: Set Default Qualifier to PCS
Action: The quantity qualifier is empty or not specified
Logic Flow:
IF Commodity quantity processing is complete
AND The quantity qualifier is empty or not specified
THEN:
• The quantity qualifier is set to 'PCS' (pieces) as default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data is available and commodity sequence counter is set.
Trigger Criteria:
Context: EDI BOL data is available and commodity sequence counter is set
Applied to: Get EBSBCCM Commodity Segment
Action: The system attempts to retrieve EBSBCCM commodity segment using EDI BOL key and sequence number
Logic Flow:
IF EDI BOL data is available and commodity sequence counter is set
AND The system attempts to retrieve EBSBCCM commodity segment using EDI BOL key and sequence number
THEN:
• The system returns commodity segment data if found or sets not found status if invalid EDI BOL or segment does not exist
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when commodity segment is successfully retrieved from edi bol data.
Trigger Criteria:
Context: A commodity segment is successfully retrieved from EDI BOL data
Applied to: Add Lading Quantity to Total
Action: The system processes the commodity segment
Logic Flow:
IF A commodity segment is successfully retrieved from EDI BOL data
AND The system processes the commodity segment
THEN:
• The system adds the lading quantity from the segment to the total number of units counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebsbccr weight segment is successfully retrieved for the first commodity.
Trigger Criteria:
Context: EBSBCCR weight segment is successfully retrieved for the first commodity
Applied to: Extract Total Weight
Action: The system processes the weight segment
Logic Flow:
IF EBSBCCR weight segment is successfully retrieved for the first commodity
AND The system processes the weight segment
THEN:
• The system extracts the N7 weight value and assigns it to the commodity weight counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ebsbccr weight segment is not found for the first commodity.
Trigger Criteria:
Context: EBSBCCR weight segment is not found for the first commodity
Applied to: Set Weight to Zero
Action: The system attempts to process weight information
Logic Flow:
IF EBSBCCR weight segment is not found for the first commodity
AND The system attempts to process weight information
THEN:
• The system sets the commodity weight counter to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when weight information has been processed for a commodity.
Trigger Criteria:
Context: Weight information has been processed for a commodity
Applied to: Determine Weight Unit from Metric Indicator
Action: The system determines the appropriate weight unit
Logic Flow:
IF Weight information has been processed for a commodity
AND The system determines the appropriate weight unit
THEN:
• The system sets weight unit to kilograms if metric indicator is M or L, otherwise sets weight unit to pounds
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when commodity segment is being processed from edi data.
Trigger Criteria:
Context: A commodity segment is being processed from EDI data
Applied to: Set Quantity Qualifier from Lading Data
Action: The system extracts quantity information
Logic Flow:
IF A commodity segment is being processed from EDI data
AND The system extracts quantity information
THEN:
• The system assigns the lading quantity qualifier from the commodity segment to the customs quantity qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi commodity processing results in both weight and quantity being zero.
Trigger Criteria:
Context: EDI commodity processing results in both weight and quantity being zero
Applied to: Use Fastway SHIPCOMM Data as Fallback
Action: The system needs commodity data for customs processing
Logic Flow:
IF EDI commodity processing results in both weight and quantity being zero
AND The system needs commodity data for customs processing
THEN:
• The system initiates Fastway SHIPCOMM data retrieval as fallback source
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipcomm segment is successfully retrieved.
Trigger Criteria:
Context: A SHIPCOMM segment is successfully retrieved
Applied to: Add SHIPCOMM Quantities and Weights
Action: The system processes the SHIPCOMM data
Logic Flow:
IF A SHIPCOMM segment is successfully retrieved
AND The system processes the SHIPCOMM data
THEN:
• The system adds number of units to quantity counter and adds appropriate weight (metric or standard) to weight counter based on metric indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipcomm data is being used for commodity information.
Trigger Criteria:
Context: SHIPCOMM data is being used for commodity information
Applied to: Set Default Quantity Qualifier to PCS
Action: The system processes quantity information from SHIPCOMM
Logic Flow:
IF SHIPCOMM data is being used for commodity information
AND The system processes quantity information from SHIPCOMM
THEN:
• The system sets the quantity qualifier to PCS (pieces)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when first shipcomm segment has been processed successfully.
Trigger Criteria:
Context: The first SHIPCOMM segment has been processed successfully
Applied to: Get Next SHIPCOMM Segments
Action: The system continues processing additional SHIPCOMM segments
Logic Flow:
IF The first SHIPCOMM segment has been processed successfully
AND The system continues processing additional SHIPCOMM segments
THEN:
• The system calls FWCWBIO with GN function to get next SHIPCOMM segments until no more segments are found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all commodity data processing is complete.
Trigger Criteria:
Context: All commodity data processing is complete
Applied to: Use Calculated Quantity
Action: The system validates the final calculated quantity
Logic Flow:
IF All commodity data processing is complete
AND The system validates the final calculated quantity
THEN:
• The system uses the calculated quantity if greater than zero, otherwise sets quantity to 1 as default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all commodity data processing is complete.
Trigger Criteria:
Context: All commodity data processing is complete
Applied to: Use Calculated Weight
Action: The system validates the final calculated weight
Logic Flow:
IF All commodity data processing is complete
AND The system validates the final calculated weight
THEN:
• The system uses the calculated weight if greater than zero, otherwise sets weight to 00000001 as default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when final quantity and weight processing is complete.
Trigger Criteria:
Context: Final quantity and weight processing is complete
Applied to: Ensure Quantity Qualifier is Set
Action: The system validates the quantity qualifier
Logic Flow:
IF Final quantity and weight processing is complete
AND The system validates the quantity qualifier
THEN:
• The system sets quantity qualifier to PCS if it is empty or spaces
R-GCCCCADD-cbl-00419 (+25)File: GCCCCADD.cblBusiness Rule: Total Weight Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when waybill processing request with origin road number.
Trigger Criteria:
Context: A waybill processing request with origin road number
Applied to: Check for Valid EDI BOL
Action: The system checks for valid EDI BOL data by looking up SHIPMIN segment with type 'E' and sequence '1'
Logic Flow:
IF A waybill processing request with origin road number
AND The system checks for valid EDI BOL data by looking up SHIPMIN segment with type 'E' and sequence '1'
THEN:
• If EDI BOL data is found, extract the EDI BOL key for further processing, otherwise mark as invalid EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid edi bol data is available.
Trigger Criteria:
Context: Valid EDI BOL data is available
Applied to: Initialize Weight Counters
Action: Starting weight processing for commodity segments
Logic Flow:
IF Valid EDI BOL data is available
AND Starting weight processing for commodity segments
THEN:
• Initialize commodity weight counter to zero and number of units counter to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol key and commodity sequence number.
Trigger Criteria:
Context: EDI BOL key and commodity sequence number
Applied to: Get EBSBCCM Segment
Action: Attempting to retrieve EBSBCCM segment with type 'CM' for the current sequence
Logic Flow:
IF EDI BOL key and commodity sequence number
AND Attempting to retrieve EBSBCCM segment with type 'CM' for the current sequence
THEN:
• If segment is found, mark as found for processing, otherwise mark as not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid commodity segment with lading quantity.
Trigger Criteria:
Context: A valid commodity segment with lading quantity
Applied to: Add Lading Quantity to Total
Action: Processing the commodity segment for weight calculation
Logic Flow:
IF A valid commodity segment with lading quantity
AND Processing the commodity segment for weight calculation
THEN:
• Add the L0-LADING-QTY value to the total number of units counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when first commodity segment in the sequence.
Trigger Criteria:
Context: The first commodity segment in the sequence
Applied to: Get EBSBCCR Weight Segment
Action: Processing weight data for the commodity
Logic Flow:
IF The first commodity segment in the sequence
AND Processing weight data for the commodity
THEN:
• Retrieve EBSBCCR segment with type 'CR' and dependent key 'CR001' to get weight information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid ebsbccr weight segment.
Trigger Criteria:
Context: A valid EBSBCCR weight segment
Applied to: Extract Total Weight from N7-WEIGHT
Action: Processing weight data from the segment
Logic Flow:
IF A valid EBSBCCR weight segment
AND Processing weight data from the segment
THEN:
• Move the N7-WEIGHT value to the commodity weight counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when no valid ebsbccr weight segment found.
Trigger Criteria:
Context: No valid EBSBCCR weight segment found
Applied to: Set Weight to Zero
Action: Processing weight data for the first commodity segment
Logic Flow:
IF No valid EBSBCCR weight segment found
AND Processing weight data for the first commodity segment
THEN:
• Set the commodity weight counter to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when weight data from commodity segment.
Trigger Criteria:
Context: Weight data from commodity segment
Applied to: Check Metric Indicator
Action: Setting weight unit for the shipment
Logic Flow:
IF Weight data from commodity segment
AND Setting weight unit for the shipment
THEN:
• If metric indicator is 'M' or 'L', set weight unit to KG, otherwise set to LB
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid commodity segment with quantity qualifier.
Trigger Criteria:
Context: A valid commodity segment with quantity qualifier
Applied to: Set Quantity Qualifier from Segment
Action: Processing the first commodity segment
Logic Flow:
IF A valid commodity segment with quantity qualifier
AND Processing the first commodity segment
THEN:
• Move the L0-LADING-QTY-QUAL to the lading quantity qualifier field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when no valid edi bol data or zero weight and quantity from edi processing.
Trigger Criteria:
Context: No valid EDI BOL data or zero weight and quantity from EDI processing
Applied to: Use Fastway SHIPCOMM Data
Action: Attempting to get weight and quantity information
Logic Flow:
IF No valid EDI BOL data or zero weight and quantity from EDI processing
AND Attempting to get weight and quantity information
THEN:
• Retrieve weight and quantity from SHIPCOMM segments using 'GU' and 'GN' functions, set quantity qualifier to 'PCS', and use metric or standard weight based on metric indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when calculated weight from edi or fastway data.
Trigger Criteria:
Context: Calculated weight from EDI or Fastway data
Applied to: Validate Final Weight
Action: Finalizing weight for customs manifest
Logic Flow:
IF Calculated weight from EDI or Fastway data
AND Finalizing weight for customs manifest
THEN:
• If weight is greater than zero, use the calculated weight, otherwise set default weight to '00000001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when calculated quantity from edi or fastway data.
Trigger Criteria:
Context: Calculated quantity from EDI or Fastway data
Applied to: Validate Quantity
Action: Finalizing quantity for customs manifest
Logic Flow:
IF Calculated quantity from EDI or Fastway data
AND Finalizing quantity for customs manifest
THEN:
• If quantity is greater than zero, use the calculated quantity, otherwise set default quantity to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when processed weight and quantity data.
Trigger Criteria:
Context: Processed weight and quantity data
Applied to: Validate Quantity
Action: Quantity qualifier field is empty or spaces
Logic Flow:
IF Processed weight and quantity data
AND Quantity qualifier field is empty or spaces
THEN:
• Set the lading quantity qualifier to 'PCS' as default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when waybill processing request is initiated.
Trigger Criteria:
Context: A waybill processing request is initiated
Applied to: Check for Valid EDI BOL
Action: The system checks for EDI BOL availability by verifying origin road number is not zero
Logic Flow:
IF A waybill processing request is initiated
AND The system checks for EDI BOL availability by verifying origin road number is not zero
THEN:
• The system should set EDI BOL validity flag and extract BOL key from shipment mining data if available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid edi bol data is available for processing.
Trigger Criteria:
Context: Valid EDI BOL data is available for processing
Applied to: Initialize Weight Counters
Action: The system begins weight extraction process
Logic Flow:
IF Valid EDI BOL data is available for processing
AND The system begins weight extraction process
THEN:
• The system should initialize commodity weight counter and number of units counter to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol key is available and sequence counter is set.
Trigger Criteria:
Context: EDI BOL key is available and sequence counter is set
Applied to: Get EBSBCCM Segment
Action: The system attempts to retrieve EBSBCCM commodity segment using EDI BOL key and CM type with sequence number
Logic Flow:
IF EDI BOL key is available and sequence counter is set
AND The system attempts to retrieve EBSBCCM commodity segment using EDI BOL key and CM type with sequence number
THEN:
• The system should return commodity segment data if found or set not-found flag if segment does not exist
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when commodity segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: A commodity segment is successfully retrieved from EDI BOL
Applied to: Add Lading Quantity to Total
Action: The system processes the commodity segment data
Logic Flow:
IF A commodity segment is successfully retrieved from EDI BOL
AND The system processes the commodity segment data
THEN:
• The system should add the lading quantity from L0-LADING-QTY field to the total units counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when first commodity segment is being processed.
Trigger Criteria:
Context: The first commodity segment is being processed
Applied to: Get EBSBCCR Weight Segment
Action: The system needs to extract weight information
Logic Flow:
IF The first commodity segment is being processed
AND The system needs to extract weight information
THEN:
• The system should retrieve EBSBCCR weight segment using EDI BOL key with CR type and CR001 dependent key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when first commodity segment is being processed.
Trigger Criteria:
Context: The first commodity segment is being processed
Applied to: Set Quantity Qualifier from Segment
Action: The system extracts quantity information
Logic Flow:
IF The first commodity segment is being processed
AND The system extracts quantity information
THEN:
• The system should assign the lading quantity qualifier from L0-LADING-QTY-QUAL field to the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ebsbccr weight segment is successfully retrieved.
Trigger Criteria:
Context: EBSBCCR weight segment is successfully retrieved
Applied to: Extract Total Weight from N7-WEIGHT
Action: The system processes the weight segment data
Logic Flow:
IF EBSBCCR weight segment is successfully retrieved
AND The system processes the weight segment data
THEN:
• The system should extract the weight value from N7-WEIGHT field and assign it to commodity weight counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ebsbccr weight segment retrieval fails.
Trigger Criteria:
Context: EBSBCCR weight segment retrieval fails
Applied to: Set Weight to Zero
Action: The system cannot find weight data for the commodity segment
Logic Flow:
IF EBSBCCR weight segment retrieval fails
AND The system cannot find weight data for the commodity segment
THEN:
• The system should set the commodity weight counter to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when weight data has been extracted from the first commodity segment.
Trigger Criteria:
Context: Weight data has been extracted from the first commodity segment
Applied to: Determine Weight Unit from Metric Indicator
Action: The system checks the metric indicator from shipment root data
Logic Flow:
IF Weight data has been extracted from the first commodity segment
AND The system checks the metric indicator from shipment root data
THEN:
• The system should set weight unit to KG if metric indicator is M or L, otherwise set weight unit to LB
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol processing results in zero weight and zero quantity.
Trigger Criteria:
Context: EDI BOL processing results in zero weight and zero quantity
Applied to: Use Fastway SHIPCOMM Data as Fallback
Action: The system needs weight and quantity data for customs processing
Logic Flow:
IF EDI BOL processing results in zero weight and zero quantity
AND The system needs weight and quantity data for customs processing
THEN:
• The system should retrieve weight and quantity from Fastway SHIPCOMM segments and set quantity qualifier to PCS
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when weight processing is complete from either edi bol or fastway data.
Trigger Criteria:
Context: Weight processing is complete from either EDI BOL or Fastway data
Applied to: Validate Final Weight Value
Action: The system validates the final calculated weight
Logic Flow:
IF Weight processing is complete from either EDI BOL or Fastway data
AND The system validates the final calculated weight
THEN:
• The system should use the calculated weight if greater than zero, otherwise set default weight to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when final quantity calculation results in zero units.
Trigger Criteria:
Context: Final quantity calculation results in zero units
Applied to: Set Default Weight to 1
Action: The system validates quantity for customs processing
Logic Flow:
IF Final quantity calculation results in zero units
AND The system validates quantity for customs processing
THEN:
• The system should set quantity to 1 and assign the formatted value to lading quantity field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when weight and quantity processing is complete.
Trigger Criteria:
Context: Weight and quantity processing is complete
Applied to: Validate Final Weight Value
Action: The lading quantity qualifier field is empty
Logic Flow:
IF Weight and quantity processing is complete
AND The lading quantity qualifier field is empty
THEN:
• The system should set the lading quantity qualifier to PCS as default value
R-GCCCCADD-cbl-00432 (+16)File: GCCCCADD.cblBusiness Rule: Fastway Data Fallback
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when waybill processing request is initiated.
Trigger Criteria:
Context: A waybill processing request is initiated
Applied to: Check EDI BOL Data Availability
Action: The system checks for EDI BOL data availability by verifying if origin road number is not zero
Logic Flow:
IF A waybill processing request is initiated
AND The system checks for EDI BOL data availability by verifying if origin road number is not zero
THEN:
• The system sets the EDI BOL validity flag and retrieves the EDI BOL key if data is available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when waybill processing request is initiated.
Trigger Criteria:
Context: A waybill processing request is initiated
Applied to: Check EDI BOL Data Availability
Action: The system needs to retrieve weight and quantity information
Logic Flow:
IF A waybill processing request is initiated
AND The system needs to retrieve weight and quantity information
THEN:
• The system should first check if EDI BOL data is available by validating the origin road number and retrieving the EDI BOL key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol data is available and weight/quantity processing is required.
Trigger Criteria:
Context: EDI BOL data is available and weight/quantity processing is required
Applied to: EDI BOL Weight/Quantity Found?
Action: The system retrieves EDI BOL commodity records and finds valid weight and quantity data
Logic Flow:
IF EDI BOL data is available and weight/quantity processing is required
AND The system retrieves EDI BOL commodity records and finds valid weight and quantity data
THEN:
• The system uses EDI BOL weight, quantity, and quantity qualifier data for manifest creation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol weight and quantity data is not available or weight and quantity are both zero.
Trigger Criteria:
Context: EDI BOL weight and quantity data is not available or weight and quantity are both zero
Applied to: Initialize Fastway Data Retrieval
Action: The system needs to obtain weight and quantity information
Logic Flow:
IF EDI BOL weight and quantity data is not available or weight and quantity are both zero
AND The system needs to obtain weight and quantity information
THEN:
• The system initializes Fastway SHIPCOMM data retrieval and sets the get function to 'GU' for first record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when fastway data retrieval is initialized and shipcomm records need to be processed.
Trigger Criteria:
Context: Fastway data retrieval is initialized and SHIPCOMM records need to be processed
Applied to: Get First SHIPCOMM Record
Action: The system calls FWCWBIO to get the first SHIPCOMM record
Logic Flow:
IF Fastway data retrieval is initialized and SHIPCOMM records need to be processed
AND The system calls FWCWBIO to get the first SHIPCOMM record
THEN:
• The system extracts number of units, sets quantity qualifier to 'PCS', and determines weight unit based on metric indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipcomm record is found and weight data needs to be processed.
Trigger Criteria:
Context: SHIPCOMM record is found and weight data needs to be processed
Applied to: Determine Weight Unit Based on Metric Indicator
Action: The system checks the metric indicator in SHIPROOT and the indicator is 'M' or 'L'
Logic Flow:
IF SHIPCOMM record is found and weight data needs to be processed
AND The system checks the metric indicator in SHIPROOT and the indicator is 'M' or 'L'
THEN:
• The system sets weight unit to kilograms and uses metric commodity weight, otherwise sets weight unit to pounds and uses standard commodity weight
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when first shipcomm record has been processed and additional records may exist.
Trigger Criteria:
Context: First SHIPCOMM record has been processed and additional records may exist
Applied to: Get Next SHIPCOMM Record
Action: The system sets get function to 'GN' and retrieves subsequent SHIPCOMM records
Logic Flow:
IF First SHIPCOMM record has been processed and additional records may exist
AND The system sets get function to 'GN' and retrieves subsequent SHIPCOMM records
THEN:
• The system accumulates number of units and weight from each additional record until no more records are found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when weight and quantity processing is complete and final weight validation is performed.
Trigger Criteria:
Context: Weight and quantity processing is complete and final weight validation is performed
Applied to: Set Default Weight to 1
Action: The calculated weight is zero or negative
Logic Flow:
IF Weight and quantity processing is complete and final weight validation is performed
AND The calculated weight is zero or negative
THEN:
• The system sets the weight to '00000001' as the default minimum weight
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when weight and quantity processing is complete and final quantity validation is performed.
Trigger Criteria:
Context: Weight and quantity processing is complete and final quantity validation is performed
Applied to: Set Default Quantity to 1
Action: The calculated quantity is zero or negative
Logic Flow:
IF Weight and quantity processing is complete and final quantity validation is performed
AND The calculated quantity is zero or negative
THEN:
• The system sets the quantity to 1 as the default minimum quantity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when weight and quantity processing is using fastway shipcomm data.
Trigger Criteria:
Context: Weight and quantity processing is using Fastway SHIPCOMM data
Applied to: Set Default Quantity Qualifier to 'PCS'
Action: The quantity qualifier is spaces or not specified
Logic Flow:
IF Weight and quantity processing is using Fastway SHIPCOMM data
AND The quantity qualifier is spaces or not specified
THEN:
• The system sets the quantity qualifier to 'PCS' (pieces) as the default unit of measure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data availability has been checked.
Trigger Criteria:
Context: EDI BOL data availability has been checked
Applied to: EDI BOL Weight/Quantity Found?
Action: Weight and quantity data is found in EDI BOL records
Logic Flow:
IF EDI BOL data availability has been checked
AND Weight and quantity data is found in EDI BOL records
THEN:
• The system should use EDI BOL commodity and weight data for processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol weight and quantity data is not available or equals zero.
Trigger Criteria:
Context: EDI BOL weight and quantity data is not available or equals zero
Applied to: Initialize Fastway Data Retrieval
Action: The system needs to obtain commodity weight and quantity information
Logic Flow:
IF EDI BOL weight and quantity data is not available or equals zero
AND The system needs to obtain commodity weight and quantity information
THEN:
• The system should initialize Fastway SHIPCOMM data retrieval and set the get function to 'GU' for first record retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when fastway data retrieval has been initialized.
Trigger Criteria:
Context: Fastway data retrieval has been initialized
Applied to: Get First SHIPCOMM Record
Action: The first SHIPCOMM record is successfully retrieved
Logic Flow:
IF Fastway data retrieval has been initialized
AND The first SHIPCOMM record is successfully retrieved
THEN:
• The system should extract number of units, set quantity qualifier to 'PCS', and determine weight based on metric indicator (metric weight for 'M' or 'L', standard weight otherwise)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when first shipcomm record has been processed.
Trigger Criteria:
Context: The first SHIPCOMM record has been processed
Applied to: Get Next SHIPCOMM Record
Action: Additional SHIPCOMM records are found using 'GN' function
Logic Flow:
IF The first SHIPCOMM record has been processed
AND Additional SHIPCOMM records are found using 'GN' function
THEN:
• The system should accumulate number of units, set quantity qualifier to 'PCS', and add weight values based on metric indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when weight and quantity processing has been completed.
Trigger Criteria:
Context: Weight and quantity processing has been completed
Applied to: Set Default Weight to 1
Action: The final weight value is zero or not positive
Logic Flow:
IF Weight and quantity processing has been completed
AND The final weight value is zero or not positive
THEN:
• The system should set the weight to '00000001' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when weight processing has been completed.
Trigger Criteria:
Context: Weight processing has been completed
Applied to: Set Default Quantity to 1
Action: The final quantity value is zero or not positive
Logic Flow:
IF Weight processing has been completed
AND The final quantity value is zero or not positive
THEN:
• The system should set the quantity to 1 and convert it to display format
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when all weight and quantity processing has been completed.
Trigger Criteria:
Context: All weight and quantity processing has been completed
Applied to: Complete Weight/Quantity Processing
Action: The quantity qualifier field is blank or spaces
Logic Flow:
IF All weight and quantity processing has been completed
AND The quantity qualifier field is blank or spaces
THEN:
• The system should set the quantity qualifier to 'PCS' as default value
R-GCCCCADD-cbl-00441 (+3)File: GCCCCADD.cblBusiness Rule: Weight Unit Setting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record exists with a metric indicator field.
Trigger Criteria:
Context: A shipment record exists with a metric indicator field
Applied to: Weight Unit Setting - Set weight units (KG/LB) based on metric indicator
Action: The system processes weight unit determination AND the metric indicator is 'M' (metric) or 'L' (liters)
Logic Flow:
IF A shipment record exists with a metric indicator field
AND The system processes weight unit determination AND the metric indicator is 'M' (metric) or 'L' (liters)
THEN:
• The weight unit is set to KG (kilograms)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record exists with a metric indicator field.
Trigger Criteria:
Context: A shipment record exists with a metric indicator field
Applied to: Weight Unit Setting - Set weight units (KG/LB) based on metric indicator
Action: The system processes weight unit determination AND the metric indicator is not 'M' (metric) or 'L' (liters)
Logic Flow:
IF A shipment record exists with a metric indicator field
AND The system processes weight unit determination AND the metric indicator is not 'M' (metric) or 'L' (liters)
Business Justification: Defines the strict business conditions required to proceed when cargo manifest is being processed.
Trigger Criteria:
Context: A cargo manifest is being processed
Applied to: Quantity Qualifier Empty?
Action: The quantity qualifier field is empty or contains only spaces
Logic Flow:
IF A cargo manifest is being processed
AND The quantity qualifier field is empty or contains only spaces
THEN:
• The system generates a required field error message for quantity qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo manifest has a non-empty quantity qualifier.
Trigger Criteria:
Context: A cargo manifest has a non-empty quantity qualifier
Applied to: Lookup Quantity Qualifier in MU Table
Action: The system looks up the quantity qualifier in the MU (Measurement Units) table
Logic Flow:
IF A cargo manifest has a non-empty quantity qualifier
AND The system looks up the quantity qualifier in the MU (Measurement Units) table
THEN:
• The system retrieves the corresponding measurement unit record if it exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when quantity qualifier has been looked up in the mu table.
Trigger Criteria:
Context: A quantity qualifier has been looked up in the MU table
Applied to: Found in MU Table?
Action: The quantity qualifier is not found in the measurement units reference table
Logic Flow:
IF A quantity qualifier has been looked up in the MU table
AND The quantity qualifier is not found in the measurement units reference table
THEN:
• The system generates a 'not found on MU table' error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when quantity qualifier has been looked up in the mu table.
Trigger Criteria:
Context: A quantity qualifier has been looked up in the MU table
Applied to: Validation Successful
Action: The quantity qualifier is found in the measurement units reference table
Logic Flow:
IF A quantity qualifier has been looked up in the MU table
AND The quantity qualifier is found in the measurement units reference table
THEN:
• The system considers the quantity qualifier validation successful and continues processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment record is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment record is being processed for customs manifest creation
Applied to: Quantity Qualifier Empty?
Action: The quantity qualifier field is empty or contains only spaces
Logic Flow:
IF A shipment record is being processed for customs manifest creation
AND The quantity qualifier field is empty or contains only spaces
THEN:
• The system generates a required field error message and adds it to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment record has a populated quantity qualifier field.
Trigger Criteria:
Context: A shipment record has a populated quantity qualifier field
Applied to: Lookup Quantity Qualifier in MU Table
Action: The system looks up the quantity qualifier in the MU (Measurement Units) reference table
Logic Flow:
IF A shipment record has a populated quantity qualifier field
AND The system looks up the quantity qualifier in the MU (Measurement Units) reference table
THEN:
• The system retrieves the corresponding measurement unit record if the qualifier exists in the table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment record has a quantity qualifier that does not exist in the mu reference table.
Trigger Criteria:
Context: A shipment record has a quantity qualifier that does not exist in the MU reference table
Applied to: Generate Not Found Error
Action: The lookup operation fails to find a matching record
Logic Flow:
IF A shipment record has a quantity qualifier that does not exist in the MU reference table
AND The lookup operation fails to find a matching record
THEN:
• The system generates a 'not found on MU table' error message and adds it to the error collection
R-GCCCCADD-cbl-00447 (+40)File: GCCCCADD.cblBusiness Rule: Shipper Record Building
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs manifest creation process is initiated.
Trigger Criteria:
Context: A customs manifest creation process is initiated
Applied to: Initialize Shipper Record Structure
Action: The system begins building shipper record information
Logic Flow:
IF A customs manifest creation process is initiated
AND The system begins building shipper record information
THEN:
• A new shipper record structure is initialized with empty values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper record structure has been initialized.
Trigger Criteria:
Context: A shipper record structure has been initialized
Applied to: Set Record Type as '55' and Sequence '0001'
Action: The system sets up the record identification
Logic Flow:
IF A shipper record structure has been initialized
AND The system sets up the record identification
THEN:
• The record type is set to '55' and sequence number is set to '0001' for shipper identification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper record needs to be populated with data.
Trigger Criteria:
Context: A shipper record needs to be populated with data
Applied to: Check EDI BOL HN Segment Available?
Action: The system checks for availability of EDI BOL HN segment data
Logic Flow:
IF A shipper record needs to be populated with data
AND The system checks for availability of EDI BOL HN segment data
THEN:
• If EDI BOL HN segment is found, use EDI data source, otherwise use Fastway shipper data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol hn segment data is available.
Trigger Criteria:
Context: EDI BOL HN segment data is available
Applied to: Extract Shipper Name from EDI BOL
Action: The system processes shipper name information
Logic Flow:
IF EDI BOL HN segment data is available
AND The system processes shipper name information
THEN:
• The shipper name is extracted from F1-CONSIGNOR-NAME field in the EDI BOL data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol hn segment data is available.
Trigger Criteria:
Context: EDI BOL HN segment data is available
Applied to: Extract Shipper CHOP Code from EDI BOL
Action: The system processes shipper identification codes
Logic Flow:
IF EDI BOL HN segment data is available
AND The system processes shipper identification codes
THEN:
• The shipper CHOP code is extracted from F1-SHPR-CHOP field in the EDI BOL data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipper information is being processed from any data source.
Trigger Criteria:
Context: Shipper information is being processed from any data source
Applied to: Set Entity ID as 'SH' - Shipper
Action: The system sets the entity type identifier
Logic Flow:
IF Shipper information is being processed from any data source
AND The system sets the entity type identifier
THEN:
• The entity ID is set to 'SH' to identify this record as a shipper entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper record is being populated from edi bol data source.
Trigger Criteria:
Context: Shipper record is being populated from EDI BOL data source
Applied to: Check EDI BOL HA Address Segment?
Action: The system needs to populate address information
Logic Flow:
IF Shipper record is being populated from EDI BOL data source
AND The system needs to populate address information
THEN:
• If EDI BOL HA address segment is available, use EDI address data, otherwise use Fastway address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol ha address segment is available.
Trigger Criteria:
Context: EDI BOL HA address segment is available
Applied to: Extract Address from EDI BOL HA Segment
Action: The system processes shipper address information
Logic Flow:
IF EDI BOL HA address segment is available
AND The system processes shipper address information
THEN:
• Address line 1 is extracted from F2-ADDL-NAME-ADDR-1and address line 2 from F2-ADDL-NAME-ADDR-2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol ha address segment is available.
Trigger Criteria:
Context: EDI BOL HA address segment is available
Applied to: Extract Address from EDI BOL HA Segment
Action: The system processes EDI address data
Logic Flow:
IF EDI BOL HA address segment is available
AND The system processes EDI address data
THEN:
• Address line 1 is extracted to N301 field and address line 2 to N302 field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol ha address segment is not available.
Trigger Criteria:
Context: EDI BOL HA address segment is not available
Applied to: Use Fastway Shipper Address Data
Action: The system needs shipper address information
Logic Flow:
IF EDI BOL HA address segment is not available
AND The system needs shipper address information
THEN:
• Address information is extracted from Fastway SHPR-ADDR fields
• Address line 1 is extracted from Fastway shipper address field 1, andif blank, 'NA' is used as default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper address information is being processed.
Trigger Criteria:
Context: Shipper address information is being processed
Applied to: Check EDI BOL HC City/State Segment?
Action: The system needs city, state, and postal code information
Logic Flow:
IF Shipper address information is being processed
AND The system needs city, state, and postal code information
THEN:
• If EDI BOL HC city/state segment is available, use EDI data, otherwise parse Fastway address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol hc city/state segment is available.
Trigger Criteria:
Context: EDI BOL HC city/state segment is available
Applied to: Extract City/State/Postal from EDI BOL HC
Action: The system processes shipper location information
Logic Flow:
IF EDI BOL HC city/state segment is available
AND The system processes shipper location information
THEN:
• City name is extracted from F4-CITY-NAME, state code from F4-STATE-PROV-CODE, postal code from F4-POSTAL-CODE, and country code from F4-COUNTRY-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol hc city/state segment is available.
Trigger Criteria:
Context: EDI BOL HC city/state segment is available
Applied to: Extract City/State/Postal from EDI BOL HC
Action: The system processes EDI city/state data
Logic Flow:
IF EDI BOL HC city/state segment is available
AND The system processes EDI city/state data
THEN:
• City name is extracted to N401 field, state code to N402 field, postal code to N403 field, and country code to N404 field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol hc segment is not available and fastway address data exists.
Trigger Criteria:
Context: EDI BOL HC segment is not available and Fastway address data exists
Applied to: Parse Fastway Address for City/State/Postal
Action: The system needs to extract location components
Logic Flow:
IF EDI BOL HC segment is not available and Fastway address data exists
AND The system needs to extract location components
THEN:
• The system parses SHPR-ADDR field to extract city name, state/province code, and postal code components
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol hc segment is not available and fastway address data exists.
Trigger Criteria:
Context: EDI BOL HC segment is not available and Fastway address data exists
Applied to: Parse Fastway Address for City/State/Postal
Action: The system parses Fastway address field 2
Logic Flow:
IF EDI BOL HC segment is not available and Fastway address data exists
AND The system parses Fastway address field 2
THEN:
• City name, state code, and postal code are extracted and assigned to respective N4 segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when state or province code has been extracted from shipper address data.
Trigger Criteria:
Context: A state or province code has been extracted from shipper address data
Applied to: Determine Country Code from State Lookup
Action: The system needs to determine the corresponding country code
Logic Flow:
IF A state or province code has been extracted from shipper address data
AND The system needs to determine the corresponding country code
THEN:
• The system searches the TB-STATE-COUNTRY table using the state code to find the matching country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper record is being populated with contact information.
Trigger Criteria:
Context: Shipper record is being populated with contact information
Applied to: Check EDI BOL GP Contact Segment?
Action: The system checks for available contact data sources
Logic Flow:
IF Shipper record is being populated with contact information
AND The system checks for available contact data sources
THEN:
• If EDI BOL GP contact segment is available, extract contact information, otherwise proceed without contact details
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol gp contact segment is available.
Trigger Criteria:
Context: EDI BOL GP contact segment is available
Applied to: Extract Contact Information from EDI BOL
Action: The system processes shipper contact information
Logic Flow:
IF EDI BOL GP contact segment is available
AND The system processes shipper contact information
THEN:
• Contact function code is extracted from PER-CONTACT-FUNC-CODE, contact name from PER-NAME, communication number qualifier from PER-COMMUN-NO-QUAL, and communication number from PER-COMMUN-NUMBER
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol gp contact segment is available.
Trigger Criteria:
Context: EDI BOL GP contact segment is available
Applied to: Extract Contact Information from EDI BOL
Action: The system processes EDI contact data
Logic Flow:
IF EDI BOL GP contact segment is available
AND The system processes EDI contact data
THEN:
• Contact function code is extracted to PER01 field, contact name to PER02 field, communication qualifier to PER03 field, and communication number to PER04 field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol hn segment is not available.
Trigger Criteria:
Context: EDI BOL HN segment is not available
Applied to: Use Fastway Shipper Data
Action: The system needs to populate shipper information
Logic Flow:
IF EDI BOL HN segment is not available
AND The system needs to populate shipper information
THEN:
• The system uses Fastway SHIPROOT data as the primary source for shipper information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when fastway data is being used as the shipper information source.
Trigger Criteria:
Context: Fastway data is being used as the shipper information source
Applied to: Extract Shipper Name from Fastway
Action: The system processes shipper name information
Logic Flow:
IF Fastway data is being used as the shipper information source
AND The system processes shipper name information
THEN:
• The shipper name is extracted from SHPR-NM field in the SHIPROOT data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when fastway data is being used as the shipper information source.
Trigger Criteria:
Context: Fastway data is being used as the shipper information source
Applied to: Extract Shipper CHOP from Fastway
Action: The system processes shipper identification codes
Logic Flow:
IF Fastway data is being used as the shipper information source
AND The system processes shipper identification codes
THEN:
• The shipper CHOP code is extracted from SHPR-CHOP field in the SHIPROOT data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when fastway data is being used as the shipper information source.
Trigger Criteria:
Context: Fastway data is being used as the shipper information source
Applied to: Use Fastway Address Data
Action: The system processes shipper address information
Logic Flow:
IF Fastway data is being used as the shipper information source
AND The system processes shipper address information
THEN:
• Address line 1 is extracted from SHPR-ADDR(1), andif empty, 'NA' is used as default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when fastway data is being used for shipper location information.
Trigger Criteria:
Context: Fastway data is being used for shipper location information
Applied to: Parse Fastway City/State Information
Action: The system processes city and state information
Logic Flow:
IF Fastway data is being used for shipper location information
AND The system processes city and state information
THEN:
• The system parses SHPR-ADDR(2) to extract city name, state/province code, and postal code, then determines country code through state lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper record has been populated with data from either edi bol or fastway sources.
Trigger Criteria:
Context: Shipper record has been populated with data from either EDI BOL or Fastway sources
Applied to: Validate Shipper Record Data
Action: The system performs data validation
Logic Flow:
IF Shipper record has been populated with data from either EDI BOL or Fastway sources
AND The system performs data validation
THEN:
• All required shipper fields are validated for completeness and format compliance according to customs requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper record has been validated and completed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Shipper record has been validated and completed
Applied to: Store Shipper Record in Array Position 1
Action: The system stores the record for customs processing
Logic Flow:
IF Shipper record has been validated and completed
AND The system stores the record for customs processing
THEN:
• The shipper record is stored in WS-GCSCCS55-DATA array at position 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when new shipper record needs to be created for customs manifest.
Trigger Criteria:
Context: A new shipper record needs to be created for customs manifest
Applied to: Initialize Shipper Record Structure
Action: The system begins building shipper information
Logic Flow:
IF A new shipper record needs to be created for customs manifest
AND The system begins building shipper information
THEN:
• The record is initialized with CCN key, record type '55', and sequence '0001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper record structure is being initialized.
Trigger Criteria:
Context: A shipper record structure is being initialized
Applied to: Set Record Type as '55' and Sequence '0001'
Action: The system sets record identification parameters
Logic Flow:
IF A shipper record structure is being initialized
AND The system sets record identification parameters
THEN:
• Record type is set to '55' and sequence number is set to '0001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper record is being built for customs manifest.
Trigger Criteria:
Context: A shipper record is being built for customs manifest
Applied to: Check EDI BOL HN Segment Available?
Action: The system checks for EDI BOL HN segment availability
Logic Flow:
IF A shipper record is being built for customs manifest
AND The system checks for EDI BOL HN segment availability
THEN:
• If EDI BOL HN segment is found, use EDI data; otherwise use Fastway data as fallback
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol hn segment is available with shipper information.
Trigger Criteria:
Context: EDI BOL HN segment is available with shipper information
Applied to: Extract Shipper Name from EDI BOL
Action: The system processes EDI shipper data
Logic Flow:
IF EDI BOL HN segment is available with shipper information
AND The system processes EDI shipper data
THEN:
• Shipper name is extracted to N102 field, CHOP code to SC301 field, and entity ID is set to 'SH'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper identity has been extracted from edi bol.
Trigger Criteria:
Context: Shipper identity has been extracted from EDI BOL
Applied to: Check EDI BOL HA Address Segment?
Action: The system checks for EDI BOL HA address segment
Logic Flow:
IF Shipper identity has been extracted from EDI BOL
AND The system checks for EDI BOL HA address segment
THEN:
• If HA segment is found, extract address from EDI; otherwise use Fastway address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper address information has been processed.
Trigger Criteria:
Context: Shipper address information has been processed
Applied to: Check EDI BOL HC City/State Segment?
Action: The system checks for EDI BOL HC city/state segment
Logic Flow:
IF Shipper address information has been processed
AND The system checks for EDI BOL HC city/state segment
THEN:
• If HC segment is found, extract city/state from EDI; otherwise parse Fastway address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when state or province code has been extracted from address information.
Trigger Criteria:
Context: State or province code has been extracted from address information
Applied to: Determine Country Code from State Lookup
Action: The system performs state-country table lookup
Logic Flow:
IF State or province code has been extracted from address information
AND The system performs state-country table lookup
THEN:
• Corresponding country code is retrieved and assigned to N404 field, or remains blank if not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipper geographic information has been processed.
Trigger Criteria:
Context: Shipper geographic information has been processed
Applied to: Check EDI BOL GP Contact Segment?
Action: The system checks for EDI BOL GP contact segment
Logic Flow:
IF Shipper geographic information has been processed
AND The system checks for EDI BOL GP contact segment
THEN:
• If GP segment is found, extract contact information; otherwise proceed to validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol hn segment is not found or not available.
Trigger Criteria:
Context: EDI BOL HN segment is not found or not available
Applied to: Use Fastway Shipper Data as Fallback
Action: The system needs to build shipper record
Logic Flow:
IF EDI BOL HN segment is not found or not available
AND The system needs to build shipper record
THEN:
• Shipper information is extracted from Fastway shipment root data including name, CHOP code, and address
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data is not available and fastway data is being used.
Trigger Criteria:
Context: EDI BOL data is not available and Fastway data is being used
Applied to: Extract Shipper Name from Fastway
Action: The system processes Fastway shipper information
Logic Flow:
IF EDI BOL data is not available and Fastway data is being used
AND The system processes Fastway shipper information
THEN:
• Shipper CHOP is extracted to SC301 field, entity ID is set to 'SH', and shipper name is extracted to N102 field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when fastway data is being used for shipper information.
Trigger Criteria:
Context: Fastway data is being used for shipper information
Applied to: Use Fastway Address Information
Action: The system processes Fastway address data
Logic Flow:
IF Fastway data is being used for shipper information
AND The system processes Fastway address data
THEN:
• If shipper address field 1 is blank, 'NA' is used; otherwise the address value is extracted to N301 field, and N302 field is set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when fastway address data is being processed for geographic information.
Trigger Criteria:
Context: Fastway address data is being processed for geographic information
Applied to: Parse Fastway City/State Information
Action: The system parses shipper address field 2
Logic Flow:
IF Fastway address data is being processed for geographic information
AND The system parses shipper address field 2
THEN:
• City name is extracted to N401 field, state code to N402 field, postal code to N403 field, and country code is determined via state lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper record data has been extracted from either edi or fastway sources.
Trigger Criteria:
Context: Shipper record data has been extracted from either EDI or Fastway sources
Applied to: Validate Shipper Record Data
Action: The system validates shipper record completeness
Logic Flow:
IF Shipper record data has been extracted from either EDI or Fastway sources
AND The system validates shipper record completeness
THEN:
• All required fields are checked for presence and validity according to customs manifest requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper record has been built and validated successfully.
Trigger Criteria:
Context: Shipper record has been built and validated successfully
Applied to: Store Shipper Record in Array Position 1
Action: The system stores the shipper record
Logic Flow:
IF Shipper record has been built and validated successfully
AND The system stores the shipper record
THEN:
• The complete shipper record is stored in array position 1 of the customs manifest record collection
R-GCCCCADD-cbl-00469 (+28)File: GCCCCADD.cblBusiness Rule: Consignee Record Building
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when consignee record needs to be created.
Trigger Criteria:
Context: A consignee record needs to be created
Applied to: Initialize Consignee Record Structure
Action: The system begins consignee record building process
Logic Flow:
IF A consignee record needs to be created
AND The system begins consignee record building process
THEN:
• The system initializes the consignee record structure, sets record type to '55', and assigns sequence number '0002'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Search for EDI BOL Consignee Data CN Segment
Action: The system searches for consignee name data in EDI BOL CN segment type '01'
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system searches for consignee name data in EDI BOL CN segment type '01'
THEN:
• The system sets the consignee data found flag based on whether the CN segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Search for EDI BOL Consignee Data
Action: The system searches for consignee data in EDI BOL
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system searches for consignee data in EDI BOL
THEN:
• The system retrieves consignee segment 'CN' with sequence '01' from EDI BOL data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol cn segment data is found for the shipment.
Trigger Criteria:
Context: EDI BOL CN segment data is found for the shipment
Applied to: Extract Consignee Name and CHOP from EDI
Action: The system processes the consignee name information
Logic Flow:
IF EDI BOL CN segment data is found for the shipment
AND The system processes the consignee name information
THEN:
• The system sets entity ID to 'CN', extracts shipper name to consignee name field, and sets the consignee CHOP code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol consignee name data has been found.
Trigger Criteria:
Context: EDI BOL consignee name data has been found
Applied to: Search for EDI Address Data CA Segment
Action: The system searches for address data in EDI BOL CA segment for consignee type
Logic Flow:
IF EDI BOL consignee name data has been found
AND The system searches for address data in EDI BOL CA segment for consignee type
THEN:
• The system sets the address data found flag based on whether the CA segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol ca segment address data is found.
Trigger Criteria:
Context: EDI BOL CA segment address data is found
Applied to: Extract Address from EDI BOL
Action: The system processes the address information
Logic Flow:
IF EDI BOL CA segment address data is found
AND The system processes the address information
THEN:
• The system extracts address line 1 and 2, andif address line 1 is blank, sets it to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol ca segment address data is not found.
Trigger Criteria:
Context: EDI BOL CA segment address data is not found
Applied to: Use Fastway Address Data
Action: The system needs address information for the consignee
Logic Flow:
IF EDI BOL CA segment address data is not found
AND The system needs address information for the consignee
THEN:
• The system uses consignee address from Fastway data andif blank, sets address line 1 to 'NA' and clears address line 2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when address information has been processed for the consignee.
Trigger Criteria:
Context: Address information has been processed for the consignee
Applied to: Search for EDI City/State Data CC Segment
Action: The system searches for city/state data in EDI BOL CC segment for consignee type
Logic Flow:
IF Address information has been processed for the consignee
AND The system searches for city/state data in EDI BOL CC segment for consignee type
THEN:
• The system sets the city/state data found flag based on whether the CC segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol cc segment city/state data is found.
Trigger Criteria:
Context: EDI BOL CC segment city/state data is found
Applied to: Extract City/State/Postal/Country from EDI
Action: The system processes the geographic information
Logic Flow:
IF EDI BOL CC segment city/state data is found
AND The system processes the geographic information
THEN:
• The system extracts city name, state/province code, postal code, and country code from the EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol cc segment city/state data is not found.
Trigger Criteria:
Context: EDI BOL CC segment city/state data is not found
Applied to: Use Fastway City/State Data
Action: The system needs geographic information for the consignee
Logic Flow:
IF EDI BOL CC segment city/state data is not found
AND The system needs geographic information for the consignee
THEN:
• The system parses Fastway consignee address data to extract city, state/province, postal code, and determines country from state lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when geographic information has been processed for the consignee.
Trigger Criteria:
Context: Geographic information has been processed for the consignee
Applied to: Search for EDI Contact Data GP Segment
Action: The system searches for contact data in EDI BOL GP segment for consignee type
Logic Flow:
IF Geographic information has been processed for the consignee
AND The system searches for contact data in EDI BOL GP segment for consignee type
THEN:
• The system sets the contact data found flag based on whether the GP segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol gp segment contact data is found.
Trigger Criteria:
Context: EDI BOL GP segment contact data is found
Applied to: Extract Contact Information from EDI
Action: The system processes the contact information
Logic Flow:
IF EDI BOL GP segment contact data is found
AND The system processes the contact information
THEN:
• The system extracts contact function code, contact name, communication number qualifier, and communication number from the EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol cn segment consignee data is not found.
Trigger Criteria:
Context: EDI BOL CN segment consignee data is not found
Applied to: Use Fastway Consignee Data
Action: The system needs consignee information
Logic Flow:
IF EDI BOL CN segment consignee data is not found
AND The system needs consignee information
THEN:
• The system uses consignee CHOP code, sets entity ID to 'CN', and extracts consignee name from Fastway shipment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when all consignee data has been extracted from available sources.
Trigger Criteria:
Context: All consignee data has been extracted from available sources
Applied to: Validate Consignee Record Data
Action: The system validates the consignee record
Logic Flow:
IF All consignee data has been extracted from available sources
AND The system validates the consignee record
THEN:
• The system performs N1 segment validation including entity ID, name, address, city/state/postal/country, and contact information validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee record has been validated successfully.
Trigger Criteria:
Context: The consignee record has been validated successfully
Applied to: Store Consignee Record in Array Position 2
Action: The system completes consignee record building
Logic Flow:
IF The consignee record has been validated successfully
AND The system completes consignee record building
THEN:
• The system stores the consignee record in array position 2 of the record 55 data structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when consignee record needs to be built.
Trigger Criteria:
Context: A consignee record needs to be built
Applied to: Initialize Consignee Record Structure
Action: The system starts consignee record building process
Logic Flow:
IF A consignee record needs to be built
AND The system starts consignee record building process
THEN:
• The system initializes the consignee record structure, sets record type to '55', and assigns sequence number '0002' for consignee data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol consignee segment is found.
Trigger Criteria:
Context: EDI BOL consignee segment is found
Applied to: Extract Consignee Name from EDI BOL
Action: The system processes the consignee segment data
Logic Flow:
IF EDI BOL consignee segment is found
AND The system processes the consignee segment data
THEN:
• The system sets entity ID to 'CN', extracts shipper name as consignee name, and extracts consignee CHOP code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol consignee data exists.
Trigger Criteria:
Context: EDI BOL consignee data exists
Applied to: Search for EDI BOL Address Data
Action: The system searches for address information
Logic Flow:
IF EDI BOL consignee data exists
AND The system searches for address information
THEN:
• The system retrieves address segment 'CA' with sequence '01' for the consignee
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol consignee data exists.
Trigger Criteria:
Context: EDI BOL consignee data exists
Applied to: Search for EDI BOL City/State Data
Action: The system searches for city/state information
Logic Flow:
IF EDI BOL consignee data exists
AND The system searches for city/state information
THEN:
• The system retrieves city/state segment 'CC' with sequence '01' for the consignee
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol consignee data exists.
Trigger Criteria:
Context: EDI BOL consignee data exists
Applied to: Search for EDI BOL Contact Data
Action: The system searches for contact information
Logic Flow:
IF EDI BOL consignee data exists
AND The system searches for contact information
THEN:
• The system retrieves contact segment 'GP' with sequence '01' for the consignee
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol address segment is found.
Trigger Criteria:
Context: EDI BOL address segment is found
Applied to: Extract Address from EDI BOL
Action: The system processes the address segment
Logic Flow:
IF EDI BOL address segment is found
AND The system processes the address segment
THEN:
• The system extracts additional name/address line 1 and additional name/address line 2 from the EDI BOL data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol address segment is not found.
Trigger Criteria:
Context: EDI BOL address segment is not found
Applied to: Use Fastway Address Data
Action: The system needs address information for consignee
Logic Flow:
IF EDI BOL address segment is not found
AND The system needs address information for consignee
THEN:
• The system uses consignee address from Fastway shipment root data element 3
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol city/state segment is found.
Trigger Criteria:
Context: EDI BOL city/state segment is found
Applied to: Extract City/State/Postal from EDI BOL
Action: The system processes the city/state segment
Logic Flow:
IF EDI BOL city/state segment is found
AND The system processes the city/state segment
THEN:
• The system extracts city name, state/province code, postal code, and country code from the EDI BOL data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol city/state segment is not found.
Trigger Criteria:
Context: EDI BOL city/state segment is not found
Applied to: Use Fastway City/State Data
Action: The system needs geographic information for consignee
Logic Flow:
IF EDI BOL city/state segment is not found
AND The system needs geographic information for consignee
THEN:
• The system parses city name, state/province code, postal code, and determines country code from Fastway consignee data element 4
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol contact segment is found.
Trigger Criteria:
Context: EDI BOL contact segment is found
Applied to: Extract Contact Information from EDI BOL
Action: The system processes the contact segment
Logic Flow:
IF EDI BOL contact segment is found
AND The system processes the contact segment
THEN:
• The system extracts contact function code, contact name, communication number qualifier, and communication number from the EDI BOL data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol consignee segment is not found.
Trigger Criteria:
Context: EDI BOL consignee segment is not found
Applied to: Use Fastway Consignee Data
Action: The system needs consignee information
Logic Flow:
IF EDI BOL consignee segment is not found
AND The system needs consignee information
THEN:
• The system sets entity ID to 'CN', uses consignee CHOP code, and extracts consignee name from Fastway shipment root data element 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when consignee address information is missing or incomplete.
Trigger Criteria:
Context: Consignee address information is missing or incomplete
Applied to: Set Default Address if Missing
Action: The system validates address data
Logic Flow:
IF Consignee address information is missing or incomplete
AND The system validates address data
THEN:
• The system sets address line 1 to 'NA' if missing and sets address line 2 to 'NA' if missing or contains only one character followed by spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record data has been populated.
Trigger Criteria:
Context: Consignee record data has been populated
Applied to: Validate Consignee Record Data
Action: The system validates the consignee record
Logic Flow:
IF Consignee record data has been populated
AND The system validates the consignee record
THEN:
• The system validates entity ID, name, address, city/state/postal, and contact information according to customs requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when consignee record has been validated and completed.
Trigger Criteria:
Context: Consignee record has been validated and completed
Applied to: Store Consignee Record in Array Position 2
Action: The system stores the consignee record
Logic Flow:
IF Consignee record has been validated and completed
AND The system stores the consignee record
THEN:
• The system places the consignee record in array position 2 of the customs record structure
R-GCCCCADD-cbl-00483 (+24)File: GCCCCADD.cblBusiness Rule: N1 Entity Segment Building
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol contains stuffer entity data with type pn.
Trigger Criteria:
Context: An EDI BOL contains stuffer entity data with type PN
Applied to: Build SF Stuffer Entity Segment
Action: The system processes the stuffer entity segment
Logic Flow:
IF An EDI BOL contains stuffer entity data with type PN
AND The system processes the stuffer entity segment
THEN:
• The system creates an SF entity record with name, address, city, state, postal code, country, and contact information from the EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol contains ultimate consignee entity data with type un.
Trigger Criteria:
Context: An EDI BOL contains ultimate consignee entity data with type UN
Applied to: Build UC Ultimate Consignee Segment
Action: The system processes the ultimate consignee entity segment
Logic Flow:
IF An EDI BOL contains ultimate consignee entity data with type UN
AND The system processes the ultimate consignee entity segment
THEN:
• The system creates a UC entity record with name, address, city, state, postal code, country, and contact information from the EDI data, defaulting address to 'NA' if not provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol contains beneficial owner entity data with type bn and organization id bn.
Trigger Criteria:
Context: An EDI BOL contains beneficial owner entity data with type BN and organization ID BN
Applied to: Build BN Beneficial Owner Segment
Action: The system processes the beneficial owner entity segment
Logic Flow:
IF An EDI BOL contains beneficial owner entity data with type BN and organization ID BN
AND The system processes the beneficial owner entity segment
THEN:
• The system creates a BN entity record with name, consignee chop code, address, city, state, postal code, and country information from the EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol contains transportation data with organization id c1.
Trigger Criteria:
Context: An EDI BOL contains transportation data with organization ID C1
Applied to: Build C1 Carrier Entity Segment
Action: The system processes the carrier entity segment from EDI
Logic Flow:
IF An EDI BOL contains transportation data with organization ID C1
AND The system processes the carrier entity segment from EDI
THEN:
• The system creates a C1 entity record with organization ID, name, address, city, state, postal code, country, and contact information from the EDI transportation data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when no edi transportation data exists for c1 organization id and the consignee data code in fastway shipment data equals 'c'.
Trigger Criteria:
Context: No EDI transportation data exists for C1 organization ID AND the consignee data code in Fastway shipment data equals 'C'
Applied to: Build C1 Carrier Entity Segment
Action: The system processes the carrier entity segment from Fastway
Logic Flow:
IF No EDI transportation data exists for C1 organization ID AND the consignee data code in Fastway shipment data equals 'C'
AND The system processes the carrier entity segment from Fastway
THEN:
• The system creates a C1 entity record using consignee data from Fastway shipment with name, address, city, state, postal code, and country information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol contains transportation data with organization id n1.
Trigger Criteria:
Context: An EDI BOL contains transportation data with organization ID N1
Applied to: Build N1 Notify Party Segment
Action: The system processes the notify party entity segment
Logic Flow:
IF An EDI BOL contains transportation data with organization ID N1
AND The system processes the notify party entity segment
THEN:
• The system creates an N1 entity record with organization ID, name, address, city, state, postal code, country, and contact information from the EDI transportation data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol contains mcoa segment data with organization id of pf or ss.
Trigger Criteria:
Context: An EDI BOL contains MCOA segment data with organization ID of PF or SS
Applied to: Build PF/SS Entity Segments from MCOA
Action: The system processes the MCOA entity segment
Logic Flow:
IF An EDI BOL contains MCOA segment data with organization ID of PF or SS
AND The system processes the MCOA entity segment
THEN:
• The system creates a PF or SS entity record with organization ID, name, ID code qualifier, ID code, address, city, state, postal code, and country information from the MCOA data, defaulting address to 'NA' if not provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol contains transportation data with organization ids 11, mc, oo, or fw.
Trigger Criteria:
Context: An EDI BOL contains transportation data with organization IDs 11, MC, OO, or FW
Applied to: Build Additional Entity Segments
Action: The system processes each additional entity segment type
Logic Flow:
IF An EDI BOL contains transportation data with organization IDs 11, MC, OO, or FW
AND The system processes each additional entity segment type
THEN:
• The system creates entity records for each found organization type with organization ID, name, address, city, state, postal code, country, and contact information from the EDI transportation data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol contains named entity data with type nn and the entity id code is valid according to predefined entity id values.
Trigger Criteria:
Context: An EDI BOL contains named entity data with type NN AND the entity ID code is valid according to predefined entity ID values
Applied to: Build NN Entity Segments
Action: The system processes the named entity segment
Logic Flow:
IF An EDI BOL contains named entity data with type NN AND the entity ID code is valid according to predefined entity ID values
AND The system processes the named entity segment
THEN:
• The system creates an NN entity record with entity ID code, name, consignee chop code, address, city, state, postal code, and country information from the EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n1 entity segment is being processed.
Trigger Criteria:
Context: An N1 entity segment is being processed
Applied to: Validate All N1 Segments
Action: The address information is validated
Logic Flow:
IF An N1 entity segment is being processed
AND The address information is validated
THEN:
• The system sets address line 1 to 'NA' if it is spaces or low-values, and ensures all address components are properly populated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when validated n1 entity segment exists and the sequence index is within the maximum allowed range.
Trigger Criteria:
Context: A validated N1 entity segment exists AND the sequence index is within the maximum allowed range
Applied to: Store N1 Segments in Database
Action: The system stores the entity segment
Logic Flow:
IF A validated N1 entity segment exists AND the sequence index is within the maximum allowed range
AND The system stores the entity segment
THEN:
• The system assigns the CCN key, record type 55, current sequence number, and stores the segment data in the database array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Build SF Stuffer Entity Segment
Action: SF entity data is found in EDI BOL segments with entity type 'PN'
Logic Flow:
IF EDI BOL data is available for processing
AND SF entity data is found in EDI BOL segments with entity type 'PN'
THEN:
• Extract SF entity name, address, city, state, postal code, country code and contact information to create SF segment with entity ID 'SF'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Build UC Ultimate Consignee Segment
Action: UC entity data is found in EDI BOL segments with entity type 'UN'
Logic Flow:
IF EDI BOL data is available for processing
AND UC entity data is found in EDI BOL segments with entity type 'UN'
THEN:
• Extract UC entity name, address, city, state, postal code, country code and contact information to create UC segment with entity ID 'UC', defaulting address to 'NA' if not provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data is available for processing and organization id is set to 'bn'.
Trigger Criteria:
Context: EDI BOL data is available for processing and organization ID is set to 'BN'
Applied to: Build BN Beneficial Owner Segment
Action: BN entity data is found in EDI BOL segments with entity type 'BN'
Logic Flow:
IF EDI BOL data is available for processing and organization ID is set to 'BN'
AND BN entity data is found in EDI BOL segments with entity type 'BN'
THEN:
• Extract BN entity name from U1-NAME field, address from BT segments, city/state/postal/country from BY segments to create BN segment with entity ID 'BN', defaulting address to 'NA' if not provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data is available for processing and organization id is set to 'c1'.
Trigger Criteria:
Context: EDI BOL data is available for processing and organization ID is set to 'C1'
Applied to: Build C1 Carrier Entity Segment
Action: C1 entity data is found in EDI BOL transportation segments OR consignee data code in Fastway equals 'C'
Logic Flow:
IF EDI BOL data is available for processing and organization ID is set to 'C1'
AND C1 entity data is found in EDI BOL transportation segments OR consignee data code in Fastway equals 'C'
THEN:
• Extract C1 entity information from EDI TN/T2/TA/T3 segments OR from Fastway consignee data to create C1 segment with entity ID 'C1', including name, address, city, state, postal code, country and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data is available for processing and organization id is set to 'n1'.
Trigger Criteria:
Context: EDI BOL data is available for processing and organization ID is set to 'N1'
Applied to: Build N1 Notify Party Segment
Action: N1 entity data is found in EDI BOL transportation segments
Logic Flow:
IF EDI BOL data is available for processing and organization ID is set to 'N1'
AND N1 entity data is found in EDI BOL transportation segments
THEN:
• Extract N1 entity information from EDI TN/T2/TA/T3 segments to create N1 segment with entity ID 'N1', including name, address, city, state, postal code, country and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol mcoa segments are available for processing.
Trigger Criteria:
Context: EDI BOL MCOA segments are available for processing
Applied to: Build PF/SS Entity Segments from MCOA
Action: MCOA segment is found with organization ID equal to 'PF' or 'SS'
Logic Flow:
IF EDI BOL MCOA segments are available for processing
AND MCOA segment is found with organization ID equal to 'PF' or 'SS'
THEN:
• Extract entity name, ID code qualifier, ID code from F5 fields and address information from ON/OC segments to create PF or SS segment, defaulting address to 'NA' if not provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol transportation segments are available for processing.
Trigger Criteria:
Context: EDI BOL transportation segments are available for processing
Applied to: Build Additional Entity Segments
Action: Transportation segment is found with organization ID matching '11', 'MC', 'OO', or 'FW'
Logic Flow:
IF EDI BOL transportation segments are available for processing
AND Transportation segment is found with organization ID matching '11', 'MC', 'OO', or 'FW'
THEN:
• Extract entity information from TN/T2/TA/T3 segments to create corresponding entity segment with matching organization ID, including name, address, city, state, postal code, country and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data is available and nn sequence number is being processed.
Trigger Criteria:
Context: EDI BOL data is available and NN sequence number is being processed
Applied to: Build NN Entity Segments
Action: NN entity data is found in EDI BOL segments AND entity ID code is valid according to predefined entity ID values
Logic Flow:
IF EDI BOL data is available and NN sequence number is being processed
AND NN entity data is found in EDI BOL segments AND entity ID code is valid according to predefined entity ID values
THEN:
• Extract NN entity name, address from GC segments, city/state/postal/country from GA segments to create NN segment with validated entity ID, OR reset variables if entity not found or invalid
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity segment is being built with address information.
Trigger Criteria:
Context: Entity segment is being built with address information
Applied to: Set Default Address Values
Action: Address line 1 is spaces or not provided
Logic Flow:
IF Entity segment is being built with address information
AND Address line 1 is spaces or not provided
THEN:
• Set address line 1 to 'NA' as default value to maintain data integrity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity segment contains state or province code information.
Trigger Criteria:
Context: Entity segment contains state or province code information
Applied to: Assign Country Codes
Action: State/province code is provided in entity address data
Logic Flow:
IF Entity segment contains state or province code information
AND State/province code is provided in entity address data
THEN:
• Search state-country reference table to find matching country code and assign it to entity country field, leaving blank if no match found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity segment is for shipper (sequence 0001) or consignee (sequence 0002).
Trigger Criteria:
Context: Entity segment is for shipper (sequence 0001) or consignee (sequence 0002)
Applied to: Validate All N1 Segments
Action: Entity name, address, city, state, postal code or country information is missing
Logic Flow:
IF Entity segment is for shipper (sequence 0001) or consignee (sequence 0002)
AND Entity name, address, city, state, postal code or country information is missing
THEN:
• Generate appropriate error messages for missing required fields including entity ID, name, address line 1, city, state/province, postal code and country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity segment sequence number is greater than 2 (not shipper or consignee).
Trigger Criteria:
Context: Entity segment sequence number is greater than 2 (not shipper or consignee)
Applied to: Validate All N1 Segments
Action: Entity ID code is provided but not in valid entity ID list OR is shipper, consignee, or customs broker type
Logic Flow:
IF Entity segment sequence number is greater than 2 (not shipper or consignee)
AND Entity ID code is provided but not in valid entity ID list OR is shipper, consignee, or customs broker type
THEN:
• Generate error message for invalid entity ID value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity segment contains address and contact information.
Trigger Criteria:
Context: Entity segment contains address and contact information
Applied to: Validate All N1 Segments
Action: City name has less than 2 characters OR postal code has less than 3 characters OR contact qualifier is provided without contact number OR contact number is provided without qualifier
Logic Flow:
IF Entity segment contains address and contact information
AND City name has less than 2 characters OR postal code has less than 3 characters OR contact qualifier is provided without contact number OR contact number is provided without qualifier
THEN:
• Generate appropriate error messages for minimum length requirements and incomplete contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity segment contains country code for canada, usa, or mexico.
Trigger Criteria:
Context: Entity segment contains country code for Canada, USA, or Mexico
Applied to: Validate All N1 Segments
Action: State/province code is missing OR state/province code is invalid for the specified country
Logic Flow:
IF Entity segment contains country code for Canada, USA, or Mexico
AND State/province code is missing OR state/province code is invalid for the specified country
THEN:
• Generate error message for missing or invalid state/province code, OR auto-assign country code when state/province is provided but country is missing
R-GCCCCADD-cbl-00494 (+19)File: GCCCCADD.cblBusiness Rule: Contact Information Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact information processing is starting for an entity.
Trigger Criteria:
Context: Contact information processing is starting for an entity
Applied to: Initialize Contact Fields
Action: The system begins contact information processing
Logic Flow:
IF Contact information processing is starting for an entity
AND The system begins contact information processing
THEN:
• All contact function code, person name, communication qualifier, and communication number fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact information processing is starting for an entity.
Trigger Criteria:
Context: Contact information processing is starting for an entity
Applied to: Initialize Contact Fields
Action: The system begins contact data processing
Logic Flow:
IF Contact information processing is starting for an entity
AND The system begins contact data processing
THEN:
• All contact function code, person name, communication qualifier, and communication number fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol contains per segment data for an entity.
Trigger Criteria:
Context: An EDI BOL contains PER segment data for an entity
Applied to: Retrieve PER Segment from EDI BOL
Action: The system processes contact information for that entity
Logic Flow:
IF An EDI BOL contains PER segment data for an entity
AND The system processes contact information for that entity
THEN:
• Contact function code, person name, communication number qualifier, and communication number are extracted from the PER segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact information contains a communication number qualifier.
Trigger Criteria:
Context: Contact information contains a communication number qualifier
Applied to: Validate Communication Qualifier
Action: The system validates the communication qualifier
Logic Flow:
IF Contact information contains a communication number qualifier
AND The system validates the communication qualifier
THEN:
• The qualifier must be spaces, 'FX' for fax, or 'TE' for telephone, otherwise generate validation error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact information contains a communication number qualifier.
Trigger Criteria:
Context: Contact information contains a communication number qualifier
Applied to: Communication Number Missing?
Action: The system validates communication requirements
Logic Flow:
IF Contact information contains a communication number qualifier
AND The system validates communication requirements
THEN:
• A communication number must be provided, otherwise generate a communication number required error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when contact information contains a person name.
Trigger Criteria:
Context: Contact information contains a person name
Applied to: Validate Communication Number Required
Action: The system validates contact completeness
Logic Flow:
IF Contact information contains a person name
AND The system validates contact completeness
THEN:
• Communication number qualifier must be present, otherwise generate required field error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when contact information contains a person name.
Trigger Criteria:
Context: Contact information contains a person name
Applied to: Communication Number Missing? & Contact Name or Qualifier Present?
Action: The system validates communication requirements
Logic Flow:
IF Contact information contains a person name
AND The system validates communication requirements
THEN:
• A communication number must be provided, otherwise generate a communication number required error
• A communication number qualifier must be provided, otherwise generate a qualifier required error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact information contains a communication number.
Trigger Criteria:
Context: Contact information contains a communication number
Applied to: Validate Communication Number Required
Action: The system validates contact completeness
Logic Flow:
IF Contact information contains a communication number
AND The system validates contact completeness
THEN:
• Communication number qualifier must be present, otherwise generate required field error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact information contains a communication number.
Trigger Criteria:
Context: Contact information contains a communication number
Applied to: Contact Name or Qualifier Present?
Action: The system validates communication requirements
Logic Flow:
IF Contact information contains a communication number
AND The system validates communication requirements
THEN:
• A communication number qualifier must be provided, otherwise generate a qualifier required error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when contact information contains communication number qualifier or person name.
Trigger Criteria:
Context: Contact information contains communication number qualifier or person name
Applied to: Validate Communication Number Required
Action: The system validates contact completeness
Logic Flow:
IF Contact information contains communication number qualifier or person name
AND The system validates contact completeness
THEN:
• Communication number must be present, otherwise generate required field error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact information has been validated successfully.
Trigger Criteria:
Context: Contact information has been validated successfully
Applied to: Set Contact Information in Record & Store Contact Information in Record
Action: The system processes the contact data
Logic Flow:
IF Contact information has been validated successfully
AND The system processes the contact data
THEN:
• Contact function code, person name, communication qualifier, and communication number are stored in the entity record
• The contact function code, person name, communication qualifier, and communication number are stored in the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record is being processed for contact information.
Trigger Criteria:
Context: An entity record is being processed for contact information
Applied to: EDI BOL PER Segment Available?
Action: The system checks for EDI BOL PER segment data
Logic Flow:
IF An entity record is being processed for contact information
AND The system checks for EDI BOL PER segment data
THEN:
• The system identifies whether contact information exists in the EDI source or should use default processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol per segment data is available.
Trigger Criteria:
Context: EDI BOL PER segment data is available
Applied to: Extract Contact Function Code & Extract Contact Person Name & Extract Communication Number Qualifier & Extract Communication Number
Action: The system processes contact information
Logic Flow:
IF EDI BOL PER segment data is available
AND The system processes contact information
THEN:
• The contact function code is extracted and stored in the contact function code field
• The contact person name is extracted and stored in the person name field
• The communication number qualifier is extracted and stored in the communication qualifier field
• The communication number is extracted and stored in the communication number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when communication number qualifier has been extracted from contact data.
Trigger Criteria:
Context: A communication number qualifier has been extracted from contact data
Applied to: Communication Qualifier Valid?
Action: The system validates the qualifier value
Logic Flow:
IF A communication number qualifier has been extracted from contact data
AND The system validates the qualifier value
THEN:
• The qualifier must be spaces, 'FX' for fax, or 'TE' for telephone, otherwise generate an invalid qualifier error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no edi bol per segment data is available for an entity.
Trigger Criteria:
Context: No EDI BOL PER segment data is available for an entity
Applied to: Clear Contact Fields if No Data
Action: The system processes contact information
Logic Flow:
IF No EDI BOL PER segment data is available for an entity
Business Justification: Dictates the expected operational logic and validation steps when edi bill of lading key exists for processing.
Trigger Criteria:
Context: An EDI Bill of Lading key exists for processing
Applied to: Search for EDI BOL Stuffer Segment PN
Action: The system searches for stuffer segment type 'PN' with sequence '01'
Logic Flow:
IF An EDI Bill of Lading key exists for processing
AND The system searches for stuffer segment type 'PN' with sequence '01'
THEN:
• The system retrieves stuffer name and contact information if the segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when search for stuffer segment 'pn' has been performed.
Trigger Criteria:
Context: A search for stuffer segment 'PN' has been performed
Applied to: Stuffer Segment Found?
Action: The system evaluates the search results
Logic Flow:
IF A search for stuffer segment 'PN' has been performed
AND The system evaluates the search results
THEN:
• Processing continues with stuffer data extraction if segment is found, otherwise stuffer processing is skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when stuffer segment 'pn' exists in edi bill of lading.
Trigger Criteria:
Context: Stuffer segment 'PN' exists in EDI Bill of Lading
Applied to: Extract Stuffer Name from EDI BOL
Action: The system processes the stuffer name data
Logic Flow:
IF Stuffer segment 'PN' exists in EDI Bill of Lading
AND The system processes the stuffer name data
THEN:
• The stuffer name is extracted and assigned to the entity name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when stuffer entity information is being processed.
Trigger Criteria:
Context: Stuffer entity information is being processed
Applied to: Set Entity ID as 'SF'
Action: The system creates the entity record
Logic Flow:
IF Stuffer entity information is being processed
AND The system creates the entity record
THEN:
• The entity ID is set to 'SF' to identify this as a stuffer entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when stuffer entity 'pn' segment exists and entity id is set to 'sf'.
Trigger Criteria:
Context: Stuffer entity 'PN' segment exists and entity ID is set to 'SF'
Applied to: Search for Stuffer Address Segment PA
Action: The system searches for address segment type 'PA' with sequence '01'
Logic Flow:
IF Stuffer entity 'PN' segment exists and entity ID is set to 'SF'
AND The system searches for address segment type 'PA' with sequence '01'
THEN:
• The system retrieves stuffer address information if the address segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when search for stuffer address segment 'pa' has been performed.
Trigger Criteria:
Context: A search for stuffer address segment 'PA' has been performed
Applied to: Address Segment Found?
Action: The system evaluates the address search results
Logic Flow:
IF A search for stuffer address segment 'PA' has been performed
AND The system evaluates the address search results
THEN:
• Address extraction continues if segment is found, otherwise default address is applied
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when stuffer address segment 'pa' exists in edi bill of lading.
Trigger Criteria:
Context: Stuffer address segment 'PA' exists in EDI Bill of Lading
Applied to: Extract Address Lines from EDI BOL
Action: The system processes the address data
Logic Flow:
IF Stuffer address segment 'PA' exists in EDI Bill of Lading
AND The system processes the address data
THEN:
• Address line 1 and address line 2 are extracted from the EDI segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when stuffer address segment 'pa' does not exist in edi bill of lading.
Trigger Criteria:
Context: Stuffer address segment 'PA' does not exist in EDI Bill of Lading
Applied to: Set Default Address as 'NA'
Action: The system processes address requirements
Logic Flow:
IF Stuffer address segment 'PA' does not exist in EDI Bill of Lading
AND The system processes address requirements
THEN:
• Address line 1 is set to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when stuffer address processing is complete.
Trigger Criteria:
Context: Stuffer address processing is complete
Applied to: Search for Stuffer City/State Segment PC
Action: The system searches for city/state segment type 'PC' with sequence '01'
Logic Flow:
IF Stuffer address processing is complete
AND The system searches for city/state segment type 'PC' with sequence '01'
THEN:
• The system retrieves stuffer geographic information if the segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when search for stuffer city/state segment 'pc' has been performed.
Trigger Criteria:
Context: A search for stuffer city/state segment 'PC' has been performed
Applied to: City/State Segment Found?
Action: The system evaluates the geographic search results
Logic Flow:
IF A search for stuffer city/state segment 'PC' has been performed
AND The system evaluates the geographic search results
THEN:
• Geographic data extraction continues if segment is found, otherwise contact processing begins
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when stuffer city/state segment 'pc' exists in edi bill of lading.
Trigger Criteria:
Context: Stuffer city/state segment 'PC' exists in EDI Bill of Lading
Applied to: Extract City, State, Postal, Country from EDI BOL
Action: The system processes the geographic data
Logic Flow:
IF Stuffer city/state segment 'PC' exists in EDI Bill of Lading
AND The system processes the geographic data
THEN:
• City name, state/province code, postal code and country code are extracted from the EDI segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when stuffer geographic information processing is complete.
Trigger Criteria:
Context: Stuffer geographic information processing is complete
Applied to: Search for Stuffer Contact Segment GP
Action: The system searches for contact segment type 'GP' with sequence '01'
Logic Flow:
IF Stuffer geographic information processing is complete
AND The system searches for contact segment type 'GP' with sequence '01'
THEN:
• The system retrieves stuffer contact information if the segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when search for stuffer contact segment 'gp' has been performed.
Trigger Criteria:
Context: A search for stuffer contact segment 'GP' has been performed
Applied to: Contact Segment Found?
Action: The system evaluates the contact search results
Logic Flow:
IF A search for stuffer contact segment 'GP' has been performed
AND The system evaluates the contact search results
THEN:
• Contact data extraction continues if segment is found, otherwise validation processing begins
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when stuffer contact segment 'gp' exists in edi bill of lading.
Trigger Criteria:
Context: Stuffer contact segment 'GP' exists in EDI Bill of Lading
Applied to: Extract Contact Information from EDI BOL
Action: The system processes the contact data
Logic Flow:
IF Stuffer contact segment 'GP' exists in EDI Bill of Lading
AND The system processes the contact data
THEN:
• Contact function code, person name, communication number qualifier and communication number are extracted from the EDI segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when all available stuffer information has been extracted from edi segments.
Trigger Criteria:
Context: All available stuffer information has been extracted from EDI segments
Applied to: Validate Stuffer Entity Data
Action: The system validates the stuffer entity data
Logic Flow:
IF All available stuffer information has been extracted from EDI segments
AND The system validates the stuffer entity data
THEN:
• Required field validations are performed and missing address defaults to 'NA' if not provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when stuffer entity data has been validated and is complete.
Trigger Criteria:
Context: Stuffer entity data has been validated and is complete
Applied to: Insert Stuffer Record into Customs Database
Action: The system processes the database insertion
Logic Flow:
IF Stuffer entity data has been validated and is complete
AND The system processes the database insertion
THEN:
• The stuffer record is inserted into the customs database with sequence number between 0003 and 0025
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to process stuffer entity information.
Trigger Criteria:
Context: The system needs to process stuffer entity information
Applied to: Initialize SF Segment
Action: Stuffer entity processing begins
Logic Flow:
IF The system needs to process stuffer entity information
AND Stuffer entity processing begins
THEN:
• A new stuffer segment structure is initialized with empty values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Retrieve EDI BOL Stuffer Data EBSNRSC-PN
Action: The system searches for stuffer data with entity type 'PN' and sequence '01'
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system searches for stuffer data with entity type 'PN' and sequence '01'
THEN:
• The system retrieves stuffer name data if available or sets not found status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system has attempted to retrieve stuffer name data from edi bol.
Trigger Criteria:
Context: The system has attempted to retrieve stuffer name data from EDI BOL
Applied to: Stuffer Data Found?
Action: Stuffer name data is successfully found
Logic Flow:
IF The system has attempted to retrieve stuffer name data from EDI BOL
AND Stuffer name data is successfully found
THEN:
• The system continues with stuffer entity processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system has attempted to retrieve stuffer name data from edi bol.
Trigger Criteria:
Context: The system has attempted to retrieve stuffer name data from EDI BOL
Applied to: Stuffer Data Found?
Action: No stuffer name data is found
Logic Flow:
IF The system has attempted to retrieve stuffer name data from EDI BOL
AND No stuffer name data is found
THEN:
• The system skips stuffer entity processing and continues to next entity type
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when stuffer name data has been successfully retrieved.
Trigger Criteria:
Context: Stuffer name data has been successfully retrieved
Applied to: Set Entity ID to 'SF'
Action: The system processes the stuffer entity information
Logic Flow:
IF Stuffer name data has been successfully retrieved
AND The system processes the stuffer entity information
THEN:
• The entity ID field is set to 'SF' to identify this as a stuffer entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when stuffer name data exists in the edi bol segment.
Trigger Criteria:
Context: Stuffer name data exists in the EDI BOL segment
Applied to: Extract Stuffer Name from U1-NAME
Action: The system processes the stuffer entity information
Logic Flow:
IF Stuffer name data exists in the EDI BOL segment
AND The system processes the stuffer entity information
THEN:
• The stuffer name is extracted from U1-NAME field and assigned to the entity name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when stuffer entity record is being created.
Trigger Criteria:
Context: A stuffer entity record is being created
Applied to: Clear ID Code Qualifier and ID Code
Action: The system sets up the stuffer entity fields
Logic Flow:
IF A stuffer entity record is being created
AND The system sets up the stuffer entity fields
THEN:
• The ID code qualifier and ID code fields are set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when stuffer entity processing is in progress and edi bol key exists.
Trigger Criteria:
Context: Stuffer entity processing is in progress and EDI BOL key exists
Applied to: Retrieve Stuffer Address EBSNRSA-PA
Action: The system searches for stuffer address data with type 'PA' for the stuffer entity
Logic Flow:
IF Stuffer entity processing is in progress and EDI BOL key exists
AND The system searches for stuffer address data with type 'PA' for the stuffer entity
THEN:
• The system retrieves address information if available or sets not found status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when stuffer entity processing is in progress and edi bol key exists.
Trigger Criteria:
Context: Stuffer entity processing is in progress and EDI BOL key exists
Applied to: Retrieve City/State/Postal EBSNRSA-PC
Action: The system searches for stuffer location data with type 'PC' for the stuffer entity
Logic Flow:
IF Stuffer entity processing is in progress and EDI BOL key exists
AND The system searches for stuffer location data with type 'PC' for the stuffer entity
THEN:
• The system retrieves city, state, postal, and country information if available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when stuffer entity processing is in progress and edi bol key exists.
Trigger Criteria:
Context: Stuffer entity processing is in progress and EDI BOL key exists
Applied to: Retrieve Contact Information EBSNRSA-GP
Action: The system searches for stuffer contact data with type 'GP' for the stuffer entity
Logic Flow:
IF Stuffer entity processing is in progress and EDI BOL key exists
AND The system searches for stuffer contact data with type 'GP' for the stuffer entity
THEN:
• The system retrieves contact information if available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when stuffer address data has been successfully retrieved from edi bol.
Trigger Criteria:
Context: Stuffer address data has been successfully retrieved from EDI BOL
Applied to: Extract Address Lines from U2 fields
Action: The system processes the address information
Logic Flow:
IF Stuffer address data has been successfully retrieved from EDI BOL
AND The system processes the address information
THEN:
• Address line 1 and address line 2 are extracted from U2-ADDL-NAME-ADDR-1andU2-ADDL-NAME-ADDR-2 fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when no stuffer address data is found in edi bol.
Trigger Criteria:
Context: No stuffer address data is found in EDI BOL
Applied to: Set Default 'NA' for Address
Action: The system processes stuffer address information
Logic Flow:
IF No stuffer address data is found in EDI BOL
AND The system processes stuffer address information
THEN:
• Address line 1 is set to 'NA' and address line 2 is set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when stuffer city/state data has been successfully retrieved from edi bol.
Trigger Criteria:
Context: Stuffer city/state data has been successfully retrieved from EDI BOL
Applied to: Extract City, State, Postal, Country from U4 fields
Action: The system processes the location information
Logic Flow:
IF Stuffer city/state data has been successfully retrieved from EDI BOL
AND The system processes the location information
THEN:
• City name, state/province code, postal code, and country code are extracted from U4 fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when stuffer contact data has been successfully retrieved from edi bol.
Trigger Criteria:
Context: Stuffer contact data has been successfully retrieved from EDI BOL
Applied to: Extract Contact Function, Name, Communication Details
Action: The system processes the contact information
Logic Flow:
IF Stuffer contact data has been successfully retrieved from EDI BOL
AND The system processes the contact information
THEN:
• Contact function code, contact name, communication number qualifier, and communication number are extracted from the contact segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when stuffer address information has been processed.
Trigger Criteria:
Context: Stuffer address information has been processed
Applied to: Validate Address Field Set 'NA' if Empty
Action: Address line 1 is empty or contains only spaces
Logic Flow:
IF Stuffer address information has been processed
AND Address line 1 is empty or contains only spaces
THEN:
• Address line 1 is set to 'NA' to meet customs documentation requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when stuffer entity data has been populated from edi sources.
Trigger Criteria:
Context: Stuffer entity data has been populated from EDI sources
Applied to: Validate N1 Segment Data
Action: The system validates the complete stuffer entity segment
Logic Flow:
IF Stuffer entity data has been populated from EDI sources
AND The system validates the complete stuffer entity segment
THEN:
• All required fields are validated and error messages are generated for any missing or invalid data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when stuffer entity data has been validated successfully.
Trigger Criteria:
Context: Stuffer entity data has been validated successfully
Applied to: Insert SF Entity Record into Customs Database
Action: The system saves the stuffer entity information
Logic Flow:
IF Stuffer entity data has been validated successfully
AND The system saves the stuffer entity information
THEN:
• The stuffer entity record is inserted into the customs database with entity type 'SF' and assigned sequence number
Business Justification: Ensures correct system behavior and process compliance when ultimate consignee processing is starting.
Trigger Criteria:
Context: Ultimate Consignee processing is starting
Applied to: Initialize UC Segment Record
Action: The system begins building UC segment data
Logic Flow:
IF Ultimate Consignee processing is starting
AND The system begins building UC segment data
THEN:
• A new GCSCCS55 segment record is initialized with empty values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bill of lading key exists for record 55 processing.
Trigger Criteria:
Context: An EDI Bill of Lading key exists for record 55 processing
Applied to: Search for EDI BOL UN Segment
Action: The system searches for UN segment type with sequence '01'
Logic Flow:
IF An EDI Bill of Lading key exists for record 55 processing
AND The system searches for UN segment type with sequence '01'
THEN:
• The system retrieves the Ultimate Consignee entity data if the segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol un segment is successfully retrieved.
Trigger Criteria:
Context: EDI BOL UN segment is successfully retrieved
Applied to: Extract UC Entity Data from EDI
Action: The system processes the Ultimate Consignee data
Logic Flow:
IF EDI BOL UN segment is successfully retrieved
AND The system processes the Ultimate Consignee data
THEN:
• Entity ID is set to 'UC', entity name is extracted from U1-NAME field, and ID code qualifiers are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ultimate consignee un segment has been processed.
Trigger Criteria:
Context: Ultimate Consignee UN segment has been processed
Applied to: Search for UA Address Segment
Action: The system searches for corresponding UA address segment with UN type and sequence '01'
Logic Flow:
IF Ultimate Consignee UN segment has been processed
AND The system searches for corresponding UA address segment with UN type and sequence '01'
THEN:
• The system retrieves address data if the UA segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol ua address segment is successfully retrieved.
Trigger Criteria:
Context: EDI BOL UA address segment is successfully retrieved
Applied to: Extract Address Lines from EDI
Action: The system processes the address information
Logic Flow:
IF EDI BOL UA address segment is successfully retrieved
AND The system processes the address information
THEN:
• Address line 1 is set from U2-ADDL-NAME-ADDR-1and address line 2 is set from U2-ADDL-NAME-ADDR-2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol ua address segment is not found.
Trigger Criteria:
Context: EDI BOL UA address segment is not found
Applied to: Set Default Address 'NA'
Action: The system processes Ultimate Consignee address requirements
Logic Flow:
IF EDI BOL UA address segment is not found
AND The system processes Ultimate Consignee address requirements
THEN:
• Address line 2 is cleared and address line 1 is set to 'NA' as default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ultimate consignee address processing is complete.
Trigger Criteria:
Context: Ultimate Consignee address processing is complete
Applied to: Search for UC City/State Segment
Action: The system searches for corresponding UC location segment with UN type and sequence '01'
Logic Flow:
IF Ultimate Consignee address processing is complete
AND The system searches for corresponding UC location segment with UN type and sequence '01'
THEN:
• The system retrieves location data if the UC segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ultimate consignee address processing is complete.
Trigger Criteria:
Context: Ultimate Consignee address processing is complete
Applied to: Validate Address Requirements
Action: The system validates address line 1 is empty
Logic Flow:
IF Ultimate Consignee address processing is complete
AND The system validates address line 1 is empty
THEN:
• Address line 1 is set to 'NA' to meet minimum requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol uc location segment is successfully retrieved.
Trigger Criteria:
Context: EDI BOL UC location segment is successfully retrieved
Applied to: Extract City/State/Postal/Country from EDI
Action: The system processes the location information
Logic Flow:
IF EDI BOL UC location segment is successfully retrieved
AND The system processes the location information
THEN:
• City name is set from U4-CITY-NAME, state/province code from U4-STATE-PROV-CODE, postal code from U4-POSTAL-CODE, and country code from U4-COUNTRY-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol uc location segment is not found.
Trigger Criteria:
Context: EDI BOL UC location segment is not found
Applied to: Clear City/State/Postal/Country Fields
Action: The system processes Ultimate Consignee location requirements
Logic Flow:
IF EDI BOL UC location segment is not found
AND The system processes Ultimate Consignee location requirements
THEN:
• All location fields (city name, state/province code, postal code, country code) are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ultimate consignee location processing is complete.
Trigger Criteria:
Context: Ultimate Consignee location processing is complete
Applied to: Search for GP Contact Segment
Action: The system searches for corresponding GP contact segment with UN type and sequence '01'
Logic Flow:
IF Ultimate Consignee location processing is complete
AND The system searches for corresponding GP contact segment with UN type and sequence '01'
THEN:
• The system retrieves contact data if the GP segment exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol gp contact segment is successfully retrieved.
Trigger Criteria:
Context: EDI BOL GP contact segment is successfully retrieved
Applied to: Extract Contact Information
Action: The system processes the contact information
Logic Flow:
IF EDI BOL GP contact segment is successfully retrieved
AND The system processes the contact information
THEN:
• Contact function code is set from PER-CONTACT-FUNC-CODE, contact name from PER-NAME, communication number qualifier from PER-COMMUN-NO-QUAL, and communication number from PER-COMMUN-NUMBER
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ultimate consignee segment data is populated.
Trigger Criteria:
Context: Ultimate Consignee segment data is populated
Applied to: Validate UC Segment Data
Action: The system performs N1 segment validation
Logic Flow:
IF Ultimate Consignee segment data is populated
AND The system performs N1 segment validation
THEN:
• All required fields are validated according to customs requirements and error messages are generated for missing mandatory data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ultimate consignee segment data is validated and complete.
Trigger Criteria:
Context: Ultimate Consignee segment data is validated and complete
Applied to: Insert UC Record into Database
Action: The system stores the UC record
Logic Flow:
IF Ultimate Consignee segment data is validated and complete
AND The system stores the UC record
THEN:
• The Ultimate Consignee record is inserted into the customs database with sequence numbers 0003-0025
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ultimate consignee segment is being processed.
Trigger Criteria:
Context: An Ultimate Consignee segment is being processed
Applied to: Set Entity ID to 'UC'
Action: The system processes the UN segment data
Logic Flow:
IF An Ultimate Consignee segment is being processed
AND The system processes the UN segment data
THEN:
• The entity ID code is set to 'UC' to identify this as an Ultimate Consignee record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ultimate consignee edi data is available.
Trigger Criteria:
Context: Ultimate Consignee EDI data is available
Applied to: Extract Ultimate Consignee Name
Action: The system processes the UN segment
Logic Flow:
IF Ultimate Consignee EDI data is available
AND The system processes the UN segment
THEN:
• The ultimate consignee name is extracted and assigned to the entity name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ultimate consignee address information is being processed.
Trigger Criteria:
Context: Ultimate Consignee address information is being processed
Applied to: Address Data Available?
Action: The system checks for UA address segment availability
Logic Flow:
IF Ultimate Consignee address information is being processed
AND The system checks for UA address segment availability
THEN:
• If UA address segment is found, extract address lines, otherwise set default address to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ua address segment data is available for ultimate consignee.
Trigger Criteria:
Context: UA address segment data is available for Ultimate Consignee
Applied to: Extract Address Lines 1 & 2
Action: The system processes the address information
Logic Flow:
IF UA address segment data is available for Ultimate Consignee
AND The system processes the address information
THEN:
• Address line 1 and address line 2 are extracted from the UA segment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when no ua address segment is available for ultimate consignee.
Trigger Criteria:
Context: No UA address segment is available for Ultimate Consignee
Applied to: Set Default Address to 'NA'
Action: The system processes address information
Logic Flow:
IF No UA address segment is available for Ultimate Consignee
AND The system processes address information
THEN:
• Address line 1 is set to 'NA' and address line 2 is set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ultimate consignee geographic information is being processed.
Trigger Criteria:
Context: Ultimate Consignee geographic information is being processed
Applied to: City/State Data Available?
Action: The system checks for UC city/state segment availability
Logic Flow:
IF Ultimate Consignee geographic information is being processed
AND The system checks for UC city/state segment availability
THEN:
• If UC segment is found, extract city, state, postal and country codes, otherwise clear all geographic fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when uc city/state segment data is available for ultimate consignee.
Trigger Criteria:
Context: UC city/state segment data is available for Ultimate Consignee
Applied to: Extract City Name, Extract State/Province Code, Extract Postal Code, Extract Country Code
Action: The system processes the geographic information
Logic Flow:
IF UC city/state segment data is available for Ultimate Consignee
AND The system processes the geographic information
THEN:
• City name, state/province code, postal code, and country code are extracted from the UC segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no uc city/state segment is available for ultimate consignee.
Trigger Criteria:
Context: No UC city/state segment is available for Ultimate Consignee
Applied to: Clear City/State/Postal Fields
Action: The system processes geographic information
Logic Flow:
IF No UC city/state segment is available for Ultimate Consignee
AND The system processes geographic information
THEN:
• City name, state/province code, postal code, and country code fields are set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ultimate consignee contact information is being processed.
Trigger Criteria:
Context: Ultimate Consignee contact information is being processed
Applied to: Contact Data Available?
Action: The system checks for GP contact segment availability
Logic Flow:
IF Ultimate Consignee contact information is being processed
AND The system checks for GP contact segment availability
THEN:
• If GP segment is found, extract contact function code, name, communication qualifier and number, otherwise proceed to validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when gp contact segment data is available for ultimate consignee.
Trigger Criteria:
Context: GP contact segment data is available for Ultimate Consignee
Applied to: Extract Contact Function Code, Extract Contact Name, Extract Communication Qualifier, Extract Communication Number
Action: The system processes the contact information
Logic Flow:
IF GP contact segment data is available for Ultimate Consignee
AND The system processes the contact information
THEN:
• Contact function code, contact name, communication number qualifier, and communication number are extracted from the GP segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ultimate consignee address information has been processed.
Trigger Criteria:
Context: Ultimate Consignee address information has been processed
Applied to: Validate Address Requirements
Action: The system validates address requirements
Logic Flow:
IF Ultimate Consignee address information has been processed
AND The system validates address requirements
THEN:
• If address line 1 is spaces, it is set to 'NA' to meet minimum address requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ultimate consignee entity data has been assembled.
Trigger Criteria:
Context: Ultimate Consignee entity data has been assembled
Applied to: Validate Entity Segment Data
Action: The system validates the entity segment
Logic Flow:
IF Ultimate Consignee entity data has been assembled
AND The system validates the entity segment
THEN:
• All required fields are validated according to entity segment validation rules including entity ID, name, address, and contact information requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ultimate consignee entity data has been validated successfully.
Trigger Criteria:
Context: Ultimate Consignee entity data has been validated successfully
Applied to: Insert Ultimate Consignee Record
Action: The system processes the record insertion
Logic Flow:
IF Ultimate Consignee entity data has been validated successfully
AND The system processes the record insertion
THEN:
• The Ultimate Consignee record is inserted into the customs database with sequence number between 0003 and 0025
IF The system is processing beneficial owner information
AND Starting beneficial owner segment creation
THEN:
• A new beneficial owner segment record is initialized with empty values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to search for beneficial owner transportation data.
Trigger Criteria:
Context: The system needs to search for beneficial owner transportation data
Applied to: Set BN Entity ID for Search
Action: Preparing to search transportation segments
Logic Flow:
IF The system needs to search for beneficial owner transportation data
AND Preparing to search transportation segments
THEN:
• The entity ID is set to 'BN' for beneficial owner identification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity id is set to 'bn' for beneficial owner.
Trigger Criteria:
Context: The entity ID is set to 'BN' for beneficial owner
IF The entity ID is set to 'BN' for beneficial owner
AND Searching transportation segments database
THEN:
• The system retrieves transportation segments matching the beneficial owner entity ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when search for beneficial owner transportation segments has been performed.
Trigger Criteria:
Context: A search for beneficial owner transportation segments has been performed
Applied to: BN Transportation Segment Found?
Action: Evaluating the search results
Logic Flow:
IF A search for beneficial owner transportation segments has been performed
AND Evaluating the search results
THEN:
• The system determines whether beneficial owner transportation segment data exists or processing should be skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when beneficial owner transportation segment exists.
Action: Searching EDI BOL entity segments for beneficial owner data
Logic Flow:
IF Beneficial owner transportation segment exists
AND Searching EDI BOL entity segments for beneficial owner data
THEN:
• The system retrieves beneficial owner entity information from EDI BOL segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when search for beneficial owner entity in edi bol has been performed.
Trigger Criteria:
Context: A search for beneficial owner entity in EDI BOL has been performed
Applied to: BN Entity Found in EDI BOL?
Action: Evaluating the EDI BOL search results
Logic Flow:
IF A search for beneficial owner entity in EDI BOL has been performed
AND Evaluating the EDI BOL search results
THEN:
• The system determines whether to proceed with beneficial owner processing or skip it based on entity existence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when search for beneficial owner entity in edi bol has been performed.
Trigger Criteria:
Context: A search for beneficial owner entity in EDI BOL has been performed
Applied to: BN Entity Found in EDI BOL?
Action: Checking if beneficial owner entity data exists
Logic Flow:
IF A search for beneficial owner entity in EDI BOL has been performed
AND Checking if beneficial owner entity data exists
THEN:
• If beneficial owner entity is found, proceed to extract entity details; otherwise, end beneficial owner processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when beneficial owner entity is found in edi bol.
Trigger Criteria:
Context: Beneficial owner entity is found in EDI BOL
Applied to: Set BN Entity ID Code
Action: Processing beneficial owner entity information
Logic Flow:
IF Beneficial owner entity is found in EDI BOL
AND Processing beneficial owner entity information
THEN:
• The entity ID code 'BN' is assigned to the customs segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when beneficial owner entity data is available in edi bol.
Trigger Criteria:
Context: Beneficial owner entity data is available in EDI BOL
Applied to: Extract Beneficial Owner Name
Action: Processing beneficial owner information
Logic Flow:
IF Beneficial owner entity data is available in EDI BOL
AND Processing beneficial owner information
THEN:
• The beneficial owner name is extracted and assigned to the customs segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when beneficial owner entity information is being processed.
Trigger Criteria:
Context: Beneficial owner entity information is being processed
Applied to: Set Consignee CHOP Code
Action: Setting up beneficial owner segment data
Logic Flow:
IF Beneficial owner entity information is being processed
AND Setting up beneficial owner segment data
THEN:
• The consignee CHOP code is assigned to the beneficial owner customs segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when beneficial owner entity processing is in progress.
Trigger Criteria:
Context: Beneficial owner entity processing is in progress
Applied to: Search for BN Address Segment
Action: Searching for beneficial owner address information
Logic Flow:
IF Beneficial owner entity processing is in progress
AND Searching for beneficial owner address information
THEN:
• The system retrieves address segments matching the beneficial owner entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when search for beneficial owner address has been performed.
Trigger Criteria:
Context: A search for beneficial owner address has been performed
Applied to: BN Address Found?
Action: Evaluating address search results
Logic Flow:
IF A search for beneficial owner address has been performed
AND Evaluating address search results
THEN:
• The system determines whether to use found address data or set default address values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when search for beneficial owner address has been performed.
Trigger Criteria:
Context: A search for beneficial owner address has been performed
Applied to: BN Address Found?
Action: Checking if address data exists for beneficial owner
Logic Flow:
IF A search for beneficial owner address has been performed
AND Checking if address data exists for beneficial owner
THEN:
• If address is found, extract address lines; otherwise, set default address to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when beneficial owner address segment is found in edi.
Trigger Criteria:
Context: Beneficial owner address segment is found in EDI
Applied to: Extract Address Information
Action: Processing address information
Logic Flow:
IF Beneficial owner address segment is found in EDI
AND Processing address information
THEN:
• Address line 1 and address line 2 are extracted and assigned to the customs segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when beneficial owner address segment is not found in edi.
Trigger Criteria:
Context: Beneficial owner address segment is not found in EDI
Applied to: Set Default 'NA' Address
Action: Processing address information
Logic Flow:
IF Beneficial owner address segment is not found in EDI
AND Processing address information
THEN:
• Address line 1 is set to 'NA' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when beneficial owner address processing is in progress.
Trigger Criteria:
Context: Beneficial owner address processing is in progress
Applied to: Search for BN City/State Segment
Action: Searching for city and state information
Logic Flow:
IF Beneficial owner address processing is in progress
AND Searching for city and state information
THEN:
• The system retrieves city/state segments matching the beneficial owner entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when search for beneficial owner city/state has been performed.
Trigger Criteria:
Context: A search for beneficial owner city/state has been performed
Applied to: BN City/State Found?
Action: Evaluating city/state search results
Logic Flow:
IF A search for beneficial owner city/state has been performed
AND Evaluating city/state search results
THEN:
• The system determines whether to use found city/state data or clear the city/state information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when search for beneficial owner city/state has been performed.
Trigger Criteria:
Context: A search for beneficial owner city/state has been performed
Applied to: BN City/State Found?
Action: Checking if city/state data exists for beneficial owner
Logic Flow:
IF A search for beneficial owner city/state has been performed
AND Checking if city/state data exists for beneficial owner
THEN:
• If city/state is found, extract location details; otherwise, clear city/state information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when beneficial owner city/state segment is found in edi.
Trigger Criteria:
Context: Beneficial owner city/state segment is found in EDI
Applied to: Extract City, State, Postal, Country
Action: Processing city and state information
Logic Flow:
IF Beneficial owner city/state segment is found in EDI
AND Processing city and state information
THEN:
• City name, state/province code, postal code, and country code are extracted and assigned to the customs segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when beneficial owner city/state segment is not found in edi.
Trigger Criteria:
Context: Beneficial owner city/state segment is not found in EDI
Applied to: Clear City/State Information
Action: Processing city and state information
Logic Flow:
IF Beneficial owner city/state segment is not found in EDI
AND Processing city and state information
THEN:
• City, state, postal code, and country fields are cleared in the customs segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when beneficial owner segment processing is continuing.
Trigger Criteria:
Context: Beneficial owner segment processing is continuing
Applied to: Clear Contact Information
Action: Setting up contact information
Logic Flow:
IF Beneficial owner segment processing is continuing
AND Setting up contact information
THEN:
• All contact function code, name, communication qualifier, and communication number fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when beneficial owner segment data has been populated.
Trigger Criteria:
Context: Beneficial owner segment data has been populated
Applied to: Validate BN Segment Data
Action: Validating the segment before database insertion
Logic Flow:
IF Beneficial owner segment data has been populated
AND Validating the segment before database insertion
THEN:
• The beneficial owner segment data is validated according to customs data requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when beneficial owner segment data has been validated successfully.
Trigger Criteria:
Context: Beneficial owner segment data has been validated successfully
Applied to: Insert BN Record into Customs Database
Action: Inserting the record into the customs database
Logic Flow:
IF Beneficial owner segment data has been validated successfully
AND Inserting the record into the customs database
THEN:
• The beneficial owner segment record is inserted into the customs database with sequence number between 0003 and 0025
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when beneficial owner segment data has been validated successfully.
Trigger Criteria:
Context: Beneficial owner segment data has been validated successfully
Applied to: Insert BN Record into Customs Database
Action: Storing the beneficial owner information
Logic Flow:
IF Beneficial owner segment data has been validated successfully
AND Storing the beneficial owner information
THEN:
• The beneficial owner record is inserted into the customs database with sequence numbers 0003-0025
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when beneficial owner transportation segment or entity data is not found.
Trigger Criteria:
Context: Beneficial owner transportation segment or entity data is not found
Applied to: Skip BN Processing
Action: Determining processing path
Logic Flow:
IF Beneficial owner transportation segment or entity data is not found
AND Determining processing path
THEN:
• Beneficial owner processing is skipped and the system continues to the next processing step
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to process beneficial owner information.
Trigger Criteria:
Context: The system needs to process beneficial owner information
IF The system needs to process beneficial owner information
AND Starting beneficial owner segment processing
THEN:
• A new beneficial owner segment record is initialized with empty values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when beneficial owner segment is being processed.
Trigger Criteria:
Context: A beneficial owner segment is being processed
Applied to: Set Organization ID to 'BN'
Action: Setting up the organization identifier for transportation segment search
Logic Flow:
IF A beneficial owner segment is being processed
AND Setting up the organization identifier for transportation segment search
THEN:
• The organization ID is set to 'BN' (Beneficial Owner)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when organization id is set to 'bn'.
Trigger Criteria:
Context: The organization ID is set to 'BN'
Applied to: Search for Transportation Segment with BN ID
Action: Searching for transportation segment data
Logic Flow:
IF The organization ID is set to 'BN'
AND Searching for transportation segment data
THEN:
• The system retrieves transportation segment information for beneficial owner entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when search for beneficial owner transportation segment has been performed.
Trigger Criteria:
Context: A search for beneficial owner transportation segment has been performed
Applied to: Transportation Segment Found?
Action: Checking if transportation segment data exists
Logic Flow:
IF A search for beneficial owner transportation segment has been performed
AND Checking if transportation segment data exists
THEN:
• If transportation segment is found, proceed to search for BN entity; otherwise, end beneficial owner processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation segment exists for beneficial owner.
Trigger Criteria:
Context: A transportation segment exists for beneficial owner
Applied to: Search for BN Entity in EDI BOL
Action: Searching for beneficial owner entity in EDI BOL data
Logic Flow:
IF A transportation segment exists for beneficial owner
AND Searching for beneficial owner entity in EDI BOL data
THEN:
• The system retrieves beneficial owner entity information from EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when beneficial owner entity exists in edi bol.
Trigger Criteria:
Context: Beneficial owner entity exists in EDI BOL
Applied to: Extract BN Entity Name
Action: Processing beneficial owner entity information
Logic Flow:
IF Beneficial owner entity exists in EDI BOL
AND Processing beneficial owner entity information
THEN:
• The beneficial owner entity name is extracted and stored in the segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when beneficial owner entity name has been extracted.
Trigger Criteria:
Context: Beneficial owner entity name has been extracted
Applied to: Set Entity ID to 'BN'
Action: Setting the entity classification
Logic Flow:
IF Beneficial owner entity name has been extracted
AND Setting the entity classification
THEN:
• The entity ID is set to 'BN' (Beneficial Owner)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when beneficial owner entity id has been set.
Business Justification: Establishes the required business protocol to be followed when c1 carrier entity processing request is initiated.
Trigger Criteria:
Context: A C1 carrier entity processing request is initiated
Applied to: Initialize C1 Entity Segment
Action: The system begins C1 entity segment creation
Logic Flow:
IF A C1 carrier entity processing request is initiated
AND The system begins C1 entity segment creation
THEN:
• A new C1 entity segment structure is initialized with empty values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when c1 carrier entity segment is being created.
Trigger Criteria:
Context: A C1 carrier entity segment is being created
Applied to: Set Entity Type to 'C1'
Action: The entity type needs to be specified
Logic Flow:
IF A C1 carrier entity segment is being created
AND The entity type needs to be specified
THEN:
• The entity type code is set to 'C1' to identify it as a carrier entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol transportation data is available for processing.
Trigger Criteria:
Context: EDI BOL transportation data is available for processing
Applied to: Search EDI BOL Transportation Segments
Action: The system searches for C1 carrier entity information
Logic Flow:
IF EDI BOL transportation data is available for processing
AND The system searches for C1 carrier entity information
THEN:
• The system looks up transportation segments with entity type 'C1' in the EDI BOL data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has searched edi bol transportation segments for c1 entity data.
Trigger Criteria:
Context: The system has searched EDI BOL transportation segments for C1 entity data
Applied to: C1 Entity Found in EDI BOL?
Action: Evaluating the availability of C1 carrier information
Logic Flow:
IF The system has searched EDI BOL transportation segments for C1 entity data
AND Evaluating the availability of C1 carrier information
THEN:
• If C1 entity is found in EDI BOL, use EDI data; otherwise check Fastway data source
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when c1 carrier entity data exists in edi bol transportation segments.
Trigger Criteria:
Context: C1 carrier entity data exists in EDI BOL transportation segments
Applied to: Extract Carrier Data from EDI BOL
Action: Processing carrier information from EDI source
Logic Flow:
IF C1 carrier entity data exists in EDI BOL transportation segments
AND Processing carrier information from EDI source
THEN:
• The system extracts carrier name, ID, and related data from the EDI BOL transportation segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when c1 carrier entity data is available in edi bol transportation segments.
Trigger Criteria:
Context: C1 carrier entity data is available in EDI BOL transportation segments
Applied to: Get Carrier Name and ID
Action: Extracting carrier identification information
Logic Flow:
IF C1 carrier entity data is available in EDI BOL transportation segments
AND Extracting carrier identification information
THEN:
• The carrier name is assigned to entity name field and carrier ID is assigned to entity ID field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi t2 transportation segment data is available for the carrier.
Trigger Criteria:
Context: EDI T2 transportation segment data is available for the carrier
Applied to: Get Carrier Address from T2 Segment
Action: Processing carrier address information
Logic Flow:
IF EDI T2 transportation segment data is available for the carrier
AND Processing carrier address information
THEN:
• The address lines are extracted from T2 segment and assigned to carrier address fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi ta transportation segment data is available for the carrier.
Trigger Criteria:
Context: EDI TA transportation segment data is available for the carrier
Applied to: Get Carrier City/State from TA Segment
Action: Processing carrier location information
Logic Flow:
IF EDI TA transportation segment data is available for the carrier
AND Processing carrier location information
THEN:
• The city name, state code, postal code, and country code are extracted from TA segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi t3 transportation segment data is available for the carrier.
Trigger Criteria:
Context: EDI T3 transportation segment data is available for the carrier
Applied to: Get Carrier Contact from T3 Segment
Action: Processing carrier contact information
Logic Flow:
IF EDI T3 transportation segment data is available for the carrier
AND Processing carrier contact information
THEN:
• The contact function code, contact name, communication qualifier, and communication number are extracted from T3 segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when c1 carrier entity data is not found in edi bol transportation segments.
Trigger Criteria:
Context: C1 carrier entity data is not found in EDI BOL transportation segments
Applied to: Carrier Data Available in Fastway?
Action: Evaluating alternative data sources for carrier information
Logic Flow:
IF C1 carrier entity data is not found in EDI BOL transportation segments
AND Evaluating alternative data sources for carrier information
THEN:
• If consignee data field 2 contains carrier information, use Fastway data; otherwise end C1 processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when carrier information is available in fastway consignee data and consignee data code field 2 equals 'c'.
Trigger Criteria:
Context: Carrier information is available in Fastway consignee data and consignee data code field 2 equals 'C'
Applied to: Extract Carrier from Fastway Consignee Data
Action: Processing carrier information from Fastway source
Logic Flow:
IF Carrier information is available in Fastway consignee data and consignee data code field 2 equals 'C'
AND Processing carrier information from Fastway source
THEN:
• The system extracts carrier data from consignee data fields in the shipment root
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when carrier information is being extracted from fastway consignee data.
Trigger Criteria:
Context: Carrier information is being extracted from Fastway consignee data
Applied to: Get Carrier Name from Consignee Field 2
Action: Processing carrier name from Fastway source
Logic Flow:
IF Carrier information is being extracted from Fastway consignee data
AND Processing carrier name from Fastway source
THEN:
• The carrier name is assigned from consignee data field 2 to the entity name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when carrier information is being extracted from fastway consignee data.
Trigger Criteria:
Context: Carrier information is being extracted from Fastway consignee data
Applied to: Get Carrier Address from Consignee Field 3
Action: Processing carrier address from Fastway source
Logic Flow:
IF Carrier information is being extracted from Fastway consignee data
AND Processing carrier address from Fastway source
THEN:
• The carrier address is assigned from consignee data field 3 to the address field, or 'NA' if field 3 is empty
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when carrier information is being extracted from fastway consignee data.
Trigger Criteria:
Context: Carrier information is being extracted from Fastway consignee data
Applied to: Use Consignee Address as Carrier Address
Action: Address information is needed for the carrier
Logic Flow:
IF Carrier information is being extracted from Fastway consignee data
AND Address information is needed for the carrier
THEN:
• Consignee address field 3 is used as carrier address line 1, with 'NA' default if empty, and address line 2 is cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when carrier information is being extracted from fastway consignee data field 4.
Trigger Criteria:
Context: Carrier information is being extracted from Fastway consignee data field 4
Applied to: Parse City/State/Postal from Consignee Field 4
Action: Processing carrier location information from Fastway source
Logic Flow:
IF Carrier information is being extracted from Fastway consignee data field 4
AND Processing carrier location information from Fastway source
THEN:
• The city name, state code, and postal code are parsed from consignee data field 4 and assigned to respective location fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when state or province code is available for the carrier.
Trigger Criteria:
Context: A state or province code is available for the carrier
Applied to: Lookup Country Code from State
Action: Determining the corresponding country code
Logic Flow:
IF A state or province code is available for the carrier
AND Determining the corresponding country code
THEN:
• The system searches the state-country lookup table to find the matching country code for the given state/province code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when carrier address information is being processed.
Trigger Criteria:
Context: Carrier address information is being processed
Applied to: Set Default Address if Missing
Action: The carrier address field is empty or contains only spaces
Logic Flow:
IF Carrier address information is being processed
AND The carrier address field is empty or contains only spaces
THEN:
• The address field is set to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when c1 carrier entity segment has been populated with data.
Trigger Criteria:
Context: A C1 carrier entity segment has been populated with data
Applied to: Validate C1 Entity Segment
Action: Validating the carrier entity information
Logic Flow:
IF A C1 carrier entity segment has been populated with data
AND Validating the carrier entity information
THEN:
• The system validates required fields, data formats, and business rules for the C1 entity segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when validated c1 carrier entity segment is ready for insertion.
Trigger Criteria:
Context: A validated C1 carrier entity segment is ready for insertion
Applied to: Insert C1 Entity into Customs Record
Action: Adding the carrier entity to the customs record
Logic Flow:
IF A validated C1 carrier entity segment is ready for insertion
AND Adding the carrier entity to the customs record
THEN:
• The C1 entity segment is inserted into the customs record with the appropriate sequence number between 0003 and 0025
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to process c1 carrier entity information.
Trigger Criteria:
Context: The system needs to process C1 carrier entity information
Applied to: Initialize C1 Segment
Action: C1 carrier entity processing begins
Logic Flow:
IF The system needs to process C1 carrier entity information
AND C1 carrier entity processing begins
THEN:
• A new C1 segment structure is initialized with empty values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when c1 carrier entity segment is being processed.
Trigger Criteria:
Context: A C1 carrier entity segment is being processed
Applied to: Set Organization ID to 'C1'
Action: The organization identifier needs to be set
Logic Flow:
IF A C1 carrier entity segment is being processed
AND The organization identifier needs to be set
THEN:
• The organization ID is set to 'C1' to identify this as a carrier entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Search EDI BOL Transportation Segments
Action: The system searches for C1 carrier transportation segments
Logic Flow:
IF EDI BOL data is available for processing
AND The system searches for C1 carrier transportation segments
THEN:
• Transportation segments with organization ID 'C1' are retrieved from EDI BOL data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when c1 carrier transportation segment is found in edi bol data.
Trigger Criteria:
Context: C1 carrier transportation segment is found in EDI BOL data
Applied to: Extract Carrier Information from EDI BOL
Action: Carrier information needs to be extracted
Logic Flow:
IF C1 carrier transportation segment is found in EDI BOL data
AND Carrier information needs to be extracted
THEN:
• Carrier organization ID, name, ID code qualifier, and ID code are extracted from the transportation segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when c1 carrier is found in edi bol transportation segments.
Trigger Criteria:
Context: C1 carrier is found in EDI BOL transportation segments
Applied to: Get Transportation Address Data
Action: Address information is needed for the carrier
Logic Flow:
IF C1 carrier is found in EDI BOL transportation segments
AND Address information is needed for the carrier
THEN:
• Address line 1 and address line 2 are retrieved from T2 transportation address segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when c1 carrier is found in edi bol transportation segments.
Trigger Criteria:
Context: C1 carrier is found in EDI BOL transportation segments
Applied to: Get Transportation City/State Data
Action: City and state information is needed for the carrier
Logic Flow:
IF C1 carrier is found in EDI BOL transportation segments
AND City and state information is needed for the carrier
THEN:
• City name, state/province code, postal code, and country code are retrieved from TA transportation segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when c1 carrier is found in edi bol transportation segments.
Trigger Criteria:
Context: C1 carrier is found in EDI BOL transportation segments
Applied to: Get Transportation Contact Data
Action: Contact information is needed for the carrier
Logic Flow:
IF C1 carrier is found in EDI BOL transportation segments
AND Contact information is needed for the carrier
THEN:
• Contact function code, contact name, communication number qualifier, and communication number are retrieved from T3 transportation segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when c1 carrier address information is being processed.
Trigger Criteria:
Context: C1 carrier address information is being processed
Applied to: Set Default Address if Missing
Action: The address line 1 is empty or missing
Logic Flow:
IF C1 carrier address information is being processed
AND The address line 1 is empty or missing
THEN:
• The address line 1 is set to 'NA' as a default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when c1 carrier is not found in edi bol transportation segments.
Trigger Criteria:
Context: C1 carrier is not found in EDI BOL transportation segments
Applied to: Check Fastway Consignee Data
Action: The system checks Fastway consignee data for carrier information
Logic Flow:
IF C1 carrier is not found in EDI BOL transportation segments
AND The system checks Fastway consignee data for carrier information
THEN:
• The consignee data code is evaluated to determine if it equals 'C' indicating carrier type
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when fastway consignee data code equals 'c' indicating carrier type.
Trigger Criteria:
Context: Fastway consignee data code equals 'C' indicating carrier type
Applied to: Extract Carrier from Fastway Consignee Field
Action: Carrier information needs to be extracted from Fastway data
Logic Flow:
IF Fastway consignee data code equals 'C' indicating carrier type
AND Carrier information needs to be extracted from Fastway data
THEN:
• The entity ID is set to 'C1', carrier name is extracted from consignee data field 2, and ID code qualifiers are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when fastway consignee address is being used as carrier address.
Trigger Criteria:
Context: Fastway consignee address is being used as carrier address
Applied to: Parse City/State/Postal from Address
Action: City, state, and postal code information needs to be extracted
Logic Flow:
IF Fastway consignee address is being used as carrier address
AND City, state, and postal code information needs to be extracted
THEN:
• Consignee data field 4 is parsed to extract city name, state/province code, and postal code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state/province code is available from parsed fastway address data.
Trigger Criteria:
Context: State/province code is available from parsed Fastway address data
Applied to: Lookup Country Code from State
Action: Country code needs to be determined for the carrier address
Logic Flow:
IF State/province code is available from parsed Fastway address data
AND Country code needs to be determined for the carrier address
THEN:
• The state-country lookup table is searched to find the corresponding country code for the state/province code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when c1 carrier segment data has been populated from either edi bol or fastway sources.
Trigger Criteria:
Context: C1 carrier segment data has been populated from either EDI BOL or Fastway sources
Applied to: Validate C1 Segment Data
Action: The C1 segment needs to be validated before insertion
Logic Flow:
IF C1 carrier segment data has been populated from either EDI BOL or Fastway sources
AND The C1 segment needs to be validated before insertion
THEN:
• The N1 segment validation routine is performed to check required fields and data formats
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when c1 carrier segment has been validated and is ready for insertion.
Trigger Criteria:
Context: C1 carrier segment has been validated and is ready for insertion
Applied to: Insert C1 Segment into Customs Record
Action: The segment needs to be added to the customs record
Logic Flow:
IF C1 carrier segment has been validated and is ready for insertion
AND The segment needs to be added to the customs record
THEN:
• The C1 segment is inserted into the customs record array with sequence numbers 0003-0025
R-GCCCCADD-cbl-00570 (+48)File: GCCCCADD.cblBusiness Rule: Notify Party Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system needs to process notify party information.
Trigger Criteria:
Context: The system needs to process notify party information
Applied to: Initialize N1 Segment Record
Action: Starting notify party processing
Logic Flow:
IF The system needs to process notify party information
AND Starting notify party processing
THEN:
• A new N1 segment record is initialized with empty values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when initialized n1 segment record exists.
Trigger Criteria:
Context: An initialized N1 segment record exists
Applied to: Set Entity ID to 'N1'
Action: Processing notify party entity information
Logic Flow:
IF An initialized N1 segment record exists
AND Processing notify party entity information
THEN:
• The entity ID code is set to 'N1' to identify this as a notify party record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Search EDI BOL for Transportation Segments
Action: Searching for notify party transportation segments
Logic Flow:
IF EDI BOL data is available for processing
AND Searching for notify party transportation segments
THEN:
• The system iterates through transportation segments starting from sequence 1 until found or maximum sequences reached
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when transportation segment lookup is performed.
Trigger Criteria:
Context: A transportation segment lookup is performed
Applied to: Transportation Segment Found?
Action: Checking for segment existence in EDI BOL data
Logic Flow:
IF A transportation segment lookup is performed
AND Checking for segment existence in EDI BOL data
THEN:
• If segment exists, continue processing; otherwise skip to end of notify party processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid transportation segment is found.
Trigger Criteria:
Context: A valid transportation segment is found
Applied to: Extract Organization ID from Segment
Action: Processing the segment data
Logic Flow:
IF A valid transportation segment is found
AND Processing the segment data
THEN:
• The organization ID is extracted from the D5-ORG-ID field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when organization id is extracted from transportation segment.
Trigger Criteria:
Context: An organization ID is extracted from transportation segment
Applied to: Organization ID Matches 'N1'?
Action: Validating entity type for notify party processing
Logic Flow:
IF An organization ID is extracted from transportation segment
AND Validating entity type for notify party processing
THEN:
• If organization ID equals 'N1', continue with notify party processing; otherwise search next segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when transportation segment with organization id 'n1' is found.
Trigger Criteria:
Context: A transportation segment with organization ID 'N1' is found
Applied to: Extract Entity Name
Action: Processing notify party entity information
Logic Flow:
IF A transportation segment with organization ID 'N1' is found
AND Processing notify party entity information
THEN:
• The entity name is extracted from D5-NAME field and stored in the N1 segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when notify party entity name is extracted.
Trigger Criteria:
Context: Notify party entity name is extracted
Applied to: Clear ID Code Qualifier and ID Code
Action: Setting up notify party N1 segment fields
Logic Flow:
IF Notify party entity name is extracted
AND Setting up notify party N1 segment fields
THEN:
• ID code qualifier and ID code fields are set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when notify party entity information is processed.
Trigger Criteria:
Context: Notify party entity information is processed
Applied to: Get Address Information from T2 Segment
Action: Looking for address details
Logic Flow:
IF Notify party entity information is processed
AND Looking for address details
THEN:
• System searches for T2 segment with matching sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when t2 address segment lookup is performed.
Trigger Criteria:
Context: A T2 address segment lookup is performed
Applied to: Address Segment Found?
Action: Checking for address information availability
Logic Flow:
IF A T2 address segment lookup is performed
AND Checking for address information availability
THEN:
• If T2 segment exists, extract address lines; otherwise proceed to city/state processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid t2 address segment is found.
Trigger Criteria:
Context: A valid T2 address segment is found
Applied to: Extract Address Line 1 and 2
Action: Processing address information
Logic Flow:
IF A valid T2 address segment is found
AND Processing address information
THEN:
• Address line 1 and address line 2 are extracted from D6-ADDL-NAME-ADDR-1andD6-ADDL-NAME-ADDR-2 fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address line processing is complete or skipped.
Trigger Criteria:
Context: Address line processing is complete or skipped
Applied to: Get City/State Information from TA Segment
Action: Looking for geographic location details
Logic Flow:
IF Address line processing is complete or skipped
AND Looking for geographic location details
THEN:
• System searches for TA segment with matching sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ta city/state segment lookup is performed.
Trigger Criteria:
Context: A TA city/state segment lookup is performed
Applied to: City/State Segment Found?
Action: Checking for geographic information availability
Logic Flow:
IF A TA city/state segment lookup is performed
AND Checking for geographic information availability
THEN:
• If TA segment exists, extract geographic details; otherwise proceed to contact processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid ta geographic segment is found.
Trigger Criteria:
Context: A valid TA geographic segment is found
Applied to: Extract City, State, Postal Code, Country
Action: Processing geographic information
Logic Flow:
IF A valid TA geographic segment is found
AND Processing geographic information
THEN:
• City, state, postal code, and country are extracted from D7 fields and stored in N4 segment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when geographic information processing is complete or skipped.
Trigger Criteria:
Context: Geographic information processing is complete or skipped
Applied to: Get Contact Information from T3 Segment
Action: Looking for contact person details
Logic Flow:
IF Geographic information processing is complete or skipped
AND Looking for contact person details
THEN:
• System searches for T3 segment with matching sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when t3 contact segment lookup is performed.
Trigger Criteria:
Context: A T3 contact segment lookup is performed
Applied to: Contact Segment Found?
Action: Checking for contact information availability
Logic Flow:
IF A T3 contact segment lookup is performed
AND Checking for contact information availability
THEN:
• If T3 segment exists, extract contact details; otherwise proceed to address defaulting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid t3 contact segment is found.
Trigger Criteria:
Context: A valid T3 contact segment is found
Applied to: Extract Contact Function, Name, Phone Qualifier, Phone Number
Action: Processing contact information
Logic Flow:
IF A valid T3 contact segment is found
AND Processing contact information
THEN:
• Contact function, name, phone qualifier, and phone number are extracted from PER fields and stored in PER segment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address information processing is complete.
Trigger Criteria:
Context: Address information processing is complete
Applied to: Set Default Address if Missing
Action: Address line 1 is empty or spaces
Logic Flow:
IF Address information processing is complete
AND Address line 1 is empty or spaces
THEN:
• Address line 1 is set to 'NA' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all notify party information is extracted and processed.
Trigger Criteria:
Context: All notify party information is extracted and processed
Applied to: Validate N1 Segment Data
Action: Validating segment data for customs compliance
Logic Flow:
IF All notify party information is extracted and processed
AND Validating segment data for customs compliance
THEN:
• System performs field validation checks and generates error messages for missing required data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment data validation is successful.
Trigger Criteria:
Context: N1 segment data validation is successful
Applied to: Insert N1 Record into Customs Database
Action: Storing notify party information in customs database
Logic Flow:
IF N1 segment data validation is successful
AND Storing notify party information in customs database
THEN:
• The N1 record is inserted into the customs database with sequence number between 0003-0025
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when all transportation segments have been searched.
Trigger Criteria:
Context: All transportation segments have been searched
Applied to: Skip - No N1 Entity Found
Action: No segments with organization ID 'N1' are found
Logic Flow:
IF All transportation segments have been searched
AND No segments with organization ID 'N1' are found
THEN:
• Notify party processing is skipped and control returns to main processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol transportation segments exist in the system.
Trigger Criteria:
Context: EDI BOL transportation segments exist in the system
Applied to: Search EDI BOL Transportation Segments
Action: Searching for notify party information
Logic Flow:
IF EDI BOL transportation segments exist in the system
AND Searching for notify party information
THEN:
• The system iterates through transportation segments looking for organization ID 'N1'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when search for transportation segments has been performed.
Trigger Criteria:
Context: A search for transportation segments has been performed
Applied to: Transportation Segment Found?
Action: Checking if transportation segment data is available
Logic Flow:
IF A search for transportation segments has been performed
AND Checking if transportation segment data is available
THEN:
• Processing continues if segment found, otherwise notify party processing ends
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when transportation segment has been found.
Trigger Criteria:
Context: A transportation segment has been found
Applied to: Extract Organization ID
Action: Processing the segment data
Logic Flow:
IF A transportation segment has been found
AND Processing the segment data
THEN:
• The organization ID is extracted from the segment for entity type validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when organization id has been extracted from transportation segment.
Trigger Criteria:
Context: An organization ID has been extracted from transportation segment
Applied to: Organization ID = 'N1'?
Action: Validating the entity type
Logic Flow:
IF An organization ID has been extracted from transportation segment
AND Validating the entity type
THEN:
• Processing continues if organization ID equals 'N1', otherwise the segment is skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when transportation segment with organization id 'n1' has been found.
Trigger Criteria:
Context: A transportation segment with organization ID 'N1' has been found
Applied to: Extract Entity Name
Action: Processing the N1 entity data
Logic Flow:
IF A transportation segment with organization ID 'N1' has been found
AND Processing the N1 entity data
THEN:
• The entity name is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 entity record is being processed.
Trigger Criteria:
Context: An N1 entity record is being processed
Applied to: Clear ID Code Qualifier and ID Code
Action: Setting up the entity identification fields
Logic Flow:
IF An N1 entity record is being processed
AND Setting up the entity identification fields
THEN:
• Both ID code qualifier and ID code fields are set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 transportation entity has been processed.
Trigger Criteria:
Context: An N1 transportation entity has been processed
Applied to: Get Transportation Address Segment T2
Action: Retrieving address information for the entity
Logic Flow:
IF An N1 transportation entity has been processed
AND Retrieving address information for the entity
THEN:
• The system attempts to get the corresponding T2 address segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when request for t2 address segment has been made.
Trigger Criteria:
Context: A request for T2 address segment has been made
Applied to: Address Segment Found?
Action: Checking if address data is available
Logic Flow:
IF A request for T2 address segment has been made
AND Checking if address data is available
THEN:
• Address processing continues if T2 segment found, otherwise skip to city/state processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when t2 address segment has been found.
Trigger Criteria:
Context: A T2 address segment has been found
Applied to: Extract Address Line 1
Action: Processing address information
Logic Flow:
IF A T2 address segment has been found
AND Processing address information
THEN:
• The first address line is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when t2 address segment has been found and address line 1 processed.
Trigger Criteria:
Context: A T2 address segment has been found and address line 1 processed
Applied to: Extract Address Line 2
Action: Processing additional address information
Logic Flow:
IF A T2 address segment has been found and address line 1 processed
AND Processing additional address information
THEN:
• The second address line is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when address processing has been completed or skipped.
Trigger Criteria:
Context: Address processing has been completed or skipped
Applied to: Get Transportation City/State Segment TA
Action: Retrieving city and state information for the entity
Logic Flow:
IF Address processing has been completed or skipped
AND Retrieving city and state information for the entity
THEN:
• The system attempts to get the corresponding TA city/state segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when request for ta city/state segment has been made.
Trigger Criteria:
Context: A request for TA city/state segment has been made
Applied to: City/State Segment Found?
Action: Checking if city/state data is available
Logic Flow:
IF A request for TA city/state segment has been made
AND Checking if city/state data is available
THEN:
• City/state processing continues if TA segment found, otherwise skip to contact processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ta city/state segment has been found.
Trigger Criteria:
Context: A TA city/state segment has been found
Applied to: Extract City Name
Action: Processing city information
Logic Flow:
IF A TA city/state segment has been found
AND Processing city information
THEN:
• The city name is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ta city/state segment has been found and city processed.
Trigger Criteria:
Context: A TA city/state segment has been found and city processed
Applied to: Extract State/Province Code
Action: Processing state/province information
Logic Flow:
IF A TA city/state segment has been found and city processed
AND Processing state/province information
THEN:
• The state/province code is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ta city/state segment has been found and state/province processed.
Trigger Criteria:
Context: A TA city/state segment has been found and state/province processed
Applied to: Extract Postal Code
Action: Processing postal code information
Logic Flow:
IF A TA city/state segment has been found and state/province processed
AND Processing postal code information
THEN:
• The postal code is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ta city/state segment has been found and postal code processed.
Trigger Criteria:
Context: A TA city/state segment has been found and postal code processed
Applied to: Extract Country Code
Action: Processing country information
Logic Flow:
IF A TA city/state segment has been found and postal code processed
AND Processing country information
THEN:
• The country code is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when city/state processing has been completed or skipped.
Trigger Criteria:
Context: City/state processing has been completed or skipped
Applied to: Get Transportation Contact Segment T3
Action: Retrieving contact information for the entity
Logic Flow:
IF City/state processing has been completed or skipped
AND Retrieving contact information for the entity
THEN:
• The system attempts to get the corresponding T3 contact segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when request for t3 contact segment has been made.
Trigger Criteria:
Context: A request for T3 contact segment has been made
Applied to: Contact Segment Found?
Action: Checking if contact data is available
Logic Flow:
IF A request for T3 contact segment has been made
AND Checking if contact data is available
THEN:
• Contact processing continues if T3 segment found, otherwise skip to address defaulting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when t3 contact segment has been found.
Trigger Criteria:
Context: A T3 contact segment has been found
Applied to: Extract Contact Function Code
Action: Processing contact function information
Logic Flow:
IF A T3 contact segment has been found
AND Processing contact function information
THEN:
• The contact function code is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when t3 contact segment has been found and contact function processed.
Trigger Criteria:
Context: A T3 contact segment has been found and contact function processed
Applied to: Extract Contact Name
Action: Processing contact name information
Logic Flow:
IF A T3 contact segment has been found and contact function processed
AND Processing contact name information
THEN:
• The contact name is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when t3 contact segment has been found and contact name processed.
Trigger Criteria:
Context: A T3 contact segment has been found and contact name processed
Applied to: Extract Communication Number Qualifier
Action: Processing communication qualifier information
Logic Flow:
IF A T3 contact segment has been found and contact name processed
AND Processing communication qualifier information
THEN:
• The communication number qualifier is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when t3 contact segment has been found and communication qualifier processed.
Trigger Criteria:
Context: A T3 contact segment has been found and communication qualifier processed
Applied to: Extract Communication Number
Action: Processing communication number information
Logic Flow:
IF A T3 contact segment has been found and communication qualifier processed
AND Processing communication number information
THEN:
• The communication number is extracted and stored in the N1 segment record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when all segment processing has been completed.
Trigger Criteria:
Context: All segment processing has been completed
Applied to: Set Default Address if Missing
Action: The first address line is empty or spaces
Logic Flow:
IF All segment processing has been completed
AND The first address line is empty or spaces
THEN:
• The first address line is set to 'NA' as a default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment record has been populated with entity data.
Trigger Criteria:
Context: An N1 segment record has been populated with entity data
Applied to: Validate N1 Segment Data
Action: Validating the segment before database insertion
Logic Flow:
IF An N1 segment record has been populated with entity data
AND Validating the segment before database insertion
THEN:
• All required fields are validated and any validation errors are recorded
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when validated n1 segment record exists.
Trigger Criteria:
Context: A validated N1 segment record exists
Applied to: Insert N1 Record into Customs Database
Action: Inserting the record into the customs database
Logic Flow:
IF A validated N1 segment record exists
AND Inserting the record into the customs database
THEN:
• The N1 record is successfully stored in the GCSCCS55 customs database table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when transportation segment has been found with an organization id.
Trigger Criteria:
Context: A transportation segment has been found with an organization ID
Applied to: Skip - Not N1 Entity
Action: The organization ID is not equal to 'N1'
Logic Flow:
IF A transportation segment has been found with an organization ID
AND The organization ID is not equal to 'N1'
THEN:
• The segment is skipped and processing continues with the next segment
Business Justification: Governs the functional prerequisites and system routing when mcoa segment processing is starting.
Trigger Criteria:
Context: MCOA segment processing is starting
Applied to: Initialize Empty N1 Segment
Action: the system begins to process PF or SS entity segments
Logic Flow:
IF MCOA segment processing is starting
AND the system begins to process PF or SS entity segments
THEN:
• an empty N1 segment structure is initialized with spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when mcoa segment processing is starting.
Trigger Criteria:
Context: MCOA segment processing is starting
Applied to: Initialize Entity Segment
Action: the system begins to build PF or SS entity segments
Logic Flow:
IF MCOA segment processing is starting
AND the system begins to build PF or SS entity segments
THEN:
• the entity segment data structure is initialized to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when sequence number for mcoa segment processing.
Trigger Criteria:
Context: a sequence number for MCOA segment processing
Applied to: Retrieve MCOA Segment by Sequence Number
Action: the system attempts to retrieve MCOA segment data
Logic Flow:
IF a sequence number for MCOA segment processing
AND the system attempts to retrieve MCOA segment data
THEN:
• the system calls EBCLGIO to fetch EBSMCOA segment with type 'OT' using the sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when attempt to retrieve mcoa segment data.
Trigger Criteria:
Context: an attempt to retrieve MCOA segment data
Applied to: MCOA Segment Found?
Action: the system checks the retrieval result
Logic Flow:
IF an attempt to retrieve MCOA segment data
AND the system checks the retrieval result
THEN:
• if status code is spaces and segment type equals 'OT', set MCOA found flag to true, otherwise set to false
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when successfully retrieved mcoa segment.
Trigger Criteria:
Context: a successfully retrieved MCOA segment
Applied to: Entity Type is PF or SS?
Action: the system checks the organization ID in the segment
Logic Flow:
IF a successfully retrieved MCOA segment
AND the system checks the organization ID in the segment
THEN:
• ifF5-ORG-ID equals 'PF' or 'SS', continue processing, otherwise skip to next sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid mcoa segment with pf or ss entity type.
Trigger Criteria:
Context: a valid MCOA segment with PF or SS entity type
Applied to: Extract Entity Information
Action: the system processes the entity information
Logic Flow:
IF a valid MCOA segment with PF or SS entity type
AND the system processes the entity information
THEN:
• extract organization ID, name, ID code qualifier, and ID code from F5 fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when extracted entity information from mcoa segment.
Trigger Criteria:
Context: extracted entity information from MCOA segment
Applied to: Set Entity ID Code & Set Entity Name & Set ID Code Qualifier & Set ID Code
Action: the system populates the N1 segment
Logic Flow:
IF extracted entity information from MCOA segment
AND the system populates the N1 segment
THEN:
• move F5-ORG-ID to GCCS-N101-ENTITY-ID-CDE
• move F5-NAME to GCCS-N102-NAME
• move F5-ID-CODE-QUAL to GCCS-N103-ID-CDE-QUAL
• move F5-ID-CODE to GCCS-N104-ID-CDE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when processing pf or ss entity from mcoa segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: processing PF or SS entity from MCOA segment
Applied to: Extract Entity Information
Action: the system sets up the N1 segment
Logic Flow:
IF processing PF or SS entity from MCOA segment
AND the system sets up the N1 segment
THEN:
• move spaces to GCCS-SC301-CHOP-CDE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid mcoa entity segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: a valid MCOA entity segment
Applied to: Retrieve Address Information
Action: the system needs address information
Logic Flow:
IF a valid MCOA entity segment
AND the system needs address information
THEN:
• call EBCLGIO to retrieve EBSMCOA segment with type 'ON' using the same sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid mcoa entity segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: a valid MCOA entity segment
Applied to: Retrieve City/State Information
Action: the system needs city and state information
Logic Flow:
IF a valid MCOA entity segment
AND the system needs city and state information
THEN:
• call EBCLGIO to retrieve EBSMCOA segment with type 'OC' using the same sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when attempt to retrieve address segment.
Trigger Criteria:
Context: an attempt to retrieve address segment
Applied to: Address Segment Found?
Action: the system checks the retrieval result
Logic Flow:
IF an attempt to retrieve address segment
AND the system checks the retrieval result
THEN:
• if status code is spaces, set address found flag to true, otherwise set to false
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when successfully retrieved address segment.
Trigger Criteria:
Context: a successfully retrieved address segment
Applied to: Extract Address Line 1, Extract Address Line 2
Action: the system processes address information
Logic Flow:
IF a successfully retrieved address segment
AND the system processes address information
THEN:
• move F6-ADDL-NAME-ADDR-1 to GCCS-N301-ADDRESS-INFO-1andF6-ADDL-NAME-ADDR-2 to GCCS-N302-ADDRESS-INFO-2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address segment retrieval failed.
Trigger Criteria:
Context: address segment retrieval failed
Applied to: Set Default Address as 'NA'
Action: the system needs to populate address fields
Logic Flow:
IF address segment retrieval failed
AND the system needs to populate address fields
THEN:
• move 'NA' to GCCS-N301-ADDRESS-INFO-1and spaces to GCCS-N302-ADDRESS-INFO-2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when attempt to retrieve city/state segment.
Trigger Criteria:
Context: an attempt to retrieve city/state segment
Applied to: City/State Segment Found?
Action: the system checks the retrieval result
Logic Flow:
IF an attempt to retrieve city/state segment
AND the system checks the retrieval result
THEN:
• if status code is spaces, set city/state found flag to true, otherwise set to false
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when successfully retrieved city/state segment.
Trigger Criteria:
Context: a successfully retrieved city/state segment
Applied to: Extract City Name, Extract State/Province Code, Extract Postal Code, Extract Country Code
Action: the system processes geographic information
Logic Flow:
IF a successfully retrieved city/state segment
AND the system processes geographic information
THEN:
• move F7-CITY-NAME to GCCS-N401-CITY-NAME, F7-STATE-PROV-CODE to GCCS-N402-STATE-PROV-CDE, F7-POSTAL-CODE to GCCS-N403-POSTAL-CDE, andF7-COUNTRY-CODE to GCCS-N404-COUNTRY-CDE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when city/state segment retrieval failed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: city/state segment retrieval failed
Applied to: Clear City/State Information
Action: the system needs to populate geographic fields
Logic Flow:
IF city/state segment retrieval failed
AND the system needs to populate geographic fields
THEN:
• move spaces to GCCS-N401-CITY-NAME, GCCS-N402-STATE-PROV-CDE, GCCS-N403-POSTAL-CDE, andGCCS-N404-COUNTRY-CDE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when completed n1 segment with entity and address information.
Trigger Criteria:
Context: a completed N1 segment with entity and address information
Applied to: Validate N1 Segment Data
Action: the system validates the segment data
Logic Flow:
IF a completed N1 segment with entity and address information
AND the system validates the segment data
THEN:
• perform Y100-EDIT-N1-SEGMENT to validate all required fields and data integrity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when validated n1 segment.
Trigger Criteria:
Context: a validated N1 segment
Applied to: Insert N1 Segment into Database
Action: the system stores the segment data
Logic Flow:
IF a validated N1 segment
AND the system stores the segment data
THEN:
• perform Z950-ISRT-GCSCCS55-0003-0025 to insert the segment into GCSCCS55 database with sequence numbers 0003-0025
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when completion of current mcoa segment processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: completion of current MCOA segment processing
Applied to: Increment Sequence Counter
Action: the system continues the processing loop
Logic Flow:
IF completion of current MCOA segment processing
AND the system continues the processing loop
THEN:
• increment WS-MCOA-SEQ-NBRand continue until SW-EBSMCOA-NOT-FOUND is true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol key and mcoa sequence number are available.
Trigger Criteria:
Context: an EDI BOL key and MCOA sequence number are available
Applied to: Retrieve MCOA Segment Data
Action: the system retrieves MCOA segment data with type 'OT'
Logic Flow:
IF an EDI BOL key and MCOA sequence number are available
AND the system retrieves MCOA segment data with type 'OT'
THEN:
• the MCOA segment is fetched from the EDI database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mcoa segment retrieval has been attempted.
Trigger Criteria:
Context: MCOA segment retrieval has been attempted
Applied to: MCOA Segment Found?
Action: the system checks if segment data exists and type equals 'OT'
Logic Flow:
IF MCOA segment retrieval has been attempted
AND the system checks if segment data exists and type equals 'OT'
THEN:
• processing continues if segment is found, otherwise moves to next sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid mcoa segment has been found.
Trigger Criteria:
Context: a valid MCOA segment has been found
Applied to: Entity Type is PF or SS?
Action: the entity organization ID is checked
Logic Flow:
IF a valid MCOA segment has been found
AND the entity organization ID is checked
THEN:
• processing continues only if the entity type is 'PF' or 'SS'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when mcoa segment with entity type pf or ss.
Trigger Criteria:
Context: a MCOA segment with entity type PF or SS
Applied to: Extract Entity Information
Action: entity information is extracted
Logic Flow:
IF a MCOA segment with entity type PF or SS
AND entity information is extracted
THEN:
• entity ID, name, ID code qualifier, and ID code are captured from the segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mcoa segment data with valid entity information.
Trigger Criteria:
Context: MCOA segment data with valid entity information
Applied to: Set Entity ID and Name
Action: entity identification fields are populated
Logic Flow:
IF MCOA segment data with valid entity information
AND entity identification fields are populated
THEN:
• the entity ID code is set to the organization ID and entity name is set to the organization name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mcoa segment with entity identification data.
Trigger Criteria:
Context: MCOA segment with entity identification data
Applied to: Set ID Code Qualifier and Code
Action: ID code fields are populated
Logic Flow:
IF MCOA segment with entity identification data
AND ID code fields are populated
THEN:
• the ID code qualifier and ID code are set from the MCOA segment, and CHOP code is cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid mcoa entity with the current sequence number.
Trigger Criteria:
Context: a valid MCOA entity with the current sequence number
Applied to: Retrieve Address Information
Action: address information is retrieved using MCOA ON segment type
Logic Flow:
IF a valid MCOA entity with the current sequence number
AND address information is retrieved using MCOA ON segment type
THEN:
• address data is fetched from the EDI database for the entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid mcoa entity with the current sequence number.
Trigger Criteria:
Context: a valid MCOA entity with the current sequence number
Applied to: Retrieve City/State Information
Action: city and state information is retrieved using MCOA OC segment type
Logic Flow:
IF a valid MCOA entity with the current sequence number
AND city and state information is retrieved using MCOA OC segment type
THEN:
• geographic data is fetched from the EDI database for the entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when address information retrieval has been attempted.
Trigger Criteria:
Context: address information retrieval has been attempted
Applied to: Address Data Found?
Action: the system checks if MCOA ON segment data exists
Logic Flow:
IF address information retrieval has been attempted
AND the system checks if MCOA ON segment data exists
THEN:
• address processing continues if data is found, otherwise default address is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid mcoa on segment address data.
Trigger Criteria:
Context: valid MCOA ON segment address data
Applied to: Set Address Lines from MCOA
Action: address fields are populated
Logic Flow:
IF valid MCOA ON segment address data
AND address fields are populated
THEN:
• address line 1 and address line 2 are set from the MCOA segment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mcoa on segment address data is not found.
Trigger Criteria:
Context: MCOA ON segment address data is not found
Applied to: Set Default Address as 'NA'
Action: address fields need to be populated
Logic Flow:
IF MCOA ON segment address data is not found
AND address fields need to be populated
THEN:
• address line 1 is set to 'NA' and address line 2 is cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when city/state information retrieval has been attempted.
Trigger Criteria:
Context: city/state information retrieval has been attempted
Applied to: City/State Data Found?
Action: the system checks if MCOA OC segment data exists
Logic Flow:
IF city/state information retrieval has been attempted
AND the system checks if MCOA OC segment data exists
THEN:
• geographic data processing continues if found, otherwise fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid mcoa oc segment geographic data.
Trigger Criteria:
Context: valid MCOA OC segment geographic data
Applied to: Set City, State, Postal, Country
Action: geographic fields are populated
Logic Flow:
IF valid MCOA OC segment geographic data
AND geographic fields are populated
THEN:
• city name, state/province code, postal code, and country code are set from MCOA segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mcoa oc segment geographic data is not found.
Trigger Criteria:
Context: MCOA OC segment geographic data is not found
Applied to: Clear City/State Fields
Action: geographic fields need to be populated
Logic Flow:
IF MCOA OC segment geographic data is not found
AND geographic fields need to be populated
THEN:
• city name, state/province code, postal code, and country code are all cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when completed entity segment with all available data.
Trigger Criteria:
Context: a completed entity segment with all available data
Applied to: Validate Entity Segment
Action: entity segment validation is performed
Logic Flow:
IF a completed entity segment with all available data
AND entity segment validation is performed
THEN:
• the segment is validated according to N1 segment validation rules
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when validated entity segment.
Trigger Criteria:
Context: a validated entity segment
Applied to: Insert Entity Record
Action: the entity record is inserted
Logic Flow:
IF a validated entity segment
AND the entity record is inserted
THEN:
• the segment is stored in the GCSCCS55 table with sequence numbers 0003-0025
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current mcoa sequence processing is complete.
Trigger Criteria:
Context: current MCOA sequence processing is complete
Applied to: Process Next MCOA Sequence
Action: the system checks for additional sequences
Logic Flow:
IF current MCOA sequence processing is complete
AND the system checks for additional sequences
THEN:
• the MCOA sequence number is incremented for next iteration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mcoa sequence processing loop is active.
Trigger Criteria:
Context: MCOA sequence processing loop is active
Applied to: More MCOA Sequences?
Action: the system checks for more sequences to process
Logic Flow:
IF MCOA sequence processing loop is active
AND the system checks for more sequences to process
THEN:
• processing continues if more MCOA sequences are found, otherwise processing ends
Business Justification: Ensures correct system behavior and process compliance when customs manifest is being created and entity type 11 processing is required.
Trigger Criteria:
Context: A customs manifest is being created and entity type 11 processing is required
Applied to: Build 11 Entity Segment
Action: The system searches for EDI BOL TN segment with entity type 11
Logic Flow:
IF A customs manifest is being created and entity type 11 processing is required
AND The system searches for EDI BOL TN segment with entity type 11
THEN:
• If found, the system processes the entity data and creates a record 55 segment, otherwise skips to next entity type
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when nn entity processing is initiated with sequence number starting from 1.
Trigger Criteria:
Context: NN entity processing is initiated with sequence number starting from 1
Applied to: Build NN Entity Segments
Action: The system searches for EDI BOL NN segments incrementally by sequence number
Logic Flow:
IF NN entity processing is initiated with sequence number starting from 1
AND The system searches for EDI BOL NN segments incrementally by sequence number
THEN:
• The system continues processing each found NN segment until no more segments exist
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when nn entity segment is found in edi bol data.
Trigger Criteria:
Context: An NN entity segment is found in EDI BOL data
Applied to: Validate NN Entity ID Code
Action: The system checks the entity ID code against valid entity ID values
Logic Flow:
IF An NN entity segment is found in EDI BOL data
AND The system checks the entity ID code against valid entity ID values
THEN:
• If the entity ID is valid, processing continues; if invalid, the entity is skipped and importer data is cleared if no S55 importer found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid nn entity segment is found with acceptable entity id code.
Trigger Criteria:
Context: A valid NN entity segment is found with acceptable entity ID code
Applied to: Process NN Entity Data from EDI
Action: The system processes the NN entity data
Logic Flow:
IF A valid NN entity segment is found with acceptable entity ID code
AND The system processes the NN entity data
THEN:
• The system extracts entity name, consignee chop code, and builds address and contact information for the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when nn entity is being processed and address information is needed.
Trigger Criteria:
Context: An NN entity is being processed and address information is needed
Applied to: Get NN Address Information
Action: The system searches for corresponding address segments (GC type)
Logic Flow:
IF An NN entity is being processed and address information is needed
AND The system searches for corresponding address segments (GC type)
THEN:
• If address segments are found, the system extracts address lines; if not found or address line 1 is empty, sets default 'NA' value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when nn entity is being processed and geographic information is needed.
Trigger Criteria:
Context: An NN entity is being processed and geographic information is needed
Applied to: Get NN City/State Information
Action: The system searches for corresponding geographic segments (GA type)
Logic Flow:
IF An NN entity is being processed and geographic information is needed
AND The system searches for corresponding geographic segments (GA type)
THEN:
• If geographic segments are found, the system extracts city, state, postal code, and country; if not found, clears all geographic data fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc entity processing is required for the customs manifest.
Trigger Criteria:
Context: MC entity processing is required for the customs manifest
Applied to: Build MC Entity Segment
Action: The system searches for EDI BOL TN segment with entity type MC
Logic Flow:
IF MC entity processing is required for the customs manifest
AND The system searches for EDI BOL TN segment with entity type MC
THEN:
• If found, the system processes the MC entity data and creates a record 55 segment, otherwise continues to next entity type
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when oo entity processing is required for the customs manifest.
Trigger Criteria:
Context: OO entity processing is required for the customs manifest
Applied to: Build OO Entity Segment
Action: The system searches for EDI BOL TN segment with entity type OO
Logic Flow:
IF OO entity processing is required for the customs manifest
AND The system searches for EDI BOL TN segment with entity type OO
THEN:
• If found, the system processes the OO entity data and creates a record 55 segment, otherwise continues to next entity type
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when fw entity processing is required for the customs manifest.
Trigger Criteria:
Context: FW entity processing is required for the customs manifest
Applied to: Build FW Entity Segment
Action: The system searches for EDI BOL TN segment with entity type FW
Logic Flow:
IF FW entity processing is required for the customs manifest
AND The system searches for EDI BOL TN segment with entity type FW
THEN:
• If found, the system processes the FW entity data and creates a record 55 segment, completing additional entity processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer data was found in previous processing steps and nn entity has invalid entity id.
Trigger Criteria:
Context: Importer data was found in previous processing steps and NN entity has invalid entity ID
Applied to: Skip Entity Processing
Action: The system encounters an invalid NN entity ID code
Logic Flow:
IF Importer data was found in previous processing steps and NN entity has invalid entity ID
AND The system encounters an invalid NN entity ID code
THEN:
• The system retains the previously found importer data and sets importer found flag, skipping current NN entity processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when customs manifest is being processed and entity type 11 data may exist in edi bol transportation segments.
Trigger Criteria:
Context: A customs manifest is being processed and entity type 11 data may exist in EDI BOL transportation segments
Applied to: Build 11 Entity Segment
Action: The system searches for EDI BOL TN segments with entity type 11 and finds matching data
Logic Flow:
IF A customs manifest is being processed and entity type 11 data may exist in EDI BOL transportation segments
AND The system searches for EDI BOL TN segments with entity type 11 and finds matching data
THEN:
• The system creates a customs database record with entity type 11 information including name, address, city/state, and contact details
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when nn entity segments are found in edi bol data with various entity id codes.
Trigger Criteria:
Context: NN entity segments are found in EDI BOL data with various entity ID codes
Applied to: Validate Entity ID Code
Action: The system validates the entity ID code against the list of valid entity values
Logic Flow:
IF NN entity segments are found in EDI BOL data with various entity ID codes
AND The system validates the entity ID code against the list of valid entity values
THEN:
• Only entities with valid ID codes (specific predefined values) are processed and invalid entities are skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid nn entity segments exist in edi bol data with corresponding address and contact segments.
Trigger Criteria:
Context: Valid NN entity segments exist in EDI BOL data with corresponding address and contact segments
Applied to: Process NN Entity Data
Action: The system processes NN entity data and retrieves associated GC and GA address segments
Logic Flow:
IF Valid NN entity segments exist in EDI BOL data with corresponding address and contact segments
AND The system processes NN entity data and retrieves associated GC and GA address segments
THEN:
• The system creates a complete entity record with name from NN segment, address from GC segment, city/state/postal/country from GA segment, and inserts it into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs manifest requires motor carrier information and mc entity data may exist in edi bol.
Trigger Criteria:
Context: A customs manifest requires Motor Carrier information and MC entity data may exist in EDI BOL
Applied to: Build MC Entity Segment
Action: The system searches for EDI BOL TN segments with entity type MC and finds matching data
Logic Flow:
IF A customs manifest requires Motor Carrier information and MC entity data may exist in EDI BOL
AND The system searches for EDI BOL TN segments with entity type MC and finds matching data
THEN:
• The system processes the MC entity data and creates a customs database record with Motor Carrier information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs manifest may contain other organization information and oo entity data exists in edi bol.
Trigger Criteria:
Context: A customs manifest may contain Other Organization information and OO entity data exists in EDI BOL
Applied to: Build OO Entity Segment
Action: The system searches for EDI BOL TN segments with entity type OO and finds matching data
Logic Flow:
IF A customs manifest may contain Other Organization information and OO entity data exists in EDI BOL
AND The system searches for EDI BOL TN segments with entity type OO and finds matching data
THEN:
• The system processes the OO entity data and creates a customs database record with Other Organization information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when customs manifest may contain freight forwarder information and fw entity data exists in edi bol.
Trigger Criteria:
Context: A customs manifest may contain Freight Forwarder information and FW entity data exists in EDI BOL
Applied to: Build FW Entity Segment
Action: The system searches for EDI BOL TN segments with entity type FW and finds matching data
Logic Flow:
IF A customs manifest may contain Freight Forwarder information and FW entity data exists in EDI BOL
AND The system searches for EDI BOL TN segments with entity type FW and finds matching data
THEN:
• The system processes the FW entity data and creates a customs database record with Freight Forwarder information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity data has been processed and validated for any entity type (11, nn, mc, oo, fw).
Trigger Criteria:
Context: Entity data has been processed and validated for any entity type (11, NN, MC, OO, FW)
Applied to: Insert Entity Record into Customs Database
Action: The system completes entity data processing and validation
Logic Flow:
IF Entity data has been processed and validated for any entity type (11, NN, MC, OO, FW)
AND The system completes entity data processing and validation
THEN:
• The system assigns the next available sequence number, validates the complete entity record, and inserts it into the customs database (GCSCCS55)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer data was previously found and stored during earlier processing and nn entity processing is occurring.
Trigger Criteria:
Context: Importer data was previously found and stored during earlier processing and NN entity processing is occurring
Applied to: Process NN Entity Data
Action: The system encounters NN entity data and importer information already exists from previous processing
Logic Flow:
IF Importer data was previously found and stored during earlier processing and NN entity processing is occurring
AND The system encounters NN entity data and importer information already exists from previous processing
THEN:
• The system retains the existing importer data, sets importer found flag, and does not clear the importer information
R-GCCCCADD-cbl-00622 (+24)File: GCCCCADD.cblBusiness Rule: Original Importer Data Retention
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when waybill is being processed with importer information.
Trigger Criteria:
Context: A waybill is being processed with importer information
Applied to: Check if Corrector EDI with Existing Importer Data
Action: The system checks if importer name, business number, and business number qualifier are all present
Logic Flow:
IF A waybill is being processed with importer information
AND The system checks if importer name, business number, and business number qualifier are all present
THEN:
• The system should identify if existing importer data exists and set appropriate processing flags
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when existing importer data has been identified for processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Existing importer data has been identified for processing
Applied to: Read Existing Importer Record from Customs Database
Action: The system searches through sequence numbers 3 to 24 for importer entity records
Logic Flow:
IF Existing importer data has been identified for processing
AND The system searches through sequence numbers 3 to 24 for importer entity records
THEN:
• The system should retrieve the importer record with entity ID 'IM' and extract all importer details
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when existing importer record has been found with entity id 'im'.
Trigger Criteria:
Context: An existing importer record has been found with entity ID 'IM'
Applied to: Store Original Importer Name & Store Original Business Qualifier & Store Original Business Number & Store Original CSA Indicator & Store Original Address Information & Store Original Contact Details
Action: The system processes the importer record data
Logic Flow:
IF An existing importer record has been found with entity ID 'IM'
AND The system processes the importer record data
THEN:
• The system should backup the CHOP code to temporary storage for later restoration
• The system should backup the importer name to temporary storage for later restoration
• The system should backup the business number qualifier to temporary storage for later restoration
• The system should backup the business number to temporary storage for later restoration
• The system should backup the CSA indicator to temporary storage for later restoration
• The system should backup all address information including address lines 1 and 2, city, state/province, postal code, and country to temporary storage
• The system should backup contact function code, person name, communication qualifier, and communication number to temporary storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when original importer data has been successfully backed up.
Trigger Criteria:
Context: Original importer data has been successfully backed up
Applied to: Clear Current Importer Fields
Action: The system completes the backup process
Logic Flow:
IF Original importer data has been successfully backed up
AND The system completes the backup process
THEN:
• The system should clear the importer, business number, and business number qualifier fields from the current input data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when original importer data has been successfully backed up and current fields cleared.
Trigger Criteria:
Context: Original importer data has been successfully backed up and current fields cleared
Applied to: Set Backup Data Found Flag
Action: The backup process completes successfully
Logic Flow:
IF Original importer data has been successfully backed up and current fields cleared
AND The backup process completes successfully
THEN:
• The system should set the temporary importer found flag to indicate successful backup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when original importer data has been backed up and the temporary importer found flag is set.
Trigger Criteria:
Context: Original importer data has been backed up and the temporary importer found flag is set
Applied to: Restore Original Data if Needed
Action: The system needs to create the final importer record
Logic Flow:
IF Original importer data has been backed up and the temporary importer found flag is set
AND The system needs to create the final importer record
THEN:
• The system should restore all backed up importer information including CHOP code, name, business details, CSA indicator, address, and contact information to the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when corrector edi transaction is being processed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A corrector EDI transaction is being processed
Applied to: Check if Corrector EDI has Importer Data
Action: The system checks for importer data presence in the transaction
Logic Flow:
IF A corrector EDI transaction is being processed
AND The system checks for importer data presence in the transaction
THEN:
• If importer name exists in temporary storage, proceed to read existing importer data, otherwise skip backup process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi contains importer data and backup process is initiated. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Corrector EDI contains importer data and backup process is initiated
Applied to: Read Existing Importer from Record 55
Action: The system searches for existing importer records in sequence 3-24 of record type 55
Logic Flow:
IF Corrector EDI contains importer data and backup process is initiated
AND The system searches for existing importer records in sequence 3-24 of record type 55
THEN:
• Read importer records until found or maximum sequence reached
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system has searched for existing importer records in record type 55.
Trigger Criteria:
Context: The system has searched for existing importer records in record type 55
Applied to: Existing Importer Found?
Action: An importer record with entity ID 'IM' is found during the search
Logic Flow:
IF The system has searched for existing importer records in record type 55
AND An importer record with entity ID 'IM' is found during the search
THEN:
• Proceed with backup process, otherwise skip backup and continue processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when existing importer record is found in the customs database. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An existing importer record is found in the customs database
Applied to: Backup Original Importer Data to Working Storage
Action: The backup process is initiated
Logic Flow:
IF An existing importer record is found in the customs database
AND The backup process is initiated
THEN:
• Copy all importer data fields to working storage variables for later restoration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer backup process is active and existing importer data is available.
Trigger Criteria:
Context: Importer backup process is active and existing importer data is available
Applied to: Store Importer Name
Action: The system backs up importer information
Logic Flow:
IF Importer backup process is active and existing importer data is available
AND The system backs up importer information
THEN:
• Store the importer name from the customs record to temporary working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer backup process is active and existing importer data is available.
Trigger Criteria:
Context: Importer backup process is active and existing importer data is available
Applied to: Store Business Number
Action: The system backs up importer business identification
Logic Flow:
IF Importer backup process is active and existing importer data is available
AND The system backs up importer business identification
THEN:
• Store both the business number and business number qualifier from the customs record to temporary working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer backup process is active and existing importer data is available.
Trigger Criteria:
Context: Importer backup process is active and existing importer data is available
Applied to: Store CSA Indicator
Action: The system backs up importer CSA status
Logic Flow:
IF Importer backup process is active and existing importer data is available
AND The system backs up importer CSA status
THEN:
• Store the CSA indicator value from the customs record to temporary working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer backup process is active and existing importer data is available.
Trigger Criteria:
Context: Importer backup process is active and existing importer data is available
Applied to: Store Address Information
Action: The system backs up importer address details
Logic Flow:
IF Importer backup process is active and existing importer data is available
AND The system backs up importer address details
THEN:
• Store both address line 1 and address line 2 from the customs record to temporary working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer backup process is active and existing importer data is available.
Trigger Criteria:
Context: Importer backup process is active and existing importer data is available
Applied to: Store City/State/Postal
Action: The system backs up importer location information
Logic Flow:
IF Importer backup process is active and existing importer data is available
AND The system backs up importer location information
THEN:
• Store city name, state/province code, postal code, and country code from the customs record to temporary working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer backup process is active and existing importer data is available.
Trigger Criteria:
Context: Importer backup process is active and existing importer data is available
Applied to: Store Contact Information
Action: The system backs up importer contact details
Logic Flow:
IF Importer backup process is active and existing importer data is available
AND The system backs up importer contact details
THEN:
• Store contact function code, person name, communication number qualifier, and communication number from the customs record to temporary working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when original importer data has been successfully backed up to working storage.
Trigger Criteria:
Context: Original importer data has been successfully backed up to working storage
Applied to: Clear Current Importer Fields
Action: The backup process completes
Logic Flow:
IF Original importer data has been successfully backed up to working storage
AND The backup process completes
THEN:
• Clear the importer, business number, and business number qualifier fields from the current processing area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when all original importer data has been backed up and current fields cleared.
Trigger Criteria:
Context: All original importer data has been backed up and current fields cleared
Applied to: Set Backup Complete Flag
Action: The backup process finishes
Logic Flow:
IF All original importer data has been backed up and current fields cleared
AND The backup process finishes
THEN:
• Set the importer found flag to indicate successful backup completion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when either no corrector edi importer data exists or no existing importer record is found.
Trigger Criteria:
Context: Either no corrector EDI importer data exists or no existing importer record is found
Applied to: No Backup Required
Action: The system evaluates backup requirements
Logic Flow:
IF Either no corrector EDI importer data exists or no existing importer record is found
AND The system evaluates backup requirements
THEN:
• Skip the backup process and continue with normal processing
R-GCCCCADD-cbl-00634 (+14)File: GCCCCADD.cblBusiness Rule: Importer Record Creation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system is processing importer record creation and au table data has been retrieved.
Trigger Criteria:
Context: The system is processing importer record creation and AU table data has been retrieved
Applied to: AU Importer Data Found?
Action: The system checks if AU importer data was found during the lookup process
Logic Flow:
IF The system is processing importer record creation and AU table data has been retrieved
AND The system checks if AU importer data was found during the lookup process
THEN:
• If AU importer data is found, proceed to check S55 importer record status, otherwise end the process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when au importer data has been found and the system needs to create an importer record.
Trigger Criteria:
Context: AU importer data has been found and the system needs to create an importer record
Applied to: S55 Importer Record Not Found?
Action: The system checks if an S55 importer record already exists
Logic Flow:
IF AU importer data has been found and the system needs to create an importer record
AND The system checks if an S55 importer record already exists
THEN:
• If no S55 importer record is found, proceed to check sequence position availability, otherwise end the process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when au importer data exists and no s55 importer record is found.
Trigger Criteria:
Context: AU importer data exists and no S55 importer record is found
Applied to: Available Sequence Position?
Action: The system checks if the current sequence index is less than or equal to the maximum sequence position
Logic Flow:
IF AU importer data exists and no S55 importer record is found
AND The system checks if the current sequence index is less than or equal to the maximum sequence position
THEN:
• If sequence position is available, proceed to initialize new record, otherwise use maximum sequence position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current sequence index exceeds the maximum allowed sequence positions.
Trigger Criteria:
Context: The current sequence index exceeds the maximum allowed sequence positions
Applied to: Use Maximum Sequence Position
Action: The system needs to assign a sequence position for the new importer record
Logic Flow:
IF The current sequence index exceeds the maximum allowed sequence positions
AND The system needs to assign a sequence position for the new importer record
THEN:
• Set the sequence index to the maximum sequence position value and mark that 24 N1 data records are found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when sequence position is available for creating a new importer record.
Trigger Criteria:
Context: A sequence position is available for creating a new importer record
Applied to: Initialize New Importer Record
Action: The system initializes the new importer record structure
Logic Flow:
IF A sequence position is available for creating a new importer record
AND The system initializes the new importer record structure
THEN:
• Clear all fields in the GCSCCS55 record, set the CCN key, record type to '55', and assign the sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when new importer record has been initialized.
Trigger Criteria:
Context: A new importer record has been initialized
Applied to: Set Entity ID to 'IM'
Action: The system sets the entity identification code
Logic Flow:
IF A new importer record has been initialized
AND The system sets the entity identification code
THEN:
• Set the entity ID code to 'IM' to identify this record as an importer entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer record is being populated with au table data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The importer record is being populated with AU table data
Applied to: Copy Importer Name from AU Table
Action: The system copies the importer name from the AU table
Logic Flow:
IF The importer record is being populated with AU table data
AND The system copies the importer name from the AU table
THEN:
• Set both the customs record name field and the main importer field to the AU table importer name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer record is being populated with au table data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The importer record is being populated with AU table data
Applied to: Copy Business Number from AU Table
Action: The system copies the business number from the AU table
Logic Flow:
IF The importer record is being populated with AU table data
AND The system copies the business number from the AU table
THEN:
• Set both the customs record ID code field and the main business number field to the AU table business number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer record is being created from au table data.
Trigger Criteria:
Context: The importer record is being created from AU table data
Applied to: Set Business Number Qualifier to 'M5'
Action: The system sets the business number qualifier
Logic Flow:
IF The importer record is being created from AU table data
AND The system sets the business number qualifier
THEN:
• Set both the customs record ID code qualifier and the main business number qualifier to 'M5'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer record is being created from au table data.
Trigger Criteria:
Context: The importer record is being created from AU table data
Applied to: Clear Address and Contact Fields
Action: The system initializes address and contact fields
Logic Flow:
IF The importer record is being created from AU table data
AND The system initializes address and contact fields
THEN:
• Set secondary address, city, state, postal code, country, and all contact fields to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer record is being created from au table data.
Trigger Criteria:
Context: The importer record is being created from AU table data
Applied to: Set CSA Indicator ON
Action: The system sets the CSA indicator
Logic Flow:
IF The importer record is being created from AU table data
AND The system sets the CSA indicator
THEN:
• Set the CSA indicator to ON to indicate this importer is authorized for customs self assessment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer record is being populated from au table data.
Trigger Criteria:
Context: The importer record is being populated from AU table data
Applied to: Set Default Address to 'NA'
Action: The system sets the address information
Logic Flow:
IF The importer record is being populated from AU table data
AND The system sets the address information
THEN:
• Set the primary address field to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer record has been populated with au table data and csa indicator is set.
Trigger Criteria:
Context: The importer record has been populated with AU table data and CSA indicator is set
Applied to: 24 N1 Records Already Exist?
Action: The system checks if 24 N1 data records already exist
Logic Flow:
IF The importer record has been populated with AU table data and CSA indicator is set
AND The system checks if 24 N1 data records already exist
THEN:
• If 24 N1 records exist, perform a replace operation, otherwise perform an insert operation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when 24 n1 records already exist and a new importer record needs to be stored. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: 24 N1 records already exist and a new importer record needs to be stored
Applied to: Replace Existing Record
Action: The system performs a replace operation
Logic Flow:
IF 24 N1 records already exist and a new importer record needs to be stored
AND The system performs a replace operation
THEN:
• Call the customs I/O module with replace function to update the existing record at the current sequence position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when less than 24 n1 records exist and a new importer record needs to be stored.
Trigger Criteria:
Context: Less than 24 N1 records exist and a new importer record needs to be stored
Applied to: Insert New Record
Action: The system performs an insert operation
Logic Flow:
IF Less than 24 N1 records exist and a new importer record needs to be stored
AND The system performs an insert operation
THEN:
• Validate the N1 segment and insert the new record into the sequence position array
R-GCCCCADD-cbl-00649 (+4)File: GCCCCADD.cblBusiness Rule: N1 Record Override
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system is processing importer data from au table and importer data was found in au table and importer data was not found in existing 55 records and the current record index exceeds the maximum sequence of 24.
Trigger Criteria:
Context: The system is processing importer data from AU table AND importer data was found in AU table AND importer data was not found in existing 55 records AND the current record index exceeds the maximum sequence of 24
Applied to: Check N1 Record Count
Action: The system attempts to add a new importer N1 record
Logic Flow:
IF The system is processing importer data from AU table AND importer data was found in AU table AND importer data was not found in existing 55 records AND the current record index exceeds the maximum sequence of 24
AND The system attempts to add a new importer N1 record
THEN:
• The system sets the record index to the maximum sequence (24) AND sets the 24-N1-data-found flag to true AND uses replace function instead of insert for the 24th record position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when current record sequence index is greater than the maximum sequence value of 24.
Trigger Criteria:
Context: The current record sequence index is greater than the maximum sequence value of 24
Applied to: Identify 24th Record Position
Action: The system processes the record index
Logic Flow:
IF The current record sequence index is greater than the maximum sequence value of 24
AND The system processes the record index
THEN:
• The system sets the record index to the maximum sequence value of 24
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is about to use the 24th record position for importer data.
Trigger Criteria:
Context: The system is about to use the 24th record position for importer data
Applied to: Set Override Flag
Action: The record index is set to the maximum sequence
Logic Flow:
IF The system is about to use the 24th record position for importer data
AND The record index is set to the maximum sequence
THEN:
• The system sets the 24-N1-data-found flag to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when 24-n1-data-found flag is set to true and importer record data is prepared for storage.
Trigger Criteria:
Context: The 24-N1-data-found flag is set to true AND importer record data is prepared for storage
Applied to: Override 24th Record with New Data
Action: The system stores the importer record
Logic Flow:
IF The 24-N1-data-found flag is set to true AND importer record data is prepared for storage
AND The system stores the importer record
THEN:
• The system calls the database I/O function with replace operation instead of insert operation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when 24-n1-data-found flag is set to false and importer record data is prepared for storage.
Trigger Criteria:
Context: The 24-N1-data-found flag is set to false AND importer record data is prepared for storage
Applied to: Add New Record Normally
Action: The system stores the importer record
Logic Flow:
IF The 24-N1-data-found flag is set to false AND importer record data is prepared for storage
AND The system stores the importer record
THEN:
• The system validates the N1 segment AND performs the standard insert operation for the new record
R-GCCCCADD-cbl-00654 (+13)File: GCCCCADD.cblBusiness Rule: UN Number Extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to process hazmat information for a shipment.
Trigger Criteria:
Context: The system needs to process hazmat information for a shipment
Applied to: Initialize Hazmat Variables
Action: Hazmat processing begins
Logic Flow:
IF The system needs to process hazmat information for a shipment
AND Hazmat processing begins
THEN:
• Commodity description danger field and UN number field are cleared, hazmat not found flag is set, and search sequence is initialized to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when hazmat processing variables have been initialized.
Trigger Criteria:
Context: Hazmat processing variables have been initialized
Applied to: Set Hazmat Search Sequence to 1
Action: Beginning hazmat segment search
Logic Flow:
IF Hazmat processing variables have been initialized
AND Beginning hazmat segment search
THEN:
• Hazmat search sequence counter is set to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid edi bol key exists and hazmat search sequence is set.
Trigger Criteria:
Context: A valid EDI BOL key exists and hazmat search sequence is set
Applied to: Get EDI BOL Hazmat Segment EBSBCCM-CH
Action: System attempts to retrieve hazmat segment EBSBCCM with type 'CH' for current sequence
Logic Flow:
IF A valid EDI BOL key exists and hazmat search sequence is set
AND System attempts to retrieve hazmat segment EBSBCCM with type 'CH' for current sequence
THEN:
• EDI BOL hazmat segment is retrieved if it exists for the specified sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has attempted to retrieve a hazmat segment.
Trigger Criteria:
Context: System has attempted to retrieve a hazmat segment
Applied to: Hazmat Segment Found?
Action: Checking the retrieval status
Logic Flow:
IF System has attempted to retrieve a hazmat segment
AND Checking the retrieval status
THEN:
• If segment exists, continue processing; if not found, end hazmat extraction with no UN number found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when hazmat segment has been found with un/na identification code.
Trigger Criteria:
Context: A hazmat segment has been found with UN/NA identification code
Applied to: Code Starts with 'UN'?
Action: Checking if the identification code represents a valid UN number
Logic Flow:
IF A hazmat segment has been found with UN/NA identification code
AND Checking if the identification code represents a valid UN number
THEN:
• If code starts with 'UN', extract the UN number; otherwise increment sequence to check next segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when hazmat identification code starts with 'un'.
Trigger Criteria:
Context: Hazmat identification code starts with 'UN'
Applied to: Extract UN Number from LH1-UN-NA-ID-CD
Action: Extracting UN number for commodity classification
Logic Flow:
IF Hazmat identification code starts with 'UN'
AND Extracting UN number for commodity classification
THEN:
• UN number is extracted from LH1-UN-NA-ID-CD field and stored in commodity UN number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid un number has been extracted from hazmat data.
Trigger Criteria:
Context: A valid UN number has been extracted from hazmat data
Applied to: Set Hazmat Found Flag
Action: Confirming successful hazmat data extraction
Logic Flow:
IF A valid UN number has been extracted from hazmat data
AND Confirming successful hazmat data extraction
THEN:
• Hazmat found flag is set to indicate successful extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when un number has been successfully extracted.
Trigger Criteria:
Context: UN number has been successfully extracted
Applied to: Initialize Hazmat Info Sequence to 1
Action: Preparing to search for detailed hazmat information
Logic Flow:
IF UN number has been successfully extracted
AND Preparing to search for detailed hazmat information
THEN:
• Hazmat info sequence counter is set to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when un number exists and hazmat info sequence is initialized.
Trigger Criteria:
Context: UN number exists and hazmat info sequence is initialized
Applied to: Get Hazmat Info Segment EBSBCHI
Action: System attempts to retrieve hazmat info segment EBSBCHI with type 'HS'
Logic Flow:
IF UN number exists and hazmat info sequence is initialized
AND System attempts to retrieve hazmat info segment EBSBCHI with type 'HS'
THEN:
• Detailed hazmat information segment is retrieved if it exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has attempted to retrieve hazmat information segment.
Trigger Criteria:
Context: System has attempted to retrieve hazmat information segment
Applied to: Hazmat Info Found?
Action: Checking retrieval status for detailed hazmat data
Logic Flow:
IF System has attempted to retrieve hazmat information segment
AND Checking retrieval status for detailed hazmat data
THEN:
• If info segment exists, extract proper shipping name; otherwise complete extraction process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when hazmat information segment is available.
Trigger Criteria:
Context: Hazmat information segment is available
Applied to: Extract Proper Shipping Name from LH3-PROPER-SHIP-NAME
Action: Extracting proper shipping name for commodity classification
Logic Flow:
IF Hazmat information segment is available
AND Extracting proper shipping name for commodity classification
THEN:
• Proper shipping name is extracted from LH3-PROPER-SHIP-NAME field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when proper shipping name has been extracted from hazmat data.
Trigger Criteria:
Context: Proper shipping name has been extracted from hazmat data
Applied to: Store in Commodity Description Danger Field
Action: Storing hazmat description for customs documentation
Logic Flow:
IF Proper shipping name has been extracted from hazmat data
AND Storing hazmat description for customs documentation
THEN:
• Proper shipping name is stored in commodity description danger field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current hazmat segment does not contain valid un number format.
Trigger Criteria:
Context: Current hazmat segment does not contain valid UN number format
Applied to: Increment Hazmat Search Sequence
Action: Continuing search for valid hazmat data
Logic Flow:
IF Current hazmat segment does not contain valid UN number format
AND Continuing search for valid hazmat data
THEN:
• Hazmat search sequence counter is incremented by 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when hazmat search sequence has been incremented.
Trigger Criteria:
Context: Hazmat search sequence has been incremented
Applied to: More Sequences to Check?
Action: Determining if additional hazmat segments should be searched
Logic Flow:
IF Hazmat search sequence has been incremented
AND Determining if additional hazmat segments should be searched
THEN:
• If sequence is 98 or less, continue searching; otherwise end with no UN number found
Business Justification: Establishes the required business protocol to be followed when shipment exists in the system.
Trigger Criteria:
Context: A shipment exists in the system
Applied to: Get SHIPCOMM Data
Action: The system needs to process hazmat information from Fastway data
Logic Flow:
IF A shipment exists in the system
AND The system needs to process hazmat information from Fastway data
THEN:
• The system retrieves SHIPCOMM segment data using the shipment root key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system has attempted to retrieve shipcomm data.
Trigger Criteria:
Context: The system has attempted to retrieve SHIPCOMM data
Applied to: SHIPCOMM Found?
Action: The system checks if commodity data was successfully retrieved
Logic Flow:
IF The system has attempted to retrieve SHIPCOMM data
AND The system checks if commodity data was successfully retrieved
THEN:
• If SHIPCOMM data is found, continue with emergency response data retrieval, otherwise terminate hazmat processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipcomm data is available for the shipment.
Trigger Criteria:
Context: SHIPCOMM data is available for the shipment
Applied to: Get SHIPERP Data
Action: The system processes hazmat information from Fastway data
Logic Flow:
IF SHIPCOMM data is available for the shipment
AND The system processes hazmat information from Fastway data
THEN:
• The system retrieves SHIPERP segment using shipment root key and commodity ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has attempted to retrieve shiperp data.
Trigger Criteria:
Context: The system has attempted to retrieve SHIPERP data
Applied to: SHIPERP Found?
Action: The system checks if emergency response data was successfully retrieved
Logic Flow:
IF The system has attempted to retrieve SHIPERP data
AND The system checks if emergency response data was successfully retrieved
THEN:
• If SHIPERP data is found, validate UN code format, otherwise terminate hazmat processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when emergency response data (shiperp) is available.
Trigger Criteria:
Context: Emergency response data (SHIPERP) is available
Applied to: UN Code Starts with 'UN'?
Action: The system validates the hazmat identification code format
Logic Flow:
IF Emergency response data (SHIPERP) is available
AND The system validates the hazmat identification code format
THEN:
• If the UN/NA code starts with 'UN', proceed with hazmat data extraction, otherwise terminate hazmat processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when emergency response data contains a valid un code starting with 'un'.
Trigger Criteria:
Context: Emergency response data contains a valid UN code starting with 'UN'
Applied to: Extract UN Number from SHIPERP
Action: The system processes hazmat identification information
Logic Flow:
IF Emergency response data contains a valid UN code starting with 'UN'
AND The system processes hazmat identification information
THEN:
• The system extracts the UN/NA code and assigns it to the customs UN number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid un number has been extracted from emergency response data.
Trigger Criteria:
Context: A valid UN number has been extracted from emergency response data
Applied to: Clear Hazmat Description
Action: The system prepares to retrieve hazmat description information
Logic Flow:
IF A valid UN number has been extracted from emergency response data
AND The system prepares to retrieve hazmat description information
THEN:
• The system clears the commodity description danger field to prepare for new data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid un number exists and hazmat description field is initialized.
Trigger Criteria:
Context: A valid UN number exists and hazmat description field is initialized
Applied to: Get SHIPERPD Data
Action: The system needs detailed hazmat description information
Logic Flow:
IF A valid UN number exists and hazmat description field is initialized
AND The system needs detailed hazmat description information
THEN:
• The system retrieves SHIPERPD segment using shipment root key, commodity ID, and emergency response STCC code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system has attempted to retrieve shiperpd data.
Trigger Criteria:
Context: The system has attempted to retrieve SHIPERPD data
Applied to: SHIPERPD Found?
Action: The system checks if hazmat description data was successfully retrieved
Logic Flow:
IF The system has attempted to retrieve SHIPERPD data
AND The system checks if hazmat description data was successfully retrieved
THEN:
• If SHIPERPD data is found, extract hazmat description, otherwise proceed with hazmat found flag setting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shiperpd data is available with hazmat description information.
Trigger Criteria:
Context: SHIPERPD data is available with hazmat description information
Applied to: Extract Hazmat Description from SHIPERPD
Action: The system processes detailed hazmat description
Logic Flow:
IF SHIPERPD data is available with hazmat description information
AND The system processes detailed hazmat description
THEN:
• The system extracts the first 15 characters of the hazmat description and assigns it to the commodity description danger field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid un number has been extracted and hazmat description processing is complete.
Trigger Criteria:
Context: Valid UN number has been extracted and hazmat description processing is complete
Applied to: Set Hazmat Found Flag
Action: The system completes Fastway hazmat data processing
Logic Flow:
IF Valid UN number has been extracted and hazmat description processing is complete
AND The system completes Fastway hazmat data processing
THEN:
• The system sets the hazmat found flag to indicate successful hazmat data retrieval
Business Justification: Governs the functional prerequisites and system routing when cargo manifest is being processed.
Trigger Criteria:
Context: A cargo manifest is being processed
Applied to: Get Commodity Code from GCCC-COMODITY-CODE
Action: The system needs to build hazmat information
Logic Flow:
IF A cargo manifest is being processed
AND The system needs to build hazmat information
THEN:
• The commodity code is retrieved from the cargo manifest record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when commodity code exists in the cargo manifest. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A commodity code exists in the cargo manifest
Applied to: Call CIMS to Access Commodity Database
Action: The system needs to retrieve commodity description for hazmat processing
Logic Flow:
IF A commodity code exists in the cargo manifest
AND The system needs to retrieve commodity description for hazmat processing
THEN:
• The system calls CIMS to access the commodity database using the commodity code as the key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system has attempted to retrieve a commodity record.
Trigger Criteria:
Context: The system has attempted to retrieve a commodity record
Applied to: Commodity Record Found?
Action: The database lookup is completed
Logic Flow:
IF The system has attempted to retrieve a commodity record
AND The database lookup is completed
THEN:
• If the status code is spaces, the commodity record is found, otherwise no record exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when commodity record has been successfully retrieved from the database.
Trigger Criteria:
Context: A commodity record has been successfully retrieved from the database
Applied to: Extract Commodity Description from CMOD-DESC
Action: The system needs to populate hazmat description
Logic Flow:
IF A commodity record has been successfully retrieved from the database
AND The system needs to populate hazmat description
THEN:
• The commodity description is extracted from CMOD-DESC field of the commodity record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when commodity description has been extracted from the commodity record.
Trigger Criteria:
Context: A commodity description has been extracted from the commodity record
Applied to: Store Description in GCCC-COMODITY-DESC-DANGER
Action: The system needs to update the cargo manifest with hazmat information
Logic Flow:
IF A commodity description has been extracted from the commodity record
AND The system needs to update the cargo manifest with hazmat information
THEN:
• The commodity description is moved to GCCC-COMODITY-DESC-DANGER field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when commodity record has been processed and commodity description stored. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A commodity record has been processed and commodity description stored
Applied to: Call CIMS to Get Next Commodity Record
Action: The system needs to retrieve UN number for hazmat compliance
Logic Flow:
IF A commodity record has been processed and commodity description stored
AND The system needs to retrieve UN number for hazmat compliance
THEN:
• The system calls CIMS with GNP function to access the ISSCD hazmat database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system has attempted to retrieve a hazmat record from isscd database.
Trigger Criteria:
Context: The system has attempted to retrieve a hazmat record from ISSCD database
Applied to: Hazmat Record Found?
Action: The database lookup is completed
Logic Flow:
IF The system has attempted to retrieve a hazmat record from ISSCD database
AND The database lookup is completed
THEN:
• If the status code is spaces, the hazmat record is found, otherwise no hazmat record exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when hazmat record has been successfully retrieved from the isscd database.
Trigger Criteria:
Context: A hazmat record has been successfully retrieved from the ISSCD database
Applied to: Extract UN Number from CMDOTID
Action: The system needs to populate UN number for hazmat compliance
Logic Flow:
IF A hazmat record has been successfully retrieved from the ISSCD database
AND The system needs to populate UN number for hazmat compliance
THEN:
• The UN number is extracted from CMDOTID field of the hazmat record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when un number has been extracted from the hazmat record.
Trigger Criteria:
Context: A UN number has been extracted from the hazmat record
Applied to: Store UN Number in GCCC-UN-NUMBER
Action: The system needs to update the cargo manifest with UN number
Logic Flow:
IF A UN number has been extracted from the hazmat record
AND The system needs to update the cargo manifest with UN number
THEN:
• The UN number is moved to GCCC-UN-NUMBER field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no hazmat record was found in the isscd database for the commodity.
Trigger Criteria:
Context: No hazmat record was found in the ISSCD database for the commodity
Applied to: Clear Hazmat Description and UN Number
Action: The system needs to finalize hazmat information
Logic Flow:
IF No hazmat record was found in the ISSCD database for the commodity
AND The system needs to finalize hazmat information
THEN:
• Both GCCC-COMODITY-DESC-DANGERandGCCC-UN-NUMBER fields are cleared to spaces
Business Justification: Defines the strict business conditions required to proceed when shipper or consignee segment (sequence 0001 or 0002) is being processed.
Trigger Criteria:
Context: A shipper or consignee segment (sequence 0001 or 0002) is being processed
Applied to: Are all required fields empty?
Action: The segment has empty name, address, city/state/postal/country fields
Logic Flow:
IF A shipper or consignee segment (sequence 0001 or 0002) is being processed
AND The segment has empty name, address, city/state/postal/country fields
THEN:
• Generate required field error messages for name, address, city, state/province, postal code, and country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment is being validated.
Trigger Criteria:
Context: An N1 segment is being validated
Applied to: Entity ID present but Name missing?
Action: Entity ID code is not empty but entity name is empty
Logic Flow:
IF An N1 segment is being validated
AND Entity ID code is not empty but entity name is empty
THEN:
• Generate a required name error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment is being validated.
Trigger Criteria:
Context: An N1 segment is being validated
Applied to: Entity ID present but Name missing?
Action: The entity ID code is not empty AND the entity name is empty
Logic Flow:
IF An N1 segment is being validated
AND The entity ID code is not empty AND the entity name is empty
THEN:
• Generate a required name error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment contains address data, contact data, or other entity information.
Trigger Criteria:
Context: An N1 segment contains address data, contact data, or other entity information
Applied to: Entity ID missing but other data present?
Action: Entity ID code is empty but address data, contact data, or other entity information is not empty
Logic Flow:
IF An N1 segment contains address data, contact data, or other entity information
AND Entity ID code is empty but address data, contact data, or other entity information is not empty
THEN:
• Generate a required entity ID error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment with sequence number greater than 2 is being processed.
Trigger Criteria:
Context: An N1 segment with sequence number greater than 2 is being processed
Applied to: Is Entity ID valid for this segment type?
Action: Entity ID code is not empty and is not a valid entity type or is shipper, consignee, or customs broker
Logic Flow:
IF An N1 segment with sequence number greater than 2 is being processed
AND Entity ID code is not empty and is not a valid entity type or is shipper, consignee, or customs broker
THEN:
• Generate an invalid entity ID value error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment has an entity id code.
Trigger Criteria:
Context: An N1 segment has an entity ID code
Applied to: Entity ID present but Address missing?
Action: Entity ID code is not empty but address line 1 is empty
Logic Flow:
IF An N1 segment has an entity ID code
AND Entity ID code is not empty but address line 1 is empty
THEN:
• Generate a required address error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment contains address information (n4 data is not empty).
Trigger Criteria:
Context: An N1 segment contains address information (N4 data is not empty)
Applied to: City name present?
Action: City name is empty
Logic Flow:
IF An N1 segment contains address information (N4 data is not empty)
AND City name is empty
THEN:
• Generate a required city name error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment has a city name provided.
Trigger Criteria:
Context: An N1 segment has a city name provided
Applied to: City name length >= 2 characters?
Action: City name length is less than 2 characters
Logic Flow:
IF An N1 segment has a city name provided
AND City name length is less than 2 characters
THEN:
• Generate a minimum length requirement error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment has a city name provided.
Trigger Criteria:
Context: An N1 segment has a city name provided
Applied to: City name too short?
Action: The city name length is less than 2 characters
Logic Flow:
IF An N1 segment has a city name provided
AND The city name length is less than 2 characters
THEN:
• Generate a minimum length requirement error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment has a postal code provided.
Trigger Criteria:
Context: An N1 segment has a postal code provided
Applied to: Postal code length >= 3 characters?
Action: Postal code is not empty and length is less than 3 characters
Logic Flow:
IF An N1 segment has a postal code provided
AND Postal code is not empty and length is less than 3 characters
THEN:
• Generate a minimum length requirement error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment has a postal code provided.
Trigger Criteria:
Context: An N1 segment has a postal code provided
Applied to: Postal code too short?
Action: The postal code length is less than 3 characters
Logic Flow:
IF An N1 segment has a postal code provided
AND The postal code length is less than 3 characters
THEN:
• Generate a postal code minimum length error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n1 segment has address information for canada, usa, or mexico.
Trigger Criteria:
Context: An N1 segment has address information for Canada, USA, or Mexico
Applied to: State/Province code present?
Action: Country code is Canada, USA, or Mexico and state/province code is empty
Logic Flow:
IF An N1 segment has address information for Canada, USA, or Mexico
AND Country code is Canada, USA, or Mexico and state/province code is empty
THEN:
• Generate a required state/province error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment has both state/province code and country code provided.
Trigger Criteria:
Context: An N1 segment has both state/province code and country code provided
Applied to: State/Province and Country combination valid?
Action: The state/province code is not valid for the specified country according to the state-country lookup table
Logic Flow:
IF An N1 segment has both state/province code and country code provided
AND The state/province code is not valid for the specified country according to the state-country lookup table
THEN:
• Generate an invalid state/province error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment has both state/province code and country code provided.
Trigger Criteria:
Context: An N1 segment has both state/province code and country code provided
Applied to: Invalid State/Country combination?
Action: The state/province code is not found in the state-country lookup table for the specified country
Logic Flow:
IF An N1 segment has both state/province code and country code provided
AND The state/province code is not found in the state-country lookup table for the specified country
THEN:
• Generate an invalid state/province code error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment has state/province code but missing country code.
Trigger Criteria:
Context: An N1 segment has state/province code but missing country code
Applied to: Lookup Country from State/Province
Action: Country code is empty
Logic Flow:
IF An N1 segment has state/province code but missing country code
AND Country code is empty
THEN:
• Look up and assign the corresponding country code from the state-country lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment requires country information.
Trigger Criteria:
Context: An N1 segment requires country information
Applied to: Country code still missing?
Action: Country code is empty after attempting to derive from state/province code
Logic Flow:
IF An N1 segment requires country information
AND Country code is empty after attempting to derive from state/province code
THEN:
• Generate a required country code error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment contains contact information.
Trigger Criteria:
Context: An N1 segment contains contact information
Applied to: Contact name present but qualifier missing?
Action: Contact name is not empty but communication number qualifier is empty
Logic Flow:
IF An N1 segment contains contact information
AND Contact name is not empty but communication number qualifier is empty
THEN:
• Generate a required communication qualifier error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment contains contact information.
Trigger Criteria:
Context: An N1 segment contains contact information
Applied to: Communication number present but qualifier missing?
Action: Communication number is not empty but communication number qualifier is empty
Logic Flow:
IF An N1 segment contains contact information
AND Communication number is not empty but communication number qualifier is empty
THEN:
• Generate a required communication qualifier error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment contains contact information.
Trigger Criteria:
Context: An N1 segment contains contact information
Applied to: Qualifier or name present but number missing?
Action: Communication qualifier is not empty or contact name is not empty but communication number is empty
Logic Flow:
IF An N1 segment contains contact information
AND Communication qualifier is not empty or contact name is not empty but communication number is empty
THEN:
• Generate a required communication number error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment has a communication qualifier specified.
Trigger Criteria:
Context: An N1 segment has a communication qualifier specified
Applied to: Communication qualifier is valid?
Action: Communication qualifier is not blank, 'FX' (fax), or 'TE' (telephone)
Logic Flow:
IF An N1 segment has a communication qualifier specified
AND Communication qualifier is not blank, 'FX' (fax), or 'TE' (telephone)
THEN:
• Generate an invalid communication qualifier value error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper or consignee n1 segment is being processed with sequence number 1 or 2.
Trigger Criteria:
Context: A shipper or consignee N1 segment is being processed with sequence number 1 or 2
Applied to: Are all required fields empty?
Action: The segment has empty name AND empty address data AND empty city/state data AND empty contact information
Logic Flow:
IF A shipper or consignee N1 segment is being processed with sequence number 1 or 2
AND The segment has empty name AND empty address data AND empty city/state data AND empty contact information
THEN:
• Generate required shipper error for sequence 1 or required consignee error for sequence 2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment contains address data or city/state data or contact information.
Trigger Criteria:
Context: An N1 segment contains address data OR city/state data OR contact information
Applied to: Address data present but Entity ID/Name missing?
Action: The entity ID code is empty OR the entity name is empty
Logic Flow:
IF An N1 segment contains address data OR city/state data OR contact information
AND The entity ID code is empty OR the entity name is empty
THEN:
• Generate required entity ID error if ID is missing AND generate required name error if name is missing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment with sequence number greater than 2 is being validated.
Trigger Criteria:
Context: An N1 segment with sequence number greater than 2 is being validated
Applied to: Entity ID is invalid type?
Action: The entity ID code is not empty AND the entity ID is not a valid entity type OR is a shipper code OR is a consignee code OR is a customs broker code
Logic Flow:
IF An N1 segment with sequence number greater than 2 is being validated
AND The entity ID code is not empty AND the entity ID is not a valid entity type OR is a shipper code OR is a consignee code OR is a customs broker code
THEN:
• Generate an invalid entity ID value error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment has a valid entity id code.
Trigger Criteria:
Context: An N1 segment has a valid entity ID code
Applied to: Address missing when Entity ID present?
Action: The address information field is empty
Logic Flow:
IF An N1 segment has a valid entity ID code
AND The address information field is empty
THEN:
• Generate a required address error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment contains city/state data.
Trigger Criteria:
Context: An N1 segment contains city/state data
Applied to: City name missing?
Action: The city name field is empty
Logic Flow:
IF An N1 segment contains city/state data
AND The city name field is empty
THEN:
• Generate a required city name error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment contains city/state data.
Trigger Criteria:
Context: An N1 segment contains city/state data
Applied to: Country code missing?
Action: The country code field is empty
Logic Flow:
IF An N1 segment contains city/state data
AND The country code field is empty
THEN:
• Generate a required country code error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment has country code of canada or usa or mexico.
Trigger Criteria:
Context: An N1 segment has country code of Canada OR USA OR Mexico
Applied to: State missing?
Action: The state or province code is empty
Logic Flow:
IF An N1 segment has country code of Canada OR USA OR Mexico
AND The state or province code is empty
THEN:
• Generate a required state/province error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment has contact information with a communication qualifier.
Trigger Criteria:
Context: An N1 segment has contact information with a communication qualifier
Applied to: Contact qualifier invalid?
Action: The communication qualifier is not empty AND not 'FX' (fax) AND not 'TE' (telephone)
Logic Flow:
IF An N1 segment has contact information with a communication qualifier
AND The communication qualifier is not empty AND not 'FX' (fax) AND not 'TE' (telephone)
THEN:
• Generate an invalid communication qualifier error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment has contact information.
Trigger Criteria:
Context: An N1 segment has contact information
Applied to: Contact number missing when required?
Action: The communication qualifier is not empty OR the contact name is not empty AND the communication number is empty
Logic Flow:
IF An N1 segment has contact information
AND The communication qualifier is not empty OR the contact name is not empty AND the communication number is empty
THEN:
• Generate a required communication number error message
R-GCCCCADD-cbl-00705 (+29)File: GCCCCADD.cblBusiness Rule: Required Field Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record is identified as shipper (sequence 1) or consignee (sequence 2) and all n1 segment data fields (name, address, city, state, postal code, country, contact) are empty.
Trigger Criteria:
Context: A record is identified as shipper (sequence 1) or consignee (sequence 2) AND all N1 segment data fields (name, address, city, state, postal code, country, contact) are empty
Applied to: All N1 Data Empty?
Action: The system validates the N1 segment data completeness
Logic Flow:
IF A record is identified as shipper (sequence 1) or consignee (sequence 2) AND all N1 segment data fields (name, address, city, state, postal code, country, contact) are empty
AND The system validates the N1 segment data completeness
THEN:
• Generate required field error messages for name (N102), address (N301), city (N401), state/province (N402), postal code (N403), country (N404) AND add each error message to the validation results
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment where entity id is empty and at least one of address data, city data, contact data is not empty.
Trigger Criteria:
Context: An N1 segment where entity ID is empty AND at least one of address data, city data, contact data is not empty
Applied to: Entity ID Missing but Address Data Present?
Action: The system validates entity ID requirements
Logic Flow:
IF An N1 segment where entity ID is empty AND at least one of address data, city data, contact data is not empty
AND The system validates entity ID requirements
THEN:
• Generate error message indicating entity ID is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment where entity id is not empty and name field is empty.
Trigger Criteria:
Context: An N1 segment where entity ID is not empty AND name field is empty
Applied to: Name Missing but Entity ID Present?
Action: The system validates name field requirements
Logic Flow:
IF An N1 segment where entity ID is not empty AND name field is empty
AND The system validates name field requirements
THEN:
• Generate error message indicating name is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment where entity id is not empty and name field is empty.
Trigger Criteria:
Context: An N1 segment where entity ID is not empty AND name field is empty
Applied to: Entity ID Present but Name Missing?
Action: The system validates the relationship between entity ID and name
Logic Flow:
IF An N1 segment where entity ID is not empty AND name field is empty
AND The system validates the relationship between entity ID and name
THEN:
• Generate error message indicating name is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when record with sequence number greater than 2 and entity id is not empty and entity id is not in the valid values list or entity id is 'sh' (shipper) or entity id is 'cn' (consignee) or entity id is 'bn' (customs broker).
Trigger Criteria:
Context: A record with sequence number greater than 2 AND entity ID is not empty AND entity ID is not in the valid values list OR entity ID is 'SH' (shipper) OR entity ID is 'CN' (consignee) OR entity ID is 'BN' (customs broker)
Applied to: Invalid Entity ID Value?
Action: The system validates entity ID values for non-primary records
Logic Flow:
IF A record with sequence number greater than 2 AND entity ID is not empty AND entity ID is not in the valid values list OR entity ID is 'SH' (shipper) OR entity ID is 'CN' (consignee) OR entity ID is 'BN' (customs broker)
AND The system validates entity ID values for non-primary records
THEN:
• Generate error message indicating invalid entity ID value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment where entity id is not empty and address field is empty.
Trigger Criteria:
Context: An N1 segment where entity ID is not empty AND address field is empty
Applied to: Entity ID Present but Address Missing?
Action: The system validates address field requirements
Logic Flow:
IF An N1 segment where entity ID is not empty AND address field is empty
AND The system validates address field requirements
THEN:
• Generate error message indicating address is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when n1 segment where city name is not empty and the length of city name after removing trailing spaces is less than 2 characters.
Trigger Criteria:
Context: An N1 segment where city name is not empty AND the length of city name after removing trailing spaces is less than 2 characters
Applied to: City Name Length < 2?
Action: The system validates city name length requirements
Logic Flow:
IF An N1 segment where city name is not empty AND the length of city name after removing trailing spaces is less than 2 characters
AND The system validates city name length requirements
Business Justification: Establishes the required business protocol to be followed when n1 segment where postal code is not empty and the length of postal code after removing trailing spaces is less than 3 characters.
Trigger Criteria:
Context: An N1 segment where postal code is not empty AND the length of postal code after removing trailing spaces is less than 3 characters
Applied to: Postal Code Length < 3?
Action: The system validates postal code length requirements
Logic Flow:
IF An N1 segment where postal code is not empty AND the length of postal code after removing trailing spaces is less than 3 characters
AND The system validates postal code length requirements
Business Justification: Governs the functional prerequisites and system routing when n1 segment where country code is 'ca' (canada) or 'us' (usa) or 'mx' (mexico) and state/province code is empty.
Trigger Criteria:
Context: An N1 segment where country code is 'CA' (Canada) OR 'US' (USA) OR 'MX' (Mexico) AND state/province code is empty
Applied to: State/Province Missing?
Action: The system validates state/province requirements for North American countries
Logic Flow:
IF An N1 segment where country code is 'CA' (Canada) OR 'US' (USA) OR 'MX' (Mexico) AND state/province code is empty
AND The system validates state/province requirements for North American countries
THEN:
• Generate error message indicating state/province is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment where state/province code is not empty and country code is not empty and the state/province code is not found in the state-country lookup table for the specified country.
Trigger Criteria:
Context: An N1 segment where state/province code is not empty AND country code is not empty AND the state/province code is not found in the state-country lookup table for the specified country
Applied to: Invalid State/Country Combination?
Action: The system validates state/province and country code combination
Logic Flow:
IF An N1 segment where state/province code is not empty AND country code is not empty AND the state/province code is not found in the state-country lookup table for the specified country
AND The system validates state/province and country code combination
Business Justification: Dictates the expected operational logic and validation steps when n1 segment where contact name is not empty and communication qualifier is empty.
Trigger Criteria:
Context: An N1 segment where contact name is not empty AND communication qualifier is empty
Applied to: Contact Name Present but Communication Qualifier Missing?
Action: The system validates communication qualifier requirements for contact information
Logic Flow:
IF An N1 segment where contact name is not empty AND communication qualifier is empty
AND The system validates communication qualifier requirements for contact information
THEN:
• Generate error message indicating communication qualifier is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n1 segment where communication number is not empty and communication qualifier is empty.
Trigger Criteria:
Context: An N1 segment where communication number is not empty AND communication qualifier is empty
Applied to: Communication Number Present but Communication Qualifier Missing?
Action: The system validates communication qualifier requirements for communication number
Logic Flow:
IF An N1 segment where communication number is not empty AND communication qualifier is empty
AND The system validates communication qualifier requirements for communication number
THEN:
• Generate error message indicating communication qualifier is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment where communication qualifier is not empty and communication qualifier is not equal to spaces and not equal to 'fx' (fax) and not equal to 'te' (telephone).
Trigger Criteria:
Context: An N1 segment where communication qualifier is not empty AND communication qualifier is not equal to spaces AND not equal to 'FX' (fax) AND not equal to 'TE' (telephone)
Applied to: Invalid Communication Qualifier Value?
Action: The system validates communication qualifier values
Logic Flow:
IF An N1 segment where communication qualifier is not empty AND communication qualifier is not equal to spaces AND not equal to 'FX' (fax) AND not equal to 'TE' (telephone)
AND The system validates communication qualifier values
THEN:
• Generate error message indicating invalid communication qualifier value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment where (communication qualifier is not empty or contact name is not empty) and communication number is empty.
Trigger Criteria:
Context: An N1 segment where (communication qualifier is not empty OR contact name is not empty) AND communication number is empty
Applied to: Communication Qualifier Present but Communication Number Missing?
Action: The system validates communication number requirements
Logic Flow:
IF An N1 segment where (communication qualifier is not empty OR contact name is not empty) AND communication number is empty
AND The system validates communication number requirements
THEN:
• Generate error message indicating communication number is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper or consignee record (sequence 1 or 2) is being validated.
Trigger Criteria:
Context: A shipper or consignee record (sequence 1 or 2) is being validated
Applied to: All Required Fields Empty?
Action: The entity name is empty AND address information is empty AND location information is empty AND contact information is empty
Logic Flow:
IF A shipper or consignee record (sequence 1 or 2) is being validated
AND The entity name is empty AND address information is empty AND location information is empty AND contact information is empty
THEN:
• Generate required field errors for entity name, address, city, state, postal code, and country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment record is being validated.
Trigger Criteria:
Context: An N1 segment record is being validated
Applied to: Entity ID Missing but Address/Contact Present?
Action: The entity ID code is empty AND (address information is not empty OR location information is not empty OR contact information is not empty)
Logic Flow:
IF An N1 segment record is being validated
AND The entity ID code is empty AND (address information is not empty OR location information is not empty OR contact information is not empty)
THEN:
• Generate an error indicating entity ID code is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment record is being validated.
Trigger Criteria:
Context: An N1 segment record is being validated
Applied to: Name Missing but Address/Contact Present?
Action: The entity name is empty AND (address information is not empty OR location information is not empty OR contact information is not empty)
Logic Flow:
IF An N1 segment record is being validated
AND The entity name is empty AND (address information is not empty OR location information is not empty OR contact information is not empty)
THEN:
• Generate an error indicating entity name is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment record is being validated.
Trigger Criteria:
Context: An N1 segment record is being validated
Applied to: Entity ID Present but Name Missing?
Action: The entity ID code is not empty AND the entity name is empty
Logic Flow:
IF An N1 segment record is being validated
AND The entity ID code is not empty AND the entity name is empty
THEN:
• Generate an error indicating entity name is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment record is being validated.
Trigger Criteria:
Context: An N1 segment record is being validated
Applied to: Entity ID Present but Address Missing?
Action: The entity ID code is not empty AND the primary address line is empty
Logic Flow:
IF An N1 segment record is being validated
AND The entity ID code is not empty AND the primary address line is empty
THEN:
• Generate an error indicating address information is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n1 segment record with sequence number greater than 2 is being validated.
Trigger Criteria:
Context: An N1 segment record with sequence number greater than 2 is being validated
Applied to: Invalid Entity ID Value?
Action: The entity ID code is not empty AND the entity ID is not a valid entity type AND the entity ID is not 'SH' (shipper) AND the entity ID is not 'CN' (consignee) AND the entity ID is not 'CB' (customs broker)
Logic Flow:
IF An N1 segment record with sequence number greater than 2 is being validated
AND The entity ID code is not empty AND the entity ID is not a valid entity type AND the entity ID is not 'SH' (shipper) AND the entity ID is not 'CN' (consignee) AND the entity ID is not 'CB' (customs broker)
THEN:
• Generate an error indicating invalid entity ID value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n1 segment record with location information is being validated.
Trigger Criteria:
Context: An N1 segment record with location information is being validated
Applied to: City Name Missing?
Action: Location information is not empty AND city name is empty
Logic Flow:
IF An N1 segment record with location information is being validated
AND Location information is not empty AND city name is empty
THEN:
• Generate an error indicating city name is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n1 segment record with location information is being validated.
Trigger Criteria:
Context: An N1 segment record with location information is being validated
Applied to: Country is CA/US/MX and State Missing?
Action: Country code is 'CA' (Canada) OR 'US' (United States) OR 'MX' (Mexico) AND state/province code is empty
Logic Flow:
IF An N1 segment record with location information is being validated
AND Country code is 'CA' (Canada) OR 'US' (United States) OR 'MX' (Mexico) AND state/province code is empty
THEN:
• Generate an error indicating state/province code is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n1 segment record with location information is being validated.
Trigger Criteria:
Context: An N1 segment record with location information is being validated
Applied to: Country Code Missing?
Action: Location information is not empty AND country code is empty
Logic Flow:
IF An N1 segment record with location information is being validated
AND Location information is not empty AND country code is empty
THEN:
• Generate an error indicating country code is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment record with city name is being validated.
Trigger Criteria:
Context: An N1 segment record with city name is being validated
Applied to: City Name Length < 2?
Action: City name is not empty AND city name length is less than 2 characters
Logic Flow:
IF An N1 segment record with city name is being validated
AND City name is not empty AND city name length is less than 2 characters
THEN:
• Generate an error indicating minimum length of 2 characters is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment record with postal code is being validated.
Trigger Criteria:
Context: An N1 segment record with postal code is being validated
Applied to: Postal Code Length < 3?
Action: Postal code is not empty AND postal code length is less than 3 characters
Logic Flow:
IF An N1 segment record with postal code is being validated
AND Postal code is not empty AND postal code length is less than 3 characters
THEN:
• Generate an error indicating minimum length of 3 characters is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment record with state and country codes is being validated.
Trigger Criteria:
Context: An N1 segment record with state and country codes is being validated
Applied to: Invalid State/Country Combination?
Action: State/province code and country code combination is not found in the state-country reference table
Logic Flow:
IF An N1 segment record with state and country codes is being validated
AND State/province code and country code combination is not found in the state-country reference table
THEN:
• Generate an error indicating invalid state/province code for the specified country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment record with contact information is being validated.
Trigger Criteria:
Context: An N1 segment record with contact information is being validated
Applied to: Contact Name Present but Qualifier Missing?
Action: Contact person name is not empty AND communication number qualifier is empty
Logic Flow:
IF An N1 segment record with contact information is being validated
AND Contact person name is not empty AND communication number qualifier is empty
THEN:
• Generate an error indicating communication number qualifier is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment record with contact information is being validated.
Trigger Criteria:
Context: An N1 segment record with contact information is being validated
Applied to: Communication Number Present but Qualifier Missing?
Action: Communication number is not empty AND communication number qualifier is empty
Logic Flow:
IF An N1 segment record with contact information is being validated
AND Communication number is not empty AND communication number qualifier is empty
THEN:
• Generate an error indicating communication number qualifier is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment record with contact information is being validated.
Trigger Criteria:
Context: An N1 segment record with contact information is being validated
Applied to: Qualifier or Name Present but Number Missing?
Action: (Communication number qualifier is not empty OR contact person name is not empty) AND communication number is empty
Logic Flow:
IF An N1 segment record with contact information is being validated
AND (Communication number qualifier is not empty OR contact person name is not empty) AND communication number is empty
THEN:
• Generate an error indicating communication number is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 segment record with communication qualifier is being validated.
Trigger Criteria:
Context: An N1 segment record with communication qualifier is being validated
Applied to: Invalid Communication Qualifier Value?
Action: Communication number qualifier is not empty AND qualifier is not 'TE' (telephone) AND qualifier is not 'FX' (fax) AND qualifier is not spaces
Logic Flow:
IF An N1 segment record with communication qualifier is being validated
AND Communication number qualifier is not empty AND qualifier is not 'TE' (telephone) AND qualifier is not 'FX' (fax) AND qualifier is not spaces
THEN:
• Generate an error indicating invalid communication qualifier value
R-GCCCCADD-cbl-00719 (+26)File: GCCCCADD.cblBusiness Rule: State Country Combination Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record with address information is being processed.
Trigger Criteria:
Context: A record with address information is being processed
Applied to: Address Data Present?
Action: The system evaluates the N4 segment data for presence of address fields
Logic Flow:
IF A record with address information is being processed
AND The system evaluates the N4 segment data for presence of address fields
THEN:
• If N4 data is empty or spaces, skip validation; otherwise proceed with state-country validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address data is present in the n4 segment.
Trigger Criteria:
Context: Address data is present in the N4 segment
Applied to: Get State/Province Code
Action: The system processes the N402 state/province code field
Logic Flow:
IF Address data is present in the N4 segment
AND The system processes the N402 state/province code field
THEN:
• The state/province code is extracted and prepared for country validation lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address data is present with state/province code extracted.
Trigger Criteria:
Context: Address data is present with state/province code extracted
Applied to: Get Country Code
Action: The system processes the N404 country code field
Logic Flow:
IF Address data is present with state/province code extracted
AND The system processes the N404 country code field
THEN:
• The country code is extracted and prepared for state-country combination validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state/province code and country code have been extracted from address data.
Trigger Criteria:
Context: State/province code and country code have been extracted from address data
Applied to: Search State-Country Lookup Table
Action: The system searches the TB-STATE-COUNTRY table for matching state and country combination
Logic Flow:
IF State/province code and country code have been extracted from address data
AND The system searches the TB-STATE-COUNTRY table for matching state and country combination
THEN:
• The system locates the corresponding entry or determines no match exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when search has been performed on the tb-state-country lookup table.
Trigger Criteria:
Context: A search has been performed on the TB-STATE-COUNTRY lookup table
Applied to: State-Country Combination Found?
Action: The system evaluates if the state entry matches the state/province code AND the country entry matches the country code
Logic Flow:
IF A search has been performed on the TB-STATE-COUNTRY lookup table
AND The system evaluates if the state entry matches the state/province code AND the country entry matches the country code
THEN:
• If both match, mark as valid combination; otherwise mark as invalid combination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when state/province code and country code combination exists in the tb-state-country lookup table.
Trigger Criteria:
Context: The state/province code and country code combination exists in the TB-STATE-COUNTRY lookup table
Applied to: Mark as Valid Combination
Action: The system confirms the combination is valid
Logic Flow:
IF The state/province code and country code combination exists in the TB-STATE-COUNTRY lookup table
AND The system confirms the combination is valid
THEN:
• The system sets the valid province flag to TRUE and continues processing without errors
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state/province code and country code combination does not exist in the tb-state-country lookup table.
Trigger Criteria:
Context: The state/province code and country code combination does not exist in the TB-STATE-COUNTRY lookup table
Applied to: Generate Invalid State/Province Error
Action: The system determines the combination is invalid
Logic Flow:
IF The state/province code and country code combination does not exist in the TB-STATE-COUNTRY lookup table
AND The system determines the combination is invalid
THEN:
• The system generates error code GCCS-E-INVALID-N402 for invalid state/province code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when invalid state/province error has been generated.
Trigger Criteria:
Context: An invalid state/province error has been generated
Applied to: Add Error Message to Validation Results
Action: The system processes the error for reporting
Logic Flow:
IF An invalid state/province error has been generated
AND The system processes the error for reporting
THEN:
• The error message is retrieved using Z400-RETRIEVE-ERR-MSGand added to the message array using Z100-ADD-MESSAGE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when address has a country code of canada, usa, or mexico.
Trigger Criteria:
Context: An address has a country code of Canada, USA, or Mexico
Applied to: Canada/USA/Mexico require state/province
Action: The system validates the N402 state/province code field
Logic Flow:
IF An address has a country code of Canada, USA, or Mexico
AND The system validates the N402 state/province code field
THEN:
• If the state/province code is spaces, generate required field error GCCS-E-GEN-REQUIRED-N402
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when state/province code and country code are provided in address data.
Trigger Criteria:
Context: A state/province code and country code are provided in address data
Applied to: State must match country in lookup table
Action: The system searches the TB-STATE-COUNTRY lookup table
Logic Flow:
IF A state/province code and country code are provided in address data
AND The system searches the TB-STATE-COUNTRY lookup table
THEN:
• The state entry must match the provided state/province code AND the country entry must match the provided country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address has a state/province code but no country code specified.
Trigger Criteria:
Context: An address has a state/province code but no country code specified
Applied to: Other countries auto-assign country from state
Action: The system looks up the state/province in the TB-STATE-COUNTRY table
Logic Flow:
IF An address has a state/province code but no country code specified
AND The system looks up the state/province in the TB-STATE-COUNTRY table
THEN:
• The system automatically assigns the corresponding country code from the lookup table to the N404 country field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n4 address segment is being processed for validation.
Trigger Criteria:
Context: An N4 address segment is being processed for validation
Applied to: N4 Address Data Present?
Action: The system checks if the N4 address data field contains any information
Logic Flow:
IF An N4 address segment is being processed for validation
AND The system checks if the N4 address data field contains any information
THEN:
• If N4 data is empty or spaces, skip address validation; otherwise proceed with validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address contains a country code.
Trigger Criteria:
Context: An address contains a country code
Applied to: Country is Canada, USA, or Mexico?
Action: The system evaluates the country code value
Logic Flow:
IF An address contains a country code
AND The system evaluates the country code value
THEN:
• If country code is Canada, USA, or Mexico, require state/province validation; otherwise skip state/province requirement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address for canada, usa, or mexico is being validated.
Trigger Criteria:
Context: An address for Canada, USA, or Mexico is being validated
Applied to: State/Province Code Present?
Action: The system checks the state/province code field
Logic Flow:
IF An address for Canada, USA, or Mexico is being validated
AND The system checks the state/province code field
THEN:
• If state/province code is missing or spaces, generate required state/province error; otherwise proceed with validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when state/province code and country code are provided.
Trigger Criteria:
Context: A state/province code and country code are provided
Applied to: Search State-Country Lookup Table
Action: The system searches the state-country lookup table
Logic Flow:
IF A state/province code and country code are provided
AND The system searches the state-country lookup table
THEN:
• Find matching entry where state code equals table state entry and country code equals table country entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when state-country lookup has been performed.
Trigger Criteria:
Context: A state-country lookup has been performed
Applied to: State-Country Combination Found?
Action: The system evaluates the search results
Logic Flow:
IF A state-country lookup has been performed
AND The system evaluates the search results
THEN:
• If combination found, mark as valid; if not found, generate invalid state/province error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when state/province and country combination has been found in the lookup table.
Trigger Criteria:
Context: A state/province and country combination has been found in the lookup table
Applied to: Mark as Valid State/Province
Action: The validation process confirms the combination is valid
Logic Flow:
IF A state/province and country combination has been found in the lookup table
AND The validation process confirms the combination is valid
THEN:
• Set the validation flag to indicate valid state/province combination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when state/province and country combination is not found in the lookup table.
Trigger Criteria:
Context: A state/province and country combination is not found in the lookup table
Applied to: Generate Invalid State/Province Error
Action: The validation process determines the combination is invalid
Logic Flow:
IF A state/province and country combination is not found in the lookup table
AND The validation process determines the combination is invalid
THEN:
• Generate error message indicating invalid state/province code for the country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address for canada, usa, or mexico is missing state/province code.
Trigger Criteria:
Context: An address for Canada, USA, or Mexico is missing state/province code
Applied to: Generate Required State/Province Error
Action: The validation process checks for required state/province code
Logic Flow:
IF An address for Canada, USA, or Mexico is missing state/province code
AND The validation process checks for required state/province code
THEN:
• Generate error message indicating state/province code is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address is being validated.
Trigger Criteria:
Context: An address is being validated
Applied to: Country Code Missing?
Action: The system checks the country code field
Logic Flow:
IF An address is being validated
AND The system checks the country code field
THEN:
• If country code is spaces or missing, attempt to derive from state/province; otherwise complete validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when country code is missing but state/province code is provided.
Trigger Criteria:
Context: Country code is missing but state/province code is provided
Applied to: Search State-Country Table for Country
Action: The system searches the state-country table using state/province code
Logic Flow:
IF Country code is missing but state/province code is provided
AND The system searches the state-country table using state/province code
THEN:
• Find matching entry where state/province code equals table state entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when matching state entry is found in the state-country table.
Trigger Criteria:
Context: A matching state entry is found in the state-country table
Applied to: Set Country Code from Table
Action: The system retrieves the corresponding country code
Logic Flow:
IF A matching state entry is found in the state-country table
AND The system retrieves the corresponding country code
THEN:
• Set the country code field to the table country entry value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when country code is missing and cannot be derived from state/province code.
Trigger Criteria:
Context: Country code is missing and cannot be derived from state/province code
Applied to: Generate Required Country Code Error
Action: The validation process completes country code determination
Logic Flow:
IF Country code is missing and cannot be derived from state/province code
AND The validation process completes country code determination
THEN:
• Generate error message indicating country code is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address record with country code of canada (ca), usa (us), or mexico (mx).
Trigger Criteria:
Context: An address record with country code of Canada (CA), USA (US), or Mexico (MX)
Applied to: State/Province Code Present?
Action: The state or province code field is empty or spaces
Logic Flow:
IF An address record with country code of Canada (CA), USA (US), or Mexico (MX)
AND The state or province code field is empty or spaces
THEN:
• Generate a required state/province code error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address record with both state/province code and country code populated.
Trigger Criteria:
Context: An address record with both state/province code and country code populated
Applied to: State/Province and Country Match Found?
Action: The state/province code and country code combination is searched in the state-country lookup table
Logic Flow:
IF An address record with both state/province code and country code populated
AND The state/province code and country code combination is searched in the state-country lookup table
THEN:
• If a matching combination is found, set valid province flag; otherwise set invalid province flag and generate invalid state/province error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address record with state/province code populated but country code is empty or spaces.
Trigger Criteria:
Context: An address record with state/province code populated but country code is empty or spaces
Applied to: Lookup Country by State/Province
Action: The state/province code is searched in the state-country lookup table
Logic Flow:
IF An address record with state/province code populated but country code is empty or spaces
AND The state/province code is searched in the state-country lookup table
THEN:
• If a matching state/province is found, assign the corresponding country code from the lookup table; otherwise generate a required country code error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address record being validated.
Trigger Criteria:
Context: An address record being validated
Applied to: Generate Required Country Code Error
Action: The country code field is empty or spaces and cannot be determined from state/province lookup
Logic Flow:
IF An address record being validated
AND The country code field is empty or spaces and cannot be determined from state/province lookup
Business Justification: Establishes the required business protocol to be followed when validation error has been detected and an error message number has been set.
Trigger Criteria:
Context: A validation error has been detected and an error message number has been set
Applied to: Retrieve Error Message Text from MS Table
Action: The system attempts to retrieve the error message text from the MS table using the error message number
Logic Flow:
IF A validation error has been detected and an error message number has been set
AND The system attempts to retrieve the error message text from the MS table using the error message number
THEN:
• The system should lookup the message text in the MS table and store the retrieved English text for display
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when error message needs to be added to the error message array.
Trigger Criteria:
Context: An error message needs to be added to the error message array
Applied to: Check Message Index Limit
Action: The current message index is checked against the maximum limit of 10
Logic Flow:
IF An error message needs to be added to the error message array
AND The current message index is checked against the maximum limit of 10
THEN:
• If the index is less than 10, the message should be added; otherwise, the message should be skipped to prevent array overflow
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when error message array has available space (index less than 10) and a formatted error message is ready.
Trigger Criteria:
Context: The error message array has available space (index less than 10) and a formatted error message is ready
Applied to: Add Message to Error Array
Action: The system adds the error message to the array
Logic Flow:
IF The error message array has available space (index less than 10) and a formatted error message is ready
AND The system adds the error message to the array
THEN:
• The message should be stored in the array at the current index position, the error number should be stored in the corresponding error number array, the message index should be incremented by 1, and the return error flag should be set to indicate an error condition
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when error message has been processed and added to the error array.
Trigger Criteria:
Context: An error message has been processed and added to the error array
Applied to: Clear Working Variables
Action: The error processing is complete
Logic Flow:
IF An error message has been processed and added to the error array
AND The error processing is complete
THEN:
• The working message variable and working error message number variable should be cleared to spaces to prepare for the next error processing cycle
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when customs manifest is being created.
Trigger Criteria:
Context: A customs manifest is being created
Applied to: Required Field Missing
Action: The shipper name field is validated
Logic Flow:
IF A customs manifest is being created
AND The shipper name field is validated
THEN:
• If the shipper name is blank or spaces, an error message for invalid shipper name should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when customs manifest is being created.
Trigger Criteria:
Context: A customs manifest is being created
Applied to: Required Field Missing
Action: The consignee name field is validated
Logic Flow:
IF A customs manifest is being created
AND The consignee name field is validated
THEN:
• If the consignee name is blank or spaces, an error message for invalid consignee name should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs manifest is being processed.
Trigger Criteria:
Context: A customs manifest is being processed
Applied to: Required Field Missing
Action: The origin station name is validated
Logic Flow:
IF A customs manifest is being processed
AND The origin station name is validated
THEN:
• If the origin station name is blank or spaces, an error message for invalid origin station name should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs manifest is being processed.
Trigger Criteria:
Context: A customs manifest is being processed
Applied to: Required Field Missing
Action: The destination station name is validated
Logic Flow:
IF A customs manifest is being processed
AND The destination station name is validated
THEN:
• If the destination station name is blank or spaces, an error message for invalid destination station name should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs manifest is being processed.
Trigger Criteria:
Context: A customs manifest is being processed
Applied to: Required Field Missing
Action: The origin province state code is validated
Logic Flow:
IF A customs manifest is being processed
AND The origin province state code is validated
THEN:
• If the origin province state code is blank or spaces, an error message for invalid origin province state code should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs manifest is being processed.
Trigger Criteria:
Context: A customs manifest is being processed
Applied to: Required Field Missing
Action: The manifest upon port is validated
Logic Flow:
IF A customs manifest is being processed
AND The manifest upon port is validated
THEN:
• If the manifest upon port is blank or spaces, error flag 1 should be set to indicate a missing manifest upon port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest port needs to be validated.
Trigger Criteria:
Context: A manifest port needs to be validated
Applied to: Invalid Manifest Port
Action: The system looks up the manifest port in the MC table
Logic Flow:
IF A manifest port needs to be validated
AND The system looks up the manifest port in the MC table
THEN:
• If the manifest port is not found in the MC table, an error message for invalid manifest port should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest port has been found in the mc table.
Trigger Criteria:
Context: A manifest port has been found in the MC table
Applied to: Invalid Customs Code
Action: The Canadian customs code is validated
Logic Flow:
IF A manifest port has been found in the MC table
AND The Canadian customs code is validated
THEN:
• If the Canadian customs code equals '00000', an error message for invalid Canadian customs code should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when conveying car initial is provided.
Trigger Criteria:
Context: A conveying car initial is provided
Applied to: Invalid Entity ID
Action: The conveying car is validated using the car validation system
Logic Flow:
IF A conveying car initial is provided
AND The conveying car is validated using the car validation system
THEN:
• If the car validation returns all asterisks indicating an invalid car, an error message for invalid conveying car should be generated using the original car value as the message number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper province state code is provided.
Trigger Criteria:
Context: A shipper province state code is provided
Applied to: Invalid State/Country Combination
Action: The system validates the province state code against the state-country lookup table
Logic Flow:
IF A shipper province state code is provided
AND The system validates the province state code against the state-country lookup table
THEN:
• If no matching country is found for the province state code, an error message for invalid shipper province state code should be generated using the province state code as the message number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee province state code is provided.
Trigger Criteria:
Context: A consignee province state code is provided
Applied to: Invalid State/Country Combination
Action: The system validates the province state code against the state-country lookup table
Logic Flow:
IF A consignee province state code is provided
AND The system validates the province state code against the state-country lookup table
THEN:
• If no matching country is found for the province state code, an error message for invalid consignee province state code should be generated using the province state code as the message number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when destination station is being processed and sub-location validation is required.
Trigger Criteria:
Context: A destination station is being processed and sub-location validation is required
Applied to: Missing Address Information
Action: The sub-location code is validated against business rules
Logic Flow:
IF A destination station is being processed and sub-location validation is required
AND The sub-location code is validated against business rules
THEN:
• If the sub-location code is missing and none of the exemption conditions are met (CSA indicator on, same manifest ports not IIS-A6, US destination, or arrival indicator Y), an error message for invalid destination station sub-location code should be generated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when waybill date is being processed for eta calculation.
Trigger Criteria:
Context: A waybill date is being processed for ETA calculation
Applied to: Invalid Entity ID
Action: The date calculation system processes the waybill date
Logic Flow:
IF A waybill date is being processed for ETA calculation
AND The date calculation system processes the waybill date
THEN:
• If the date calculation fails, an error message for invalid waybill date should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment is being validated and an entity id is present.
Trigger Criteria:
Context: An N1 segment is being validated and an entity ID is present
Applied to: Required Field Missing
Action: The N102 name field is checked for completeness
Logic Flow:
IF An N1 segment is being validated and an entity ID is present
AND The N102 name field is checked for completeness
THEN:
• If the N102 name field is blank or spaces, an error message for required N102 field should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment contains n3, n4, or per data.
Trigger Criteria:
Context: An N1 segment contains N3, N4, or PER data
Applied to: Required Field Missing
Action: The N101 entity ID field is validated
Logic Flow:
IF An N1 segment contains N3, N4, or PER data
AND The N101 entity ID field is validated
THEN:
• If the N101 entity ID field is blank or spaces while other segment data exists, an error message for required N101 field should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when n1 segment with sequence number greater than 2 is being validated.
Trigger Criteria:
Context: An N1 segment with sequence number greater than 2 is being validated
Applied to: Invalid Entity ID
Action: The entity ID value is checked against valid values
Logic Flow:
IF An N1 segment with sequence number greater than 2 is being validated
AND The entity ID value is checked against valid values
THEN:
• If the entity ID is not in the valid values list or is SH (shipper), CN (consignee), or CB (customs broker), an error message for invalid N101 value should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment has a valid entity id.
Trigger Criteria:
Context: An N1 segment has a valid entity ID
Applied to: Missing Address Information
Action: The N301 address information field is validated
Logic Flow:
IF An N1 segment has a valid entity ID
AND The N301 address information field is validated
THEN:
• If the N301 address information field is blank or spaces, an error message for required N301 field should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n4 segment contains location data.
Trigger Criteria:
Context: An N4 segment contains location data
Applied to: Required Field Missing
Action: The N401 city name field is validated
Logic Flow:
IF An N4 segment contains location data
AND The N401 city name field is validated
THEN:
• If the N401 city name field is blank or spaces, an error message for required N401 field should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n4 segment contains location data.
Trigger Criteria:
Context: An N4 segment contains location data
Applied to: Required Field Missing
Action: The N404 country code field is validated
Logic Flow:
IF An N4 segment contains location data
AND The N404 country code field is validated
THEN:
• If the N404 country code field is blank or spaces, an error message for required N404 field should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when city name is provided in the n401 field.
Trigger Criteria:
Context: A city name is provided in the N401 field
Applied to: Minimum Length Not Met
Action: The length of the city name is validated
Logic Flow:
IF A city name is provided in the N401 field
AND The length of the city name is validated
THEN:
• If the city name has fewer than 2 non-space characters, an error message for minimum length 2 required should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when postal code is provided in the n403 field.
Trigger Criteria:
Context: A postal code is provided in the N403 field
Applied to: Minimum Length Not Met
Action: The length of the postal code is validated
Logic Flow:
IF A postal code is provided in the N403 field
AND The length of the postal code is validated
THEN:
• If the postal code has fewer than 3 non-space characters, an error message for minimum length 3 required should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when country code indicates canada, usa, or mexico.
Trigger Criteria:
Context: The country code indicates Canada, USA, or Mexico
Applied to: Required Field Missing
Action: The N402 state province code field is validated
Logic Flow:
IF The country code indicates Canada, USA, or Mexico
AND The N402 state province code field is validated
THEN:
• If the N402 state province code field is blank or spaces, an error message for required N402 field should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when both state province code and country code are provided for north american countries.
Trigger Criteria:
Context: Both state province code and country code are provided for North American countries
Applied to: Invalid State/Country Combination
Action: The combination is validated against the state-country lookup table
Logic Flow:
IF Both state province code and country code are provided for North American countries
AND The combination is validated against the state-country lookup table
THEN:
• If no valid combination is found in the lookup table, an error message for invalid N402 should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when per segment contains contact name or communication number.
Trigger Criteria:
Context: A PER segment contains contact name or communication number
Applied to: Required Field Missing
Action: The PER03 communication number qualifier is validated
Logic Flow:
IF A PER segment contains contact name or communication number
AND The PER03 communication number qualifier is validated
THEN:
• If the PER03 field is blank while PER02 name or PER04 communication number is provided, an error message for required PER03 field should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when communication number qualifier is provided in per03.
Trigger Criteria:
Context: A communication number qualifier is provided in PER03
Applied to: Invalid Communication Qualifier
Action: The qualifier value is validated against approved values
Logic Flow:
IF A communication number qualifier is provided in PER03
AND The qualifier value is validated against approved values
THEN:
• If the PER03 value is not spaces, 'FX' (fax), or 'TE' (telephone), an error message for invalid PER03 value should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when per segment contains communication qualifier or contact name.
Trigger Criteria:
Context: A PER segment contains communication qualifier or contact name
Applied to: Required Field Missing
Action: The PER04 communication number field is validated
Logic Flow:
IF A PER segment contains communication qualifier or contact name
AND The PER04 communication number field is validated
THEN:
• If the PER04 field is blank while PER03 qualifier or PER02 name is provided, an error message for required PER04 field should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs manifest is being validated.
Trigger Criteria:
Context: A customs manifest is being validated
Applied to: Required Field Missing
Action: The lading quantity qualifier field is checked
Logic Flow:
IF A customs manifest is being validated
AND The lading quantity qualifier field is checked
THEN:
• If the lading quantity qualifier is blank or spaces, an error message for required N1010 field should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when lading quantity qualifier is provided.
Trigger Criteria:
Context: A lading quantity qualifier is provided
Applied to: Invalid Entity ID
Action: The qualifier is looked up in the MU table
Logic Flow:
IF A lading quantity qualifier is provided
AND The qualifier is looked up in the MU table
THEN:
• If the qualifier is not found in the MU table, an error message for not found on MU should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when segment with shipper sequence number (0001) contains no name, address, location, or contact data.
Trigger Criteria:
Context: A segment with shipper sequence number (0001) contains no name, address, location, or contact data
Applied to: Required Field Missing
Action: The segment is validated for completeness
Logic Flow:
IF A segment with shipper sequence number (0001) contains no name, address, location, or contact data
AND The segment is validated for completeness
THEN:
• An error message for shipper required should be generated and added to the error collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when segment with consignee sequence number (0002) contains no name, address, location, or contact data.
Trigger Criteria:
Context: A segment with consignee sequence number (0002) contains no name, address, location, or contact data
Applied to: Required Field Missing
Action: The segment is validated for completeness
Logic Flow:
IF A segment with consignee sequence number (0002) contains no name, address, location, or contact data
AND The segment is validated for completeness
THEN:
• An error message for consignee required should be generated and added to the error collection
Business Justification: Defines the strict business conditions required to proceed when string with potential trailing spaces needs length calculation.
Trigger Criteria:
Context: A string with potential trailing spaces needs length calculation
Applied to: String Length Calculation - Calculate actual length of strings excluding trailing spaces
Action: The system processes the string from end to beginning checking each character
Logic Flow:
IF A string with potential trailing spaces needs length calculation
AND The system processes the string from end to beginning checking each character
THEN:
• The system returns the length excluding all trailing spaces, with zero length if string contains only spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when string length calculation process is starting.
Trigger Criteria:
Context: A string length calculation process is starting
Applied to: Initialize String Length Counter
Action: The system begins the length calculation routine
Logic Flow:
IF A string length calculation process is starting
AND The system begins the length calculation routine
THEN:
• The system sets the string length counter to the maximum possible string length to start counting backwards
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is examining a character at a specific position in the string.
Trigger Criteria:
Context: The system is examining a character at a specific position in the string
Applied to: Current Character = Space?
Action: The character at the current position is evaluated
Logic Flow:
IF The system is examining a character at a specific position in the string
AND The character at the current position is evaluated
THEN:
• The system determines whether the character is a space and proceeds accordingly with either continuing the search or finalizing the length
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when space character is found at the current position during string length calculation.
Trigger Criteria:
Context: A space character is found at the current position during string length calculation
Applied to: Move to Previous Character, Decrement Counter
Action: The system needs to continue searching for non-space characters
Logic Flow:
IF A space character is found at the current position during string length calculation
AND The system needs to continue searching for non-space characters
THEN:
• The system decrements the position counter by one to examine the previous character position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system is processing characters backward through a string.
Trigger Criteria:
Context: The system is processing characters backward through a string
Applied to: Counter = 0?
Action: The position counter reaches zero
Logic Flow:
IF The system is processing characters backward through a string
AND The position counter reaches zero
THEN:
• The system recognizes that the entire string contains only spaces and sets the final length accordingly
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has found the last non-space character position or determined the string contains only spaces.
Trigger Criteria:
Context: The system has found the last non-space character position or determined the string contains only spaces
Applied to: Set Final String Length
Action: The string length calculation process is complete
Logic Flow:
IF The system has found the last non-space character position or determined the string contains only spaces
AND The string length calculation process is complete
THEN:
• The system sets the final string length to the current counter value representing the meaningful content length
R-GCCCCADD-cbl-00770 (+30)File: GCCCCADD.cblBusiness Rule: Haulage Rights Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment with an ima code.
Trigger Criteria:
Context: A shipment with an IMA code
Applied to: IMA Code = 'HM'?
Action: The IMA code is evaluated for haulage requirements
Logic Flow:
IF A shipment with an IMA code
AND The IMA code is evaluated for haulage requirements
THEN:
• If IMA code equals 'HM' then haulage processing is required, otherwise haulage fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment in haulage mode.
Trigger Criteria:
Context: A shipment in haulage mode
Applied to: Haulage Right Carrier exists?
Action: The haulage right carrier field is checked
Logic Flow:
IF A shipment in haulage mode
AND The haulage right carrier field is checked
THEN:
• If haulage right carrier is spaces then set unknown SCAC and reject haulage, otherwise proceed with carrier lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid haulage right carrier code.
Trigger Criteria:
Context: A valid haulage right carrier code
Applied to: Lookup Carrier Code in CC Table
Action: The carrier code is looked up in the CC table
Logic Flow:
IF A valid haulage right carrier code
AND The carrier code is looked up in the CC table
THEN:
• The system retrieves the corresponding CCRA code for the carrier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid haulage right carrier code.
Trigger Criteria:
Context: A valid haulage right carrier code
Applied to: Lookup Carrier in CC Table
Action: The system looks up the carrier in the CC table
Logic Flow:
IF A valid haulage right carrier code
AND The system looks up the carrier in the CC table
THEN:
• Retrieve the corresponding CCRA code for the haulage rights SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when carrier code lookup has been performed.
Trigger Criteria:
Context: A carrier code lookup has been performed
Applied to: Carrier Code Found?
Action: The lookup result is evaluated
Logic Flow:
IF A carrier code lookup has been performed
AND The lookup result is evaluated
THEN:
• If carrier code is found then set haulage rights SCAC from table, otherwise set unknown SCAC and reject haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when call from gcx011 with a ccn key starting with '6105'. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A call from GCX011 with a CCN key starting with '6105'
Applied to: Called from GCX011 and CCN starts with '6105'?
Action: The bill-as SCAC is valid (not 'UNKN', spaces, low-values, or '6105')
Logic Flow:
IF A call from GCX011 with a CCN key starting with '6105'
AND The bill-as SCAC is valid (not 'UNKN', spaces, low-values, or '6105')
THEN:
• Replace the first 4 characters of CCN key with the bill-as SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when modified ccn key for haulage processing.
Trigger Criteria:
Context: A modified CCN key for haulage processing
Applied to: Automated Haulage?
Action: The automated haulage flag is checked
Logic Flow:
IF A modified CCN key for haulage processing
AND The automated haulage flag is checked
THEN:
• If automated haulage then set CCN key suffix to 'E' and bill owner to '6105', otherwise set CCN key suffix to 'P' and bill owner to bill-as SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment with ima code not equal to 'hm'.
Trigger Criteria:
Context: A shipment with IMA code not equal to 'HM'
Applied to: Clear Haulage Fields for Non-HM
Action: Haulage processing is performed
Logic Flow:
IF A shipment with IMA code not equal to 'HM'
AND Haulage processing is performed
THEN:
• Clear haulage rights SCAC, haulage automated flag, and reject haulage indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when canadian customs code from manifest station.
Trigger Criteria:
Context: Canadian customs code from manifest station
Applied to: Build SS Table Key with Port Code
Action: SS table key is constructed
Logic Flow:
IF Canadian customs code from manifest station
AND SS table key is constructed
THEN:
• Build key with 'C' prefix followed by last 3 digits of Canadian customs code, and use '6105' if haulage rights SCAC is spaces, otherwise use haulage rights SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when constructed ss table key.
Trigger Criteria:
Context: A constructed SS table key
Applied to: Lookup SS Table Entry
Action: The SS table is queried
Logic Flow:
IF A constructed SS table key
AND The SS table is queried
THEN:
• Retrieve the corresponding station and SCAC configuration data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ss table data for a haulage shipment.
Trigger Criteria:
Context: SS table data for a haulage shipment
Applied to: Haulage Agreement = 'Y'?
Action: The haulage agreement flag is evaluated
Logic Flow:
IF SS table data for a haulage shipment
AND The haulage agreement flag is evaluated
THEN:
• If haulage agreement equals 'Y' then accept haulage, otherwise reject haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage shipment with ss table data found.
Trigger Criteria:
Context: A haulage shipment with SS table data found
Applied to: Set Automated Carrier Flag
Action: Automated carrier processing is performed
Logic Flow:
IF A haulage shipment with SS table data found
AND Automated carrier processing is performed
THEN:
• Set haulage automated flag from SS table automated carrier field, andif automated haulage then set bill owner to '6105'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage shipment with valid ss table data.
Trigger Criteria:
Context: A haulage shipment with valid SS table data
Applied to: Set Bill-As SCAC from Haulage Bill Init
Action: Bill-as SCAC assignment is performed
Logic Flow:
IF A haulage shipment with valid SS table data
AND Bill-as SCAC assignment is performed
THEN:
• Set bill-as SCAC from SS table haulage bill initial field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when non-haulage shipment with valid ss table data.
Trigger Criteria:
Context: A non-haulage shipment with valid SS table data
Applied to: Set Bill-As SCAC from Line Bill Init
Action: Bill-as SCAC assignment is performed
Logic Flow:
IF A non-haulage shipment with valid SS table data
AND Bill-as SCAC assignment is performed
THEN:
• Set bill-as SCAC from SS table line bill initial field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when haulage shipment where ss table lookup fails.
Trigger Criteria:
Context: A haulage shipment where SS table lookup fails
Applied to: Handle SS Table Not Found - Set Defaults
Action: Default values are set
Logic Flow:
IF A haulage shipment where SS table lookup fails
AND Default values are set
THEN:
• Clear haulage automated flag, reject haulage, and set bill owner and bill-as SCAC to 'UNKN'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when non-haulage shipment where ss table lookup fails.
Trigger Criteria:
Context: A non-haulage shipment where SS table lookup fails
Applied to: Set Standard Bill Owner and SCAC to '6105'
Action: Default values are set
Logic Flow:
IF A non-haulage shipment where SS table lookup fails
AND Default values are set
THEN:
• Set bill owner and bill-as SCAC to '6105'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment record with an ima code.
Trigger Criteria:
Context: A shipment record with an IMA code
Applied to: IMA Code = 'HM'?
Action: The system evaluates the IMA code
Logic Flow:
IF A shipment record with an IMA code
AND The system evaluates the IMA code
THEN:
• If IMA code equals 'HM' then process haulage rights, otherwise clear all haulage-related fields and flags
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with ima code 'hm' requiring haulage processing.
Trigger Criteria:
Context: A shipment with IMA code 'HM' requiring haulage processing
Applied to: Haulage Right Carrier exists?
Action: The system checks for haulage right carrier information
Logic Flow:
IF A shipment with IMA code 'HM' requiring haulage processing
AND The system checks for haulage right carrier information
THEN:
• If haulage right carrier is blank then set unknown SCAC code, clear automated flag, set bill owner to unknown, and reject haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage right carrier code that needs to be validated.
Trigger Criteria:
Context: A haulage right carrier code that needs to be validated
Applied to: Carrier Found in CC Table?
Action: The carrier lookup in CC table fails
Logic Flow:
IF A haulage right carrier code that needs to be validated
AND The carrier lookup in CC table fails
THEN:
• Set haulage rights SCAC to unknown, clear automated flag, reject haulage, and set bill owner to unknown
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when successful cc table lookup for the haulage right carrier.
Trigger Criteria:
Context: A successful CC table lookup for the haulage right carrier
Applied to: Set Haulage Rights SCAC from CC Table
Action: The system processes the CC table result
Logic Flow:
IF A successful CC table lookup for the haulage right carrier
AND The system processes the CC table result
THEN:
• Set the haulage rights SCAC to the CCRA code from the CC table entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when processed haulage request with calling program context and ccn key.
Trigger Criteria:
Context: A processed haulage request with calling program context and CCN key
Applied to: Called from GCX011 and CCN starts with '6105'?
Action: The system checks if called from GCX011 and CCN key starts with '6105'
Logic Flow:
IF A processed haulage request with calling program context and CCN key
AND The system checks if called from GCX011 and CCN key starts with '6105'
THEN:
• If both conditions are true then proceed with bill-as SCAC validation, otherwise continue with SS table processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ccn key starting with '6105' from gcx011 call. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A CCN key starting with '6105' from GCX011 call
Applied to: Bill-As SCAC is valid?
Action: The system validates the bill-as SCAC code
Logic Flow:
IF A CCN key starting with '6105' from GCX011 call
AND The system validates the bill-as SCAC code
THEN:
• If bill-as SCAC is not 'UNKN', not spaces, not low-values, and not '6105' then modify CCN key with bill-as SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid bill-as scac code requiring ccn key modification.
Trigger Criteria:
Context: A valid bill-as SCAC code requiring CCN key modification
Applied to: Automated Haulage?
Action: The system determines if haulage is automated
Logic Flow:
IF A valid bill-as SCAC code requiring CCN key modification
AND The system determines if haulage is automated
THEN:
• If automated haulage then set CCN key suffix to 'E' and bill owner to '6105', otherwise set CCN key suffix to 'P' and bill owner to bill-as SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with ima code other than 'hm'.
Trigger Criteria:
Context: A shipment with IMA code other than 'HM'
Applied to: Clear Haulage Rights and Flags
Action: The system processes non-haulage shipments
Logic Flow:
IF A shipment with IMA code other than 'HM'
AND The system processes non-haulage shipments
THEN:
• Clear haulage rights SCAC, automated flag, and reject haulage indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when canadian customs code from manifest station processing.
Trigger Criteria:
Context: Canadian customs code from manifest station processing
Applied to: Build SS Table Key with Port Code
Action: The system builds SS table lookup key
Logic Flow:
IF Canadian customs code from manifest station processing
AND The system builds SS table lookup key
THEN:
• Construct port code with 'C' prefix plus last 3 digits of Canadian customs code, and combine with appropriate SCAC code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when requirement to lookup ss table entry.
Trigger Criteria:
Context: A requirement to lookup SS table entry
Applied to: Haulage Rights SCAC exists?
Action: The system determines which SCAC code to use
Logic Flow:
IF A requirement to lookup SS table entry
AND The system determines which SCAC code to use
THEN:
• If haulage rights SCAC is blank then use '6105' as SCAC code, otherwise use the haulage rights SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when constructed ss table key with port code and scac code.
Trigger Criteria:
Context: A constructed SS table key with port code and SCAC code
Applied to: Lookup SS Table Entry
Action: The system performs SS table lookup
Logic Flow:
IF A constructed SS table key with port code and SCAC code
AND The system performs SS table lookup
THEN:
• Retrieve the SS table entry containing haulage agreement and billing information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when successfully retrieved ss table entry.
Trigger Criteria:
Context: A successfully retrieved SS table entry
Applied to: Process SS Table Data for Haulage
Action: The system processes SS table data for haulage shipments
Logic Flow:
IF A successfully retrieved SS table entry
AND The system processes SS table data for haulage shipments
THEN:
• Set automated carrier flag from SS table, evaluate haulage agreement status, and configure bill owner and bill-as SCAC accordingly
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ss table entry with haulage agreement indicator.
Trigger Criteria:
Context: An SS table entry with haulage agreement indicator
Applied to: Haulage Agreement = 'Y'?
Action: The system evaluates the haulage agreement status
Logic Flow:
IF An SS table entry with haulage agreement indicator
AND The system evaluates the haulage agreement status
THEN:
• If haulage agreement equals 'Y' then accept haulage, otherwise reject haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when failed ss table lookup for a haulage shipment.
Trigger Criteria:
Context: A failed SS table lookup for a haulage shipment
Applied to: Handle SS Table Not Found - Set Defaults
Action: The system handles the SS table not found condition
Logic Flow:
IF A failed SS table lookup for a haulage shipment
AND The system handles the SS table not found condition
THEN:
• Clear automated flag, reject haulage, set bill owner to unknown, and set bill-as SCAC to unknown
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when failed ss table lookup for a non-haulage shipment.
Trigger Criteria:
Context: A failed SS table lookup for a non-haulage shipment
Applied to: Handle SS Table Not Found - Set Defaults
Action: The system handles the SS table not found condition
Logic Flow:
IF A failed SS table lookup for a non-haulage shipment
AND The system handles the SS table not found condition
THEN:
• Set bill owner to '6105' and set bill-as SCAC to '6105'
Business Justification: Establishes the required business protocol to be followed when business validation error has occurred and an error message number has been identified.
Trigger Criteria:
Context: A business validation error has occurred and an error message number has been identified
Applied to: Error Message Retrieval Request
Action: The system needs to retrieve the corresponding error message text
Logic Flow:
IF A business validation error has occurred and an error message number has been identified
AND The system needs to retrieve the corresponding error message text
THEN:
• The system should lookup the message text from the message table using the error number as the key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when error message retrieval request is initiated.
Trigger Criteria:
Context: An error message retrieval request is initiated
Applied to: Initialize Table Lookup Parameters
Action: Setting up the table lookup operation
Logic Flow:
IF An error message retrieval request is initiated
AND Setting up the table lookup operation
THEN:
• The system should clear all lookup parameters, set function code to 'GU' for get unique operation, set table identifier to 'MS' for message table, and use the error message number as the search key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when message table lookup operation has been performed.
Trigger Criteria:
Context: A message table lookup operation has been performed
Applied to: Table Access Successful?
Action: The table access returns successfully
Logic Flow:
IF A message table lookup operation has been performed
AND The table access returns successfully
THEN:
• The system should move the table segment to the message structure, extract the English text from the message table, and move the English text to the message label field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when message table lookup operation has been performed.
Trigger Criteria:
Context: A message table lookup operation has been performed
Applied to: Table Access Successful?
Action: The table access fails or returns no data
Logic Flow:
IF A message table lookup operation has been performed
AND The table access fails or returns no data
THEN:
• The system should clear the message structure by setting it to spaces
R-GCCCCADD-cbl-00789 (+21)File: GCCCCADD.cblBusiness Rule: EDI BOL Segment Retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol segment retrieval operation is initiated.
Trigger Criteria:
Context: An EDI BOL segment retrieval operation is initiated
Applied to: Initialize EDI BOL Access Parameters
Action: The system prepares to access EDI BOL data
Logic Flow:
IF An EDI BOL segment retrieval operation is initiated
AND The system prepares to access EDI BOL data
THEN:
• The EDI BOL I/O work area is cleared to spaces, the database accept status is set to 'GE', and all segment data areas are initialized to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol access parameters are being configured for a specific segment type.
Trigger Criteria:
Context: EDI BOL access parameters are being configured for a specific segment type
Applied to: Set Segment Type and Function Code
Action: The system determines the segment type (EBSNRSC, EBSNRSA, EBSNRTD, EBSMCOA, or EBSBCKS)
Logic Flow:
IF EDI BOL access parameters are being configured for a specific segment type
AND The system determines the segment type (EBSNRSC, EBSNRSA, EBSNRTD, EBSMCOA, or EBSBCKS)
THEN:
• The segment type is set in the I/O work area and the function code is set to 'GU' (Get Unique) for database retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol key exists for record 55 processing.
Trigger Criteria:
Context: An EDI BOL key exists for record 55 processing
Applied to: Set Root Key from EDI BOL Key
Action: The system prepares to access EDI BOL segments
Logic Flow:
IF An EDI BOL key exists for record 55 processing
AND The system prepares to access EDI BOL segments
THEN:
• The EDI BOL key for record 55 is moved to the root key field in the I/O work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when specific edi bol segment needs to be retrieved with known entity type and sequence.
Trigger Criteria:
Context: A specific EDI BOL segment needs to be retrieved with known entity type and sequence
Applied to: Set Entity Type and Sequence Numbers
Action: The system configures segment access parameters
Logic Flow:
IF A specific EDI BOL segment needs to be retrieved with known entity type and sequence
AND The system configures segment access parameters
THEN:
• The entity type code (HN, HA, HC, GP, CN, CA, CC, PN, PA, PC, UN, UA, UC, BN, BT, BY, TN, T2, T3, TA, NN, GC, GA, OT, ON, OC, SH, CH, HS, CM, CR) is set in TYPE-1 field, sequence numbers are set to appropriate values (typically '01'), and the operator is set to '=' for exact match
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all edi bol access parameters are properly configured. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All EDI BOL access parameters are properly configured
Applied to: Call EDI BOL I/O Service
Action: The system needs to retrieve EDI BOL segment data
Logic Flow:
IF All EDI BOL access parameters are properly configured
AND The system needs to retrieve EDI BOL segment data
THEN:
• The EBCLGIO service is called with the communication control block, I/O work area, and target segment data area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol i/o service call has been completed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An EDI BOL I/O service call has been completed
Applied to: Segment Found?
Action: The system checks the result of the segment retrieval
Logic Flow:
IF An EDI BOL I/O service call has been completed
AND The system checks the result of the segment retrieval
THEN:
• If the database status code is spaces, the segment was found successfully; otherwise, the segment was not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol segment has been successfully retrieved from the database.
Trigger Criteria:
Context: An EDI BOL segment has been successfully retrieved from the database
Applied to: Load Segment Data
Action: The segment data needs to be made available for processing
Logic Flow:
IF An EDI BOL segment has been successfully retrieved from the database
AND The segment data needs to be made available for processing
THEN:
• The segment found flag is set to TRUE and the retrieved data remains in the segment data area for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol segment retrieval has failed or returned no data.
Trigger Criteria:
Context: An EDI BOL segment retrieval has failed or returned no data
Applied to: Clear Segment Data
Action: The system needs to handle the unsuccessful retrieval
Logic Flow:
IF An EDI BOL segment retrieval has failed or returned no data
AND The system needs to handle the unsuccessful retrieval
THEN:
• The target segment data area is cleared to spaces and the segment not found flag is set to TRUE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol segment retrieval has failed or returned no data.
Trigger Criteria:
Context: An EDI BOL segment retrieval has failed or returned no data
Applied to: Return Not Found Status
Action: The segment retrieval operation completes
Logic Flow:
IF An EDI BOL segment retrieval has failed or returned no data
AND The segment retrieval operation completes
THEN:
• The segment not found status flag is set to indicate unsuccessful retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol segment has been successfully retrieved and loaded.
Trigger Criteria:
Context: An EDI BOL segment has been successfully retrieved and loaded
Applied to: Return Success Status
Action: The segment retrieval operation completes
Logic Flow:
IF An EDI BOL segment has been successfully retrieved and loaded
AND The segment retrieval operation completes
THEN:
• The segment found status flag is set to indicate successful retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol data exists with shipper information.
Trigger Criteria:
Context: EDI BOL data exists with shipper information
Applied to: HN - Shipper Name Segment
Action: The system needs to retrieve shipper name details for customs processing
Logic Flow:
IF EDI BOL data exists with shipper information
AND The system needs to retrieve shipper name details for customs processing
THEN:
• The HN segment is accessed from EBSNRSC data source with entity type 'HN' and sequence '01', containing shipper name and identification codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol data exists with shipper address information.
Trigger Criteria:
Context: EDI BOL data exists with shipper address information
Applied to: HA - Shipper Address Segment
Action: The system needs to retrieve shipper address details for customs processing
Logic Flow:
IF EDI BOL data exists with shipper address information
AND The system needs to retrieve shipper address details for customs processing
THEN:
• The HA segment is accessed from EBSNRSA data source with entity type 'HA' and sequence '01', containing shipper street address lines
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data exists with shipper geographic information.
Trigger Criteria:
Context: EDI BOL data exists with shipper geographic information
Applied to: HC - Shipper City/State Segment
Action: The system needs to retrieve shipper city, state, postal code, and country details for customs processing
Logic Flow:
IF EDI BOL data exists with shipper geographic information
AND The system needs to retrieve shipper city, state, postal code, and country details for customs processing
THEN:
• The HC segment is accessed from EBSNRSA data source with entity type 'HC' and sequence '01', containing shipper city, state, postal code, and country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data exists with contact person information.
Trigger Criteria:
Context: EDI BOL data exists with contact person information
Applied to: GP - Contact Person Segment
Action: The system needs to retrieve contact details for customs processing
Logic Flow:
IF EDI BOL data exists with contact person information
AND The system needs to retrieve contact details for customs processing
THEN:
• The GP segment is accessed from EBSNRSA data source with entity type 'GP' and sequence '01', containing contact function code, name, communication number qualifier, and communication number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data exists with consignee information.
Trigger Criteria:
Context: EDI BOL data exists with consignee information
Applied to: CN - Consignee Name Segment
Action: The system needs to retrieve consignee name details for customs processing
Logic Flow:
IF EDI BOL data exists with consignee information
AND The system needs to retrieve consignee name details for customs processing
THEN:
• The CN segment is accessed from EBSNRSC data source with entity type 'CN' and sequence '01', containing consignee name and identification codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol data exists with consignee address information.
Trigger Criteria:
Context: EDI BOL data exists with consignee address information
Applied to: CA - Consignee Address Segment
Action: The system needs to retrieve consignee address details for customs processing
Logic Flow:
IF EDI BOL data exists with consignee address information
AND The system needs to retrieve consignee address details for customs processing
THEN:
• The CA segment is accessed from EBSNRSA data source with entity type 'CA' and sequence '01', containing consignee street address lines
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol data exists with consignee geographic information.
Trigger Criteria:
Context: EDI BOL data exists with consignee geographic information
Applied to: CC - Consignee City/State Segment
Action: The system needs to retrieve consignee city, state, postal code, and country details for customs processing
Logic Flow:
IF EDI BOL data exists with consignee geographic information
AND The system needs to retrieve consignee city, state, postal code, and country details for customs processing
THEN:
• The CC segment is accessed from EBSNRSA data source with entity type 'CC' and sequence '01', containing consignee city, state, postal code, and country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol data exists with stuffer information.
Trigger Criteria:
Context: EDI BOL data exists with stuffer information
Applied to: PN - Stuffer Name Segment
Action: The system needs to retrieve stuffer name details for customs processing
Logic Flow:
IF EDI BOL data exists with stuffer information
AND The system needs to retrieve stuffer name details for customs processing
THEN:
• The PN segment is accessed from EBSNRSC data source with entity type 'PN' and sequence '01', containing stuffer name and identification codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data exists with ultimate consignee information.
Trigger Criteria:
Context: EDI BOL data exists with ultimate consignee information
Applied to: UN - Ultimate Consignee Name Segment
Action: The system needs to retrieve ultimate consignee name details for customs processing
Logic Flow:
IF EDI BOL data exists with ultimate consignee information
AND The system needs to retrieve ultimate consignee name details for customs processing
THEN:
• The UN segment is accessed from EBSNRSC data source with entity type 'UN' and sequence '01', containing ultimate consignee name and identification codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data exists with beneficial owner information.
Trigger Criteria:
Context: EDI BOL data exists with beneficial owner information
Applied to: BN - Beneficial Owner Name Segment
Action: The system needs to retrieve beneficial owner name details for customs processing
Logic Flow:
IF EDI BOL data exists with beneficial owner information
AND The system needs to retrieve beneficial owner name details for customs processing
THEN:
• The BN segment is accessed from EBSNRSC data source with entity type 'BN' and sequence '01', containing beneficial owner name and identification codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data exists with transportation entity information.
Trigger Criteria:
Context: EDI BOL data exists with transportation entity information
Applied to: TN - Transportation Name Segment
Action: The system needs to retrieve transportation entity name details for customs processing
Logic Flow:
IF EDI BOL data exists with transportation entity information
AND The system needs to retrieve transportation entity name details for customs processing
THEN:
• The TN segment is accessed from EBSNRTD data source with varying sequence numbers until the desired organization ID is found, containing transportation entity name and organization ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data exists with additional named entity information.
Trigger Criteria:
Context: EDI BOL data exists with additional named entity information
Applied to: NN - Additional Entity Name Segment
Action: The system needs to retrieve additional entity name details for customs processing
Logic Flow:
IF EDI BOL data exists with additional named entity information
AND The system needs to retrieve additional entity name details for customs processing
THEN:
• The NN segment is accessed from EBSNRSC data source with varying sequence numbers, containing entity name and identification codes for various entity types
Business Justification: Governs the functional prerequisites and system routing when transportation segment processing is starting.
Trigger Criteria:
Context: Transportation segment processing is starting
Applied to: Initialize Search Variables
Action: The system initializes search parameters
Logic Flow:
IF Transportation segment processing is starting
AND The system initializes search parameters
THEN:
• The D5-ORG-ID found flag is set to false and TN segment found flag is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when sequence number is available for transportation segment lookup.
Trigger Criteria:
Context: A sequence number is available for transportation segment lookup
Applied to: Retrieve TN Segment by Sequence Number
Action: The system retrieves a TN segment from EBSNRTD using the current sequence number
Logic Flow:
IF A sequence number is available for transportation segment lookup
AND The system retrieves a TN segment from EBSNRTD using the current sequence number
THEN:
• The transportation segment data is loaded if found, otherwise segment not found status is returned
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation segment retrieval attempt has been made.
Trigger Criteria:
Context: A transportation segment retrieval attempt has been made
Applied to: TN Segment Found?
Action: The system checks the retrieval status
Logic Flow:
IF A transportation segment retrieval attempt has been made
AND The system checks the retrieval status
THEN:
• If segment is found, continue with organization ID matching, otherwise set TN segment not found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation segment has been successfully retrieved.
Trigger Criteria:
Context: A transportation segment has been successfully retrieved
Applied to: Check if D5-ORG-ID Matches Target
Action: The system compares the D5-ORG-ID from the segment with the target organization ID
Logic Flow:
IF A transportation segment has been successfully retrieved
AND The system compares the D5-ORG-ID from the segment with the target organization ID
THEN:
• The organization IDs are evaluated for exact match
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when organization id comparison has been completed.
Trigger Criteria:
Context: Organization ID comparison has been completed
Applied to:D5-ORG-ID Match Found?
Action: The system evaluates the match result
Logic Flow:
IF Organization ID comparison has been completed
AND The system evaluates the match result
THEN:
• If match is found, set D5-ORG-ID found flag to true, otherwise increment sequence counter and continue search
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when d5-org-id from transportation segment matches the target organization id.
Trigger Criteria:
Context: The D5-ORG-ID from transportation segment matches the target organization ID
Applied to: Set D5-ORG-ID Found Flag
Action: The system processes the successful match
Logic Flow:
IF The D5-ORG-ID from transportation segment matches the target organization ID
AND The system processes the successful match
THEN:
• The D5-ORG-ID found flag is set to true to indicate successful search completion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when current transportation segment organization id does not match the target.
Trigger Criteria:
Context: The current transportation segment organization ID does not match the target
Applied to: Increment Sequence Counter
Action: The system prepares for the next search iteration
Logic Flow:
IF The current transportation segment organization ID does not match the target
AND The system prepares for the next search iteration
THEN:
• The sequence counter is incremented by 1 to retrieve the next transportation segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation segment has been processed and sequence counter incremented.
Trigger Criteria:
Context: A transportation segment has been processed and sequence counter incremented
Applied to: Continue Search?
Action: The system evaluates search continuation criteria
Logic Flow:
IF A transportation segment has been processed and sequence counter incremented
AND The system evaluates search continuation criteria
THEN:
• If target organization ID not found and more segments may exist, continue search loop, otherwise terminate search
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no transportation segment was retrieved or search loop has completed without finding target.
Trigger Criteria:
Context: No transportation segment was retrieved or search loop has completed without finding target
Applied to: Set TN Segment Not Found Flag
Action: The system terminates the search process
Logic Flow:
IF No transportation segment was retrieved or search loop has completed without finding target
AND The system terminates the search process
THEN:
• The TN segment found flag is set to false to indicate search termination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation segment search has completed either successfully or unsuccessfully.
Trigger Criteria:
Context: Transportation segment search has completed either successfully or unsuccessfully
Applied to: Adjust Final Sequence Counter
Action: The system finalizes the search results
Logic Flow:
IF Transportation segment search has completed either successfully or unsuccessfully
AND The system finalizes the search results
THEN:
• The sequence counter is decremented by 1 to reflect the actual last processed sequence number
R-GCCCCADD-cbl-00821 (+7)File: GCCCCADD.cblBusiness Rule: Business Type Segment Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when customs manifest is being processed and bn segment processing is initiated.
Trigger Criteria:
Context: A customs manifest is being processed and BN segment processing is initiated
Applied to: Search for BN Entity in Transportation Data
Action: The system searches for BN entity in transportation data segments with organization ID 'BN'
Logic Flow:
IF A customs manifest is being processed and BN segment processing is initiated
AND The system searches for BN entity in transportation data segments with organization ID 'BN'
THEN:
• If BN entity is found, initialize BN segment record and proceed with BN processing, otherwise skip BN processing entirely
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when bn entity has been found in transportation data segments.
Trigger Criteria:
Context: A BN entity has been found in transportation data segments
Applied to: Extract Entity Name
Action: The system processes the BN entity data
Logic Flow:
IF A BN entity has been found in transportation data segments
AND The system processes the BN entity data
THEN:
• Set entity ID code to 'BN', extract entity name from transportation data, extract consignee CHOP code, and clear identification code fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when bn entity is being processed and address information is being extracted.
Trigger Criteria:
Context: A BN entity is being processed and address information is being extracted
Applied to: Extract Business Address Line 1
Action: The system searches for BT address segments and finds address data
Logic Flow:
IF A BN entity is being processed and address information is being extracted
AND The system searches for BT address segments and finds address data
THEN:
• Extract address line 1 and address line 2 from BT segments, andif address line 1 is empty, set default value 'NA' for address line 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when bn entity is being processed and address information is being extracted.
Trigger Criteria:
Context: A BN entity is being processed and address information is being extracted
Applied to: Set Default 'NA' Address
Action: BT address segments are not found or address line 1 is empty
Logic Flow:
IF A BN entity is being processed and address information is being extracted
AND BT address segments are not found or address line 1 is empty
THEN:
• Clear all address data fields and set address line 1 to default value 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when bn entity is being processed and geographic information is being extracted.
Trigger Criteria:
Context: A BN entity is being processed and geographic information is being extracted
Applied to: Extract City Name
Action: The system searches for BY geographic segments and finds geographic data
Logic Flow:
IF A BN entity is being processed and geographic information is being extracted
AND The system searches for BY geographic segments and finds geographic data
THEN:
• Extract city name, state/province code, postal code, and country code from BY segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when bn entity is being processed and geographic information is being extracted.
Trigger Criteria:
Context: A BN entity is being processed and geographic information is being extracted
Applied to: Clear Geographic Data
Action: BY geographic segments are not found
Logic Flow:
IF A BN entity is being processed and geographic information is being extracted
AND BY geographic segments are not found
THEN:
• Clear all geographic data fields including city name, state/province code, postal code, and country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when bn entity is being processed.
Trigger Criteria:
Context: A BN entity is being processed
Applied to: Clear Contact Information
Action: Contact information processing is initiated
Logic Flow:
IF A BN entity is being processed
AND Contact information processing is initiated
THEN:
• Clear all contact function code, name, communication number qualifier, and communication number fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when bn entity has been processed with all required data extracted.
Trigger Criteria:
Context: A BN entity has been processed with all required data extracted
Applied to: Insert BN Record into Database
Action: The system completes BN segment data processing
Logic Flow:
IF A BN entity has been processed with all required data extracted
AND The system completes BN segment data processing
THEN:
• Validate the N1 segment data and insert the BN record into the customs database with sequence numbers between 0003 and 0025
Business Justification: Dictates the expected operational logic and validation steps when edi bol key exists and entity processing is in progress.
Trigger Criteria:
Context: An EDI BOL key exists and entity processing is in progress
Applied to: Get EBSNRSA Geographic Code Segment - GC
Action: The system attempts to retrieve the EBSNRSA geographic code segment with type 'GC'
Logic Flow:
IF An EDI BOL key exists and entity processing is in progress
AND The system attempts to retrieve the EBSNRSA geographic code segment with type 'GC'
THEN:
• The geographic code segment data is retrieved if found, otherwise processing continues without GC data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when geographic code segment (gc) has been successfully retrieved from edi data.
Trigger Criteria:
Context: A geographic code segment (GC) has been successfully retrieved from EDI data
Applied to: Extract Address Information from GC Segment
Action: The system processes the address information from the GC segment
Logic Flow:
IF A geographic code segment (GC) has been successfully retrieved from EDI data
AND The system processes the address information from the GC segment
THEN:
• Address line 1 is moved to N301 field and address line 2 is moved to N302 field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when address information is being processed for an entity record.
Trigger Criteria:
Context: Address information is being processed for an entity record
Applied to: Set Default 'NA' for Address Line 1
Action: The address line 1 field (N301) is empty or contains only spaces
Logic Flow:
IF Address information is being processed for an entity record
AND The address line 1 field (N301) is empty or contains only spaces
THEN:
• The system sets the address line 1 to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol key exists and geographic processing is in progress.
Trigger Criteria:
Context: An EDI BOL key exists and geographic processing is in progress
Applied to: Get EBSNRSA Geographic Address Segment - GA
Action: The system attempts to retrieve the EBSNRSA geographic address segment with type 'GA'
Logic Flow:
IF An EDI BOL key exists and geographic processing is in progress
AND The system attempts to retrieve the EBSNRSA geographic address segment with type 'GA'
THEN:
• The geographic address segment data is retrieved if found, otherwise geographic data fields are set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when geographic address segment (ga) has been successfully retrieved from edi data.
Trigger Criteria:
Context: A geographic address segment (GA) has been successfully retrieved from EDI data
Applied to: Extract Geographic Address Data
Action: The system processes the geographic address information from the GA segment
Logic Flow:
IF A geographic address segment (GA) has been successfully retrieved from EDI data
AND The system processes the geographic address information from the GA segment
THEN:
• City name is moved to N401, state/province code to N402, postal code to N403, and country code to N404
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when geographic address segment processing is attempted.
Trigger Criteria:
Context: Geographic address segment processing is attempted
Applied to: Set Geographic Data to Spaces
Action: The geographic address segment (GA) is not found in the EDI data
Logic Flow:
IF Geographic address segment processing is attempted
AND The geographic address segment (GA) is not found in the EDI data
THEN:
• All geographic data fields (N401, N402, N403, N404) are set to spaces
R-GCCCCADD-cbl-00860 (+22)File: GCCCCADD.cblBusiness Rule: Customs Record 55 Insertion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs record 55 processing is starting.
Trigger Criteria:
Context: The customs record 55 processing is starting
Applied to: Initialize Record 55 Variables
Action: The system initializes record 55 variables
Logic Flow:
IF The customs record 55 processing is starting
AND The system initializes record 55 variables
THEN:
• The sequence index is set to 3 and the record 55 array is cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment requires shipper information for customs record 55.
Trigger Criteria:
Context: A shipment requires shipper information for customs record 55
Applied to: Build Shipper Record - Sequence 0001
Action: The system builds the shipper record and EDI BOL shipper data (EBSNRSC-HN) is found
Logic Flow:
IF A shipment requires shipper information for customs record 55
AND The system builds the shipper record and EDI BOL shipper data (EBSNRSC-HN) is found
THEN:
• The system creates entity ID 'SH', extracts shipper name and CHOP code from EDI data, gets address from EBSNRSA-HA segment, gets city/state/postal/country from EBSNRSA-HC segment, and gets contact information from EBSNRSA-GP segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment requires shipper information for customs record 55.
Trigger Criteria:
Context: A shipment requires shipper information for customs record 55
Applied to: Build Shipper Record - Sequence 0001
Action: The system builds the shipper record and EDI BOL shipper data is not found
Logic Flow:
IF A shipment requires shipper information for customs record 55
AND The system builds the shipper record and EDI BOL shipper data is not found
THEN:
• The system creates entity ID 'SH', uses shipper name and CHOP from SHIPROOT, uses shipper address from SHIPROOT, and derives city/state/postal/country from SHIPROOT address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment requires consignee information for customs record 55.
Trigger Criteria:
Context: A shipment requires consignee information for customs record 55
Applied to: Build Consignee Record - Sequence 0002
Action: The system builds the consignee record and EDI BOL consignee data (EBSNRSC-CN) is found
Logic Flow:
IF A shipment requires consignee information for customs record 55
AND The system builds the consignee record and EDI BOL consignee data (EBSNRSC-CN) is found
THEN:
• The system creates entity ID 'CN', extracts consignee name and CHOP code from EDI data, gets address from EBSNRSA-CA segment, gets city/state/postal/country from EBSNRSA-CC segment, and gets contact information from EBSNRSA-GP segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment requires consignee information for customs record 55.
Trigger Criteria:
Context: A shipment requires consignee information for customs record 55
Applied to: Build Consignee Record - Sequence 0002
Action: The system builds the consignee record and EDI BOL consignee data is not found
Logic Flow:
IF A shipment requires consignee information for customs record 55
AND The system builds the consignee record and EDI BOL consignee data is not found
THEN:
• The system creates entity ID 'CN', uses consignee name and CHOP from SHIPROOT, uses consignee address from SHIPROOT, and derives city/state/postal/country from SHIPROOT address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment may have stuffer information.
Trigger Criteria:
Context: A shipment may have stuffer information
Applied to: Build Stuffer Entity SF
Action: The system finds EDI BOL stuffer data (EBSNRSC-PN)
Logic Flow:
IF A shipment may have stuffer information
AND The system finds EDI BOL stuffer data (EBSNRSC-PN)
THEN:
• The system creates entity ID 'SF', extracts stuffer name from EDI data, gets address from EBSNRSA-PA segment, gets city/state/postal/country from EBSNRSA-PC segment, gets contact information from EBSNRSA-GP segment, and inserts the record into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment may have ultimate consignee information.
Trigger Criteria:
Context: A shipment may have ultimate consignee information
Applied to: Build Ultimate Consignee Entity UC
Action: The system finds EDI BOL ultimate consignee data (EBSNRSC-UN)
Logic Flow:
IF A shipment may have ultimate consignee information
AND The system finds EDI BOL ultimate consignee data (EBSNRSC-UN)
THEN:
• The system creates entity ID 'UC', extracts ultimate consignee name from EDI data, gets address from EBSNRSA-UA segment or sets default 'NA', gets city/state/postal/country from EBSNRSA-UC segment or sets to spaces, gets contact information from EBSNRSA-GP segment, and inserts the record into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment may have beneficial owner information.
Trigger Criteria:
Context: A shipment may have beneficial owner information
Applied to: Build Beneficial Owner Entity BN
Action: The system finds EDI BOL beneficial owner data (EBSNRSC-BN) and organization ID is 'BN'
Logic Flow:
IF A shipment may have beneficial owner information
AND The system finds EDI BOL beneficial owner data (EBSNRSC-BN) and organization ID is 'BN'
THEN:
• The system creates entity ID 'BN', extracts beneficial owner name and CHOP from EDI data, gets address from EBSNRSA-BT segment or sets default 'NA', gets city/state/postal/country from EBSNRSA-BY segment or sets to spaces, and inserts the record into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment may have carrier information.
Trigger Criteria:
Context: A shipment may have carrier information
Applied to: Build Carrier Entity C1
Action: The system finds EDI BOL carrier data with organization ID 'C1' or Fastway consignee data code 'C'
Logic Flow:
IF A shipment may have carrier information
AND The system finds EDI BOL carrier data with organization ID 'C1' or Fastway consignee data code 'C'
THEN:
• The system creates entity ID 'C1', extracts carrier name from EDI or Fastway data, gets address information from appropriate segments, gets city/state/postal/country information, gets contact information, and inserts the record into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment may have notify party information.
Trigger Criteria:
Context: A shipment may have notify party information
Applied to: Build Notify Party Entity N1
Action: The system finds EDI BOL data with organization ID 'N1'
Logic Flow:
IF A shipment may have notify party information
AND The system finds EDI BOL data with organization ID 'N1'
THEN:
• The system creates entity ID 'N1', extracts notify party name from EDI data, gets address information from T2 segment, gets city/state/postal/country from TA segment, gets contact information from T3 segment, and inserts the record into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment may have payment or service entity information.
Trigger Criteria:
Context: A shipment may have payment or service entity information
Applied to: Build Payment/Service Entity PF/SS
Action: The system finds EDI BOL MCOA data with organization ID 'PF' or 'SS'
Logic Flow:
IF A shipment may have payment or service entity information
AND The system finds EDI BOL MCOA data with organization ID 'PF' or 'SS'
THEN:
• The system creates entity ID matching the organization ID, extracts entity name and ID codes from MCOA data, gets address from ON segment or sets default 'NA', gets city/state/postal/country from OC segment or sets to spaces, and inserts the record into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment may have various other entity types.
Trigger Criteria:
Context: A shipment may have various other entity types
Applied to: Build Other Entity Types 11/NN/MC/OO/FW
Action: The system finds EDI BOL data with organization IDs '11', 'NN', 'MC', 'OO', or 'FW'
Logic Flow:
IF A shipment may have various other entity types
AND The system finds EDI BOL data with organization IDs '11', 'NN', 'MC', 'OO', or 'FW'
THEN:
• The system creates entity records with matching entity IDs, extracts entity names and details from appropriate EDI segments, gets address and contact information from corresponding segments, validates entity ID values for sequences greater than 2, and inserts valid records into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment requires importer information for customs record 55.
Trigger Criteria:
Context: A shipment requires importer information for customs record 55
Applied to: Build Importer Entity IM
Action: The system finds EDI BOL importer data with entity ID 'IM' and existing importer data is available from initialization
Logic Flow:
IF A shipment requires importer information for customs record 55
AND The system finds EDI BOL importer data with entity ID 'IM' and existing importer data is available from initialization
THEN:
• The system retains the existing importer data including CHOP code, name, business number qualifier, business number, CSA indicator, address, city, state, postal code, country, and contact information, and inserts the record into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment requires importer information for customs record 55.
Trigger Criteria:
Context: A shipment requires importer information for customs record 55
Applied to: Build Importer Entity IM
Action: The system finds EDI BOL importer data with entity ID 'IM' and no existing importer data is available
Logic Flow:
IF A shipment requires importer information for customs record 55
AND The system finds EDI BOL importer data with entity ID 'IM' and no existing importer data is available
THEN:
• The system creates entity ID 'IM', extracts importer name and business information from EDI data, gets address from N3 segment or sets default 'NA', gets city/state/postal/country from N4 segment, sets contact information to spaces, and inserts the record into customs database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment requires importer information and au table importer data was found during initialization.
Trigger Criteria:
Context: A shipment requires importer information and AU table importer data was found during initialization
Applied to: Finalize Importer Processing
Action: The system finalizes importer processing and no importer record was created from EDI data and sequence index is within maximum limit
Logic Flow:
IF A shipment requires importer information and AU table importer data was found during initialization
AND The system finalizes importer processing and no importer record was created from EDI data and sequence index is within maximum limit
THEN:
• The system creates entity ID 'IM', uses importer name and business number from AU table, sets business number qualifier to 'M5', sets address to 'NA', clears city/state/postal/country and contact information, sets CSA indicator on, and either replaces existing record or inserts new record based on availability
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record is being validated for customs record 55.
Trigger Criteria:
Context: An entity record is being validated for customs record 55
Applied to: Validate N1 Segment Data
Action: The entity has address, city/state, or contact information but missing entity ID or name, or entity ID is invalid for sequences greater than 2
Logic Flow:
IF An entity record is being validated for customs record 55
AND The entity has address, city/state, or contact information but missing entity ID or name, or entity ID is invalid for sequences greater than 2
THEN:
• The system generates appropriate error messages for missing entity ID, missing name when entity ID exists, or invalid entity ID values for non-shipper/consignee/broker entities
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity record has entity id and name populated.
Trigger Criteria:
Context: An entity record has entity ID and name populated
Applied to: Validate N1 Segment Data
Action: The address information is missing
Logic Flow:
IF An entity record has entity ID and name populated
AND The address information is missing
THEN:
• The system generates an error message indicating address information is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record has city/state information.
Trigger Criteria:
Context: An entity record has city/state information
Applied to: Validate N1 Segment Data
Action: The city name is provided but has less than 2 characters
Logic Flow:
IF An entity record has city/state information
AND The city name is provided but has less than 2 characters
THEN:
• The system generates an error message indicating minimum 2 character length requirement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record has city/state information.
Trigger Criteria:
Context: An entity record has city/state information
Applied to: Validate N1 Segment Data
Action: The country code is missing after state/province validation
Logic Flow:
IF An entity record has city/state information
AND The country code is missing after state/province validation
THEN:
• The system generates an error message indicating country code is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity record has postal code information.
Trigger Criteria:
Context: An entity record has postal code information
Applied to: Validate N1 Segment Data
Action: The postal code is provided but has less than 3 characters
Logic Flow:
IF An entity record has postal code information
AND The postal code is provided but has less than 3 characters
THEN:
• The system generates an error message indicating minimum 3 character length requirement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity record has city/state information for canada, usa, or mexico.
Trigger Criteria:
Context: An entity record has city/state information for Canada, USA, or Mexico
Applied to: Validate N1 Segment Data
Action: The state/province code is missing or the state/province and country combination is invalid
Logic Flow:
IF An entity record has city/state information for Canada, USA, or Mexico
AND The state/province code is missing or the state/province and country combination is invalid
THEN:
• The system generates error messages for missing state/province or invalid state/province combinations, and derives country code from state/province when country is missing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity record has contact information.
Trigger Criteria:
Context: An entity record has contact information
Applied to: Validate N1 Segment Data
Action: Communication number qualifier is missing but contact name or communication number is provided, or communication number qualifier is invalid, or communication number is missing when qualifier or contact name is provided
Logic Flow:
IF An entity record has contact information
AND Communication number qualifier is missing but contact name or communication number is provided, or communication number qualifier is invalid, or communication number is missing when qualifier or contact name is provided
THEN:
• The system generates appropriate error messages for missing communication number qualifier, invalid qualifier values (must be spaces, 'FX', or 'TE'), or missing communication number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity record is being built with missing address information.
Trigger Criteria:
Context: An entity record is being built with missing address information
Applied to: Build Shipper Record - Sequence 0001
Action: The address line 1 is spaces or address line 2 is effectively empty
Logic Flow:
IF An entity record is being built with missing address information
AND The address line 1 is spaces or address line 2 is effectively empty
THEN:
• The system sets address line 1 to 'NA' when missing and sets default country codes ('US' for shipper, 'CA' for consignee) when address line 2 is incomplete
R-GCCCCADD-cbl-00883 (+12)File: GCCCCADD.cblBusiness Rule: Importer Segment Building
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when customs manifest processing request is initiated.
Trigger Criteria:
Context: A customs manifest processing request is initiated
Applied to: Check for Existing Importer Data from Corrector EDI
Action: The system checks for existing importer data from corrector EDI transactions
Logic Flow:
IF A customs manifest processing request is initiated
AND The system checks for existing importer data from corrector EDI transactions
THEN:
• The system identifies whether backup importer data exists and sets the appropriate processing flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when existing importer data is found from corrector edi and importer name exists in temporary storage.
Trigger Criteria:
Context: Existing importer data is found from corrector EDI and importer name exists in temporary storage
Applied to: Backup Original Importer Data
Action: The system processes importer segment building
Logic Flow:
IF Existing importer data is found from corrector EDI and importer name exists in temporary storage
AND The system processes importer segment building
THEN:
• The system backs up all importer details including name, business number qualifier, business number, CSA indicator, address, city, province, postal code, country, and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Retrieve Importer N1 Segment from EDI BOL
Action: The system retrieves importer N1 segment data using entity type 'IM'
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system retrieves importer N1 segment data using entity type 'IM'
THEN:
• The system obtains importer entity information from the EDI BOL database or returns empty if not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer n1 segment is found in edi bol and no corrector edi backup data exists.
Trigger Criteria:
Context: Importer N1 segment is found in EDI BOL and no corrector EDI backup data exists
Applied to: Process New Importer N1 Segment
Action: The system processes the importer N1 segment with entity ID code equal to 'IM'
Logic Flow:
IF Importer N1 segment is found in EDI BOL and no corrector EDI backup data exists
AND The system processes the importer N1 segment with entity ID code equal to 'IM'
THEN:
• The system extracts importer name to customs importer field, moves ID code qualifier to business number qualifier, moves ID code to business number, and sets importer found flag to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data is found from au table and importer segment is found and business number qualifier is 'bn' or spaces.
Trigger Criteria:
Context: Importer data is found from AU table and importer segment is found and business number qualifier is 'BN' or spaces
Applied to: Set CSA Indicator Management
Action: The system processes CSA indicator management
Logic Flow:
IF Importer data is found from AU table and importer segment is found and business number qualifier is 'BN' or spaces
AND The system processes CSA indicator management
THEN:
• The system turns off the CSA indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n3 segment data is available from edi bol.
Trigger Criteria:
Context: Importer N3 segment data is available from EDI BOL
Applied to: Process Address Information
Action: The system processes address information and address line 1 is spaces or low-values
Logic Flow:
IF Importer N3 segment data is available from EDI BOL
AND The system processes address information and address line 1 is spaces or low-values
THEN:
• The system sets address line 1 to 'NA' and copies address line 2, otherwise copies both address lines as provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer n3 segment is not found in edi bol.
Trigger Criteria:
Context: Importer N3 segment is not found in EDI BOL
Applied to: Set Default 'NA' if Address Missing
Action: The system processes address information
Logic Flow:
IF Importer N3 segment is not found in EDI BOL
AND The system processes address information
THEN:
• The system clears N3 data fields and sets address line 1 to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n4 segment data is available from edi bol.
Trigger Criteria:
Context: Importer N4 segment data is available from EDI BOL
Applied to: Process City, State, Postal, Country
Action: The system processes city and state information
Logic Flow:
IF Importer N4 segment data is available from EDI BOL
AND The system processes city and state information
THEN:
• The system copies city name, state/province code, postal code, and country code from the N4 segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer n4 segment is not found in edi bol.
Trigger Criteria:
Context: Importer N4 segment is not found in EDI BOL
Applied to: Process City, State, Postal, Country
Action: The system processes city and state information
Logic Flow:
IF Importer N4 segment is not found in EDI BOL
AND The system processes city and state information
THEN:
• The system clears all N4 data fields including city, state, postal code, and country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer segment processing is in progress.
Trigger Criteria:
Context: Importer segment processing is in progress
Applied to: Clear Contact Information
Action: The system processes contact information
Logic Flow:
IF Importer segment processing is in progress
AND The system processes contact information
THEN:
• The system clears all contact data fields including contact function code, name, communication number qualifier, and communication number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when corrector edi backup data exists and importer segment is found.
Trigger Criteria:
Context: Corrector EDI backup data exists and importer segment is found
Applied to: Restore Backed Up Importer Data
Action: The system processes importer data restoration
Logic Flow:
IF Corrector EDI backup data exists and importer segment is found
AND The system processes importer data restoration
THEN:
• The system restores all backed up importer details including consignee chop code, entity ID code, importer name, business number qualifier, business number, CSA indicator, address lines, city, province, postal code, country, and contact information, and sets importer found flag to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer n1 segment is not found in edi bol and backup importer name exists and importer segment is not found.
Trigger Criteria:
Context: Importer N1 segment is not found in EDI BOL and backup importer name exists and importer segment is not found
Applied to: Handle Importer Data Deletion
Action: The system handles importer data deletion
Logic Flow:
IF Importer N1 segment is not found in EDI BOL and backup importer name exists and importer segment is not found
AND The system handles importer data deletion
THEN:
• The system restores backed up importer data and manages CSA indicator, otherwise clears importer name if no importer segment found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when no valid importer data is found and importer segment is not found.
Trigger Criteria:
Context: No valid importer data is found and importer segment is not found
Applied to: Clear Importer Fields
Action: The system processes importer field clearing
Logic Flow:
IF No valid importer data is found and importer segment is not found
AND The system processes importer field clearing
THEN:
• The system clears the importer name field and entity ID code
R-GCCCCADD-cbl-00896 (+13)File: GCCCCADD.cblBusiness Rule: Corrector EDI Importer Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when corrector edi transaction is being processed.
Trigger Criteria:
Context: A corrector EDI transaction is being processed
Applied to: Check if Corrector EDI has Importer Data
Action: The system checks for importer entity data in the EDI BOL segments
Logic Flow:
IF A corrector EDI transaction is being processed
AND The system checks for importer entity data in the EDI BOL segments
THEN:
• The system determines if importer data exists and proceeds with appropriate processing path
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when corrector edi contains importer data and existing importer data is found in temporary variables.
Trigger Criteria:
Context: Corrector EDI contains importer data AND existing importer data is found in temporary variables
Applied to: Backup Original Importer Data to Temporary Variables
Action: The system processes the corrector EDI importer information
Logic Flow:
IF Corrector EDI contains importer data AND existing importer data is found in temporary variables
AND The system processes the corrector EDI importer information
THEN:
• The system retains the original importer data from backup variables including name, business number, qualifier, CSA indicator, address, city, province, postal code, country, and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi processing is initiated.
Trigger Criteria:
Context: Corrector EDI processing is initiated
Applied to: Search Existing Records for Importer Entity 'IM'
Action: The system searches for existing importer records with entity ID 'IM' in sequences 3 through 24
Logic Flow:
IF Corrector EDI processing is initiated
AND The system searches for existing importer records with entity ID 'IM' in sequences 3 through 24
THEN:
• The system identifies if an existing importer record is found and sets the appropriate processing flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when corrector edi contains importer n1 segment data and no existing importer record is found.
Trigger Criteria:
Context: Corrector EDI contains importer N1 segment data AND no existing importer record is found
Applied to: Process New Importer Data from EDI BOL N1 Segment
Action: The system processes the EDI BOL N1 segment for importer entity
Logic Flow:
IF Corrector EDI contains importer N1 segment data AND no existing importer record is found
AND The system processes the EDI BOL N1 segment for importer entity
THEN:
• The system extracts importer name, business number qualifier, business number, and sets the importer found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data is available from corrector edi n1 segment.
Trigger Criteria:
Context: Importer data is available from corrector EDI N1 segment
Applied to: Set Importer Information in Customs Record
Action: The system processes the importer information
Logic Flow:
IF Importer data is available from corrector EDI N1 segment
AND The system processes the importer information
THEN:
• The system updates the customs record with importer name in both GCCC-IMPORTERandGCCS-N102-NAME fields, and sets the importer found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer n1 segment contains business number qualifier and business number.
Trigger Criteria:
Context: Importer N1 segment contains business number qualifier and business number
Applied to: Update Business Number and Qualifier
Action: The system processes the importer business identification
Logic Flow:
IF Importer N1 segment contains business number qualifier and business number
AND The system processes the importer business identification
THEN:
• The system updates both customs record fields (GCCC-BUSINESS-NBR-QUAL, GCCC-BUSINESS-NBR) and N1 segment fields (GCCS-N103-ID-CDE-QUAL, GCCS-N104-ID-CDE) with the business number qualifier and business number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when corrector edi contains importer n3 address segment data.
Trigger Criteria:
Context: Corrector EDI contains importer N3 address segment data
Applied to: Process Importer Address from N3 Segment
Action: The system processes the N3 segment for importer address
Logic Flow:
IF Corrector EDI contains importer N3 address segment data
AND The system processes the N3 segment for importer address
THEN:
• The system sets address line 1 to 'NA' if the address is blank or low-values, otherwise uses the provided address, and sets address line 2 from the segment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when corrector edi contains importer n4 city/state segment data.
Trigger Criteria:
Context: Corrector EDI contains importer N4 city/state segment data
Applied to: Process Importer City/State from N4 Segment
Action: The system processes the N4 segment for importer location
Logic Flow:
IF Corrector EDI contains importer N4 city/state segment data
AND The system processes the N4 segment for importer location
THEN:
• The system updates the customs record with city name, state/province code, postal code, and country code from the N4 segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer record is being processed from corrector edi.
Trigger Criteria:
Context: Importer record is being processed from corrector EDI
Applied to: Clear Contact Information PER Segment Data
Action: The system handles contact information for the importer
Logic Flow:
IF Importer record is being processed from corrector EDI
AND The system handles contact information for the importer
THEN:
• The system clears all PER segment contact fields (contact function code, name, communication number qualifier, and communication number)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when corrector edi processing is in progress.
Trigger Criteria:
Context: Corrector EDI processing is in progress
Applied to: Is this Corrector EDI Deletion Request?
Action: The system evaluates if this is a deletion request based on the absence of importer data in EDI segments
Logic Flow:
IF Corrector EDI processing is in progress
AND The system evaluates if this is a deletion request based on the absence of importer data in EDI segments
THEN:
• The system determines the appropriate action path for either deletion or update processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi deletion request is identified and original importer data exists in backup variables and no importer record found in sequence 55.
Trigger Criteria:
Context: Corrector EDI deletion request is identified AND original importer data exists in backup variables AND no importer record found in sequence 55
Applied to: Restore Original Importer Data from Backup if Available
Action: The system processes the deletion request
Logic Flow:
IF Corrector EDI deletion request is identified AND original importer data exists in backup variables AND no importer record found in sequence 55
AND The system processes the deletion request
THEN:
• The system restores the original importer data from backup variables if available, otherwise clears the importer fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer data is found in au table and importer data is found in sequence 55 and business number qualifier is 'bn' or blank.
Trigger Criteria:
Context: Importer data is found in AU table AND importer data is found in sequence 55 AND business number qualifier is 'BN' or blank
Applied to: Reset CSA Indicator if Conditions Met
Action: The system evaluates CSA indicator conditions
Logic Flow:
IF Importer data is found in AU table AND importer data is found in sequence 55 AND business number qualifier is 'BN' or blank
AND The system evaluates CSA indicator conditions
THEN:
• The system turns off the CSA indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer n1 segment data has been processed.
Trigger Criteria:
Context: Importer N1 segment data has been processed
Applied to: Validate N1 Segment Data
Action: The system validates the N1 segment information
Logic Flow:
IF Importer N1 segment data has been processed
AND The system validates the N1 segment information
THEN:
• The system performs comprehensive validation including entity ID, name, address, city/state, and contact information requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer record has been validated and processed and sequence index is within maximum allowed range.
Trigger Criteria:
Context: Importer record has been validated and processed AND sequence index is within maximum allowed range
Applied to: Insert Updated Record into Customs Database
Action: The system saves the importer record
Logic Flow:
IF Importer record has been validated and processed AND sequence index is within maximum allowed range
AND The system saves the importer record
THEN:
• The system inserts the customs record with CCN key, record type '55', sequence number, and all importer data into the customs database array
Business Justification: Ensures correct system behavior and process compliance when system is processing importer address information.
Trigger Criteria:
Context: The system is processing importer address information
Applied to: EDI BOL Available?
Action: The system checks for EDI BOL data availability
Logic Flow:
IF The system is processing importer address information
AND The system checks for EDI BOL data availability
THEN:
• The system should proceed with EDI BOL processing if available, otherwise use default address processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol data is available for processing.
Trigger Criteria:
Context: EDI BOL data is available for processing
Applied to: Retrieve Importer N3 Segment from EDI BOL
Action: The system retrieves the importer N3 address segment
Logic Flow:
IF EDI BOL data is available for processing
AND The system retrieves the importer N3 address segment
THEN:
• The system should extract the address segment from the EDI BOL data source
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has attempted to retrieve the n3 address segment from edi bol.
Trigger Criteria:
Context: The system has attempted to retrieve the N3 address segment from EDI BOL
Applied to: N3 Segment Found?
Action: The system checks if the N3 segment was found
Logic Flow:
IF The system has attempted to retrieve the N3 address segment from EDI BOL
AND The system checks if the N3 segment was found
THEN:
• The system should proceed with address extraction if found, otherwise use default address processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n3 address segment has been successfully retrieved from edi bol.
Trigger Criteria:
Context: The N3 address segment has been successfully retrieved from EDI BOL
Applied to: Extract Address Line 1 from N3 Segment
Action: The system extracts address line 1 from the N3 segment
Logic Flow:
IF The N3 address segment has been successfully retrieved from EDI BOL
AND The system extracts address line 1 from the N3 segment
THEN:
• The system should capture the first address line data for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n3 address segment has been successfully retrieved and address line 1 has been extracted.
Trigger Criteria:
Context: The N3 address segment has been successfully retrieved and address line 1 has been extracted
Applied to: Extract Address Line 2 from N3 Segment
Action: The system extracts address line 2 from the N3 segment
Logic Flow:
IF The N3 address segment has been successfully retrieved and address line 1 has been extracted
AND The system extracts address line 2 from the N3 segment
THEN:
• The system should capture the second address line data for storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address line 1 has been extracted from the n3 segment.
Trigger Criteria:
Context: Address line 1 has been extracted from the N3 segment
Applied to: Address Line 1 Empty?
Action: The system checks if address line 1 is empty or contains only spaces or low-values
Logic Flow:
IF Address line 1 has been extracted from the N3 segment
AND The system checks if address line 1 is empty or contains only spaces or low-values
THEN:
• The system should set a default value if empty, otherwise keep the original value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when address line 1 from the n3 segment is empty, spaces, or low-values.
Trigger Criteria:
Context: Address line 1 from the N3 segment is empty, spaces, or low-values
Applied to: Set Address Line 1 to 'NA'
Action: The system processes the empty address line 1
Logic Flow:
IF Address line 1 from the N3 segment is empty, spaces, or low-values
AND The system processes the empty address line 1
THEN:
• The system should set address line 1 to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when address line 1 from the n3 segment contains valid data.
Trigger Criteria:
Context: Address line 1 from the N3 segment contains valid data
Applied to: Keep Original Address Line 1
Action: The system processes the address line 1
Logic Flow:
IF Address line 1 from the N3 segment contains valid data
AND The system processes the address line 1
THEN:
• The system should retain the original address line 1 value without modification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when address line 2 has been extracted from the n3 segment and address line 1 has been processed.
Trigger Criteria:
Context: Address line 2 has been extracted from the N3 segment and address line 1 has been processed
Applied to: Store Address Line 2
Action: The system stores address line 2
Logic Flow:
IF Address line 2 has been extracted from the N3 segment and address line 1 has been processed
AND The system stores address line 2
THEN:
• The system should store the address line 2 data as extracted, whether empty or populated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data is not available for importer address processing.
Trigger Criteria:
Context: EDI BOL data is not available for importer address processing
Applied to: Set Default 'NA' for Address Line 1
Action: The system processes importer address information
Logic Flow:
IF EDI BOL data is not available for importer address processing
AND The system processes importer address information
THEN:
• The system should set address line 1 to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data is not available and default address line 1 has been set.
Trigger Criteria:
Context: EDI BOL data is not available and default address line 1 has been set
Applied to: Clear Address Line 2
Action: The system processes address line 2
Logic Flow:
IF EDI BOL data is not available and default address line 1 has been set
AND The system processes address line 2
THEN:
• The system should clear address line 2 to spaces
R-GCCCCADD-cbl-00921 (+9)File: GCCCCADD.cblBusiness Rule: Importer City State Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bill of lading exists with importer address segments.
Trigger Criteria:
Context: An EDI Bill of Lading exists with importer address segments
Applied to: Retrieve Importer N4 Segment from EDI BOL
Action: The system processes importer N4 segment data
Logic Flow:
IF An EDI Bill of Lading exists with importer address segments
AND The system processes importer N4 segment data
THEN:
• The system retrieves city, state, postal code and country information from the EDI BOL N4 segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer n4 address segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: An importer N4 address segment is successfully retrieved from EDI BOL
Applied to: Extract City Name from N4 Segment
Action: The N4 segment contains city name information
Logic Flow:
IF An importer N4 address segment is successfully retrieved from EDI BOL
AND The N4 segment contains city name information
THEN:
• The system extracts the city name from the D4-CITY-NAME field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer n4 address segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: An importer N4 address segment is successfully retrieved from EDI BOL
Applied to: Extract State/Province Code from N4 Segment
Action: The N4 segment contains state or province code information
Logic Flow:
IF An importer N4 address segment is successfully retrieved from EDI BOL
AND The N4 segment contains state or province code information
THEN:
• The system extracts the state/province code from the D4-STATE-PROV-CODE field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer n4 address segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: An importer N4 address segment is successfully retrieved from EDI BOL
Applied to: Extract Postal Code from N4 Segment
Action: The N4 segment contains postal code information
Logic Flow:
IF An importer N4 address segment is successfully retrieved from EDI BOL
AND The N4 segment contains postal code information
THEN:
• The system extracts the postal code from the D4-POSTAL-CODE field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer n4 address segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: An importer N4 address segment is successfully retrieved from EDI BOL
Applied to: Extract Country Code from N4 Segment
Action: The N4 segment contains country code information
Logic Flow:
IF An importer N4 address segment is successfully retrieved from EDI BOL
AND The N4 segment contains country code information
THEN:
• The system extracts the country code from the D4-COUNTRY-CODE field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when city name has been extracted from the importer n4 segment.
Trigger Criteria:
Context: City name has been extracted from the importer N4 segment
Applied to: Move City to Customs Record
Action: The system processes the address information for customs record
Logic Flow:
IF City name has been extracted from the importer N4 segment
AND The system processes the address information for customs record
THEN:
• The city name is stored in the GCCS-N401-CITY-NAME field of the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state or province code has been extracted from the importer n4 segment.
Trigger Criteria:
Context: State or province code has been extracted from the importer N4 segment
Applied to: Move State/Province to Customs Record
Action: The system processes the address information for customs record
Logic Flow:
IF State or province code has been extracted from the importer N4 segment
AND The system processes the address information for customs record
THEN:
• The state/province code is stored in the GCCS-N402-STATE-PROV-CDE field of the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when postal code has been extracted from the importer n4 segment.
Trigger Criteria:
Context: Postal code has been extracted from the importer N4 segment
Applied to: Move Postal Code to Customs Record
Action: The system processes the address information for customs record
Logic Flow:
IF Postal code has been extracted from the importer N4 segment
AND The system processes the address information for customs record
THEN:
• The postal code is stored in the GCCS-N403-POSTAL-CDE field of the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when country code has been extracted from the importer n4 segment.
Trigger Criteria:
Context: Country code has been extracted from the importer N4 segment
Applied to: Move Country Code to Customs Record
Action: The system processes the address information for customs record
Logic Flow:
IF Country code has been extracted from the importer N4 segment
AND The system processes the address information for customs record
THEN:
• The country code is stored in the GCCS-N404-COUNTRY-CDE field of the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system attempts to retrieve importer n4 segment from edi bol.
Trigger Criteria:
Context: The system attempts to retrieve importer N4 segment from EDI BOL
Applied to: Clear All N4 Data Fields
Action: The N4 segment is not found or retrieval fails
Logic Flow:
IF The system attempts to retrieve importer N4 segment from EDI BOL
AND The N4 segment is not found or retrieval fails
THEN:
• The system clears all N4 data fields in the customs record (GCSCCS55-N4-DATA)
Business Justification: Dictates the expected operational logic and validation steps when edi bill of lading exists for the shipment.
Trigger Criteria:
Context: An EDI Bill of Lading exists for the shipment
Applied to: Retrieve Importer PER Segment from EDI BOL
Action: The system processes importer contact information
Logic Flow:
IF An EDI Bill of Lading exists for the shipment
AND The system processes importer contact information
THEN:
• The system attempts to retrieve the PER segment for importer contact details from the EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer per segment is found in the edi bol.
Trigger Criteria:
Context: An importer PER segment is found in the EDI BOL
Applied to: Extract Contact Function Code & Extract Contact Person Name & Extract Communication Number Qualifier & Extract Communication Number
Action: The system processes the contact information
Logic Flow:
IF An importer PER segment is found in the EDI BOL
AND The system processes the contact information
THEN:
• The system extracts the contact function code from the PER segment and stores it in the importer record
• The system extracts the contact person name from the PER segment and stores it in the importer record
• The system extracts the communication number qualifier from the PER segment and stores it in the importer record
• The system extracts the communication number from the PER segment and stores it in the importer record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when no importer per segment is found in the edi bol or no edi bol data is available.
Trigger Criteria:
Context: No importer PER segment is found in the EDI BOL or no EDI BOL data is available
Applied to: Clear Contact Information Fields
Action: The system processes importer contact information
Logic Flow:
IF No importer PER segment is found in the EDI BOL or no EDI BOL data is available
AND The system processes importer contact information
THEN:
• The system clears all contact information fields in the importer record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact person name is provided in the importer contact information.
Trigger Criteria:
Context: A contact person name is provided in the importer contact information
Applied to: Communication Qualifier Required
Action: The communication qualifier is blank or not provided
Logic Flow:
IF A contact person name is provided in the importer contact information
AND The communication qualifier is blank or not provided
THEN:
• The system generates an error indicating that communication qualifier is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when either a communication qualifier is provided or a contact person name is provided.
Trigger Criteria:
Context: Either a communication qualifier is provided or a contact person name is provided
Applied to: Communication Number Required
Action: The communication number is blank or not provided
Logic Flow:
IF Either a communication qualifier is provided or a contact person name is provided
AND The communication number is blank or not provided
THEN:
• The system generates an error indicating that communication number is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when communication qualifier is provided in the importer contact information.
Trigger Criteria:
Context: A communication qualifier is provided in the importer contact information
Applied to: Invalid Communication Qualifier
Action: The communication qualifier is not blank, 'FX' (fax), or 'TE' (telephone)
Logic Flow:
IF A communication qualifier is provided in the importer contact information
AND The communication qualifier is not blank, 'FX' (fax), or 'TE' (telephone)
THEN:
• The system generates an error indicating invalid communication qualifier value
R-GCCCCADD-cbl-00940 (+5)File: GCCCCADD.cblBusiness Rule: Importer Data Deletion Handling
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when corrector edi transaction is being processed and importer information exists in the original shipment data.
Trigger Criteria:
Context: A corrector EDI transaction is being processed AND importer information exists in the original shipment data
Applied to: Check for Existing Importer Data
Action: The system searches for importer records in sequence 3 through 24 AND finds an entity with ID 'IM'
Logic Flow:
IF A corrector EDI transaction is being processed AND importer information exists in the original shipment data
AND The system searches for importer records in sequence 3 through 24 AND finds an entity with ID 'IM'
THEN:
• The system should capture and store all existing importer details including CHOP code, name, business number qualifier, business number, CSA indicator, address information, and contact details
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when original importer data has been found in the shipment records and corrector edi processing is about to begin.
Trigger Criteria:
Context: Original importer data has been found in the shipment records AND corrector EDI processing is about to begin
Applied to: Backup Original Importer Data
Action: The system identifies importer entity data with all associated fields populated
Logic Flow:
IF Original importer data has been found in the shipment records AND corrector EDI processing is about to begin
AND The system identifies importer entity data with all associated fields populated
THEN:
• The system should store all importer fields in temporary variables including CHOP code, name, address lines, city, province/state, postal code, country, contact information, business number, business number qualifier, and CSA indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when original importer data exists in backup variables and corrector edi processing has been completed.
Trigger Criteria:
Context: Original importer data exists in backup variables AND corrector EDI processing has been completed
Applied to: Importer Data Deleted by Corrector?
Action: The system checks for importer entity records in the corrected EDI data AND no importer records are found OR importer fields are cleared
Logic Flow:
IF Original importer data exists in backup variables AND corrector EDI processing has been completed
AND The system checks for importer entity records in the corrected EDI data AND no importer records are found OR importer fields are cleared
THEN:
• The system should identify this as an importer data deletion scenario requiring restoration of original data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when corrector edi has deleted importer information and original importer data exists in backup variables.
Trigger Criteria:
Context: Corrector EDI has deleted importer information AND original importer data exists in backup variables
Applied to: Retain Original Importer Data
Action: The system processes the importer data restoration
Logic Flow:
IF Corrector EDI has deleted importer information AND original importer data exists in backup variables
AND The system processes the importer data restoration
THEN:
• The system should restore all original importer fields from backup variables including CHOP code as SC301, entity ID as 'IM', name as N102, business number qualifier as N103, business number as N104, CSA indicator, address lines as N301/N302, city as N401, state/province as N402, postal code as N403, country as N404, and contact information as PER segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when original importer data is being restored from backup variables and the original csa indicator value exists.
Trigger Criteria:
Context: Original importer data is being restored from backup variables AND the original CSA indicator value exists
Applied to: Preserve CSA Indicator
Action: The system restores importer information to the customs record
Logic Flow:
IF Original importer data is being restored from backup variables AND the original CSA indicator value exists
AND The system restores importer information to the customs record
THEN:
• The system should set the CSA indicator to the original backed-up value to maintain the customs processing status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when corrector edi contains importer information modifications and importer data has not been completely deleted.
Trigger Criteria:
Context: Corrector EDI contains importer information modifications AND importer data has not been completely deleted
Applied to: Apply Corrector Changes
Action: The system processes the corrector EDI transaction
Logic Flow:
IF Corrector EDI contains importer information modifications AND importer data has not been completely deleted
AND The system processes the corrector EDI transaction
THEN:
• The system should apply the corrector changes to update the importer information with the new values provided in the corrector EDI
R-GCCCCADD-cbl-00946 (+11)File: GCCCCADD.cblBusiness Rule: Transit Description Enhancement with CCN Reference
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cargo manifest exists with current description data in gcsccrt and gcsccs53 segments.
Trigger Criteria:
Context: A cargo manifest exists with current description data in GCSCCRT and GCSCCS53 segments
Applied to: Save Current Description Data
Action: The transit description enhancement process begins
Logic Flow:
IF A cargo manifest exists with current description data in GCSCCRT and GCSCCS53 segments
AND The transit description enhancement process begins
THEN:
• The system saves the current manifest data to backup variables and preserves all 46 cargo description array elements for potential restoration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when reference ccn is provided for description enhancement.
Trigger Criteria:
Context: A reference CCN is provided for description enhancement
Applied to: Set CCN Key from Reference CCN
Action: The system needs to retrieve description data from another CCN
Logic Flow:
IF A reference CCN is provided for description enhancement
AND The system needs to retrieve description data from another CCN
THEN:
• The system sets the CCN key to the reference CCN value and configures the retrieval parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid reference ccn key is set.
Trigger Criteria:
Context: A valid reference CCN key is set
Applied to: Retrieve Description from Reference CCN
Action: The system attempts to retrieve description data
Logic Flow:
IF A valid reference CCN key is set
AND The system attempts to retrieve description data
THEN:
• The system calls GCCCCIO2 to fetch all description segments and populates the description arrays if successful
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when attempt to retrieve description data from reference ccn has been made.
Trigger Criteria:
Context: An attempt to retrieve description data from reference CCN has been made
Applied to: Description Retrieved Successfully?
Action: The retrieval operation completes
Logic Flow:
IF An attempt to retrieve description data from reference CCN has been made
AND The retrieval operation completes
THEN:
• If no error occurred, proceed with description enhancement, otherwise restore original data and exit
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when description data has been successfully retrieved from the reference ccn.
Trigger Criteria:
Context: Description data has been successfully retrieved from the reference CCN
Applied to: Extract Description Components
Action: The system processes the retrieved data
Logic Flow:
IF Description data has been successfully retrieved from the reference CCN
AND The system processes the retrieved data
THEN:
• The system extracts the lading description from GCCC segment and copies all 46 cargo description elements to the working description array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description components have been extracted and an action code is specified.
Trigger Criteria:
Context: Description components have been extracted and an action code is specified
Applied to: Action Code Check
Action: The system evaluates the action code
Logic Flow:
IF Description components have been extracted and an action code is specified
AND The system evaluates the action code
THEN:
• If action code is 'US', build US transit description; if 'RT', build RT transit description; otherwise use original description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when action code is 'us' and original description data is available.
Trigger Criteria:
Context: Action code is 'US' and original description data is available
Applied to: Build US Transit Description
Action: Building the enhanced description
Logic Flow:
IF Action code is 'US' and original description data is available
AND Building the enhanced description
THEN:
• The system concatenates the reference CCN + ' MOVING IN TRANSIT THROUGH CANADA ' + original description into the enhanced description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when action code is 'rt' and original description data is available.
Trigger Criteria:
Context: Action code is 'RT' and original description data is available
Applied to: Build RT Transit Description
Action: Building the enhanced description
Logic Flow:
IF Action code is 'RT' and original description data is available
AND Building the enhanced description
THEN:
• The system concatenates the reference CCN + ' MOVING IN TRANSIT THROUGH US ' + original description into the enhanced description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when action code is neither 'us' nor 'rt' and original description data is available.
Trigger Criteria:
Context: Action code is neither 'US' nor 'RT' and original description data is available
Applied to: Use Original Description
Action: Building the description
Logic Flow:
IF Action code is neither 'US' nor 'RT' and original description data is available
AND Building the description
THEN:
• The system uses the original retrieved description without any transit-specific modifications
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when enhanced description has been built with specified length parameters.
Trigger Criteria:
Context: An enhanced description has been built with specified length parameters
Applied to: Compress Enhanced Description
Action: The compression process is executed
Logic Flow:
IF An enhanced description has been built with specified length parameters
AND The compression process is executed
THEN:
• The system calls GCCCOMP with 45000 and 22500 length parameters to compress the description data into the target format
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when description data has been successfully enhanced and compressed.
Trigger Criteria:
Context: Description data has been successfully enhanced and compressed
Applied to: Update Current Description Data
Action: Updating the current manifest
Logic Flow:
IF Description data has been successfully enhanced and compressed
AND Updating the current manifest
THEN:
• The system moves the compressed lading description to GCCC segment and copies all 46 enhanced cargo description elements to the cargo data array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when description enhancement process has failed and original data was previously saved.
Trigger Criteria:
Context: The description enhancement process has failed and original data was previously saved
Applied to: Restore Original Data on Error
Action: An error occurs during enhancement
Logic Flow:
IF The description enhancement process has failed and original data was previously saved
AND An error occurs during enhancement
THEN:
• The system restores the original GCSCCRT and GCSCCS52 data and clears all 46 cargo description array elements before restoring the saved values
Business Justification: Establishes the required business protocol to be followed when shipment is being processed and the action type is iis-a6 or the multi-manifest indicator is 'y'.
Trigger Criteria:
Context: A shipment is being processed AND the action type is IIS-A6 OR the multi-manifest indicator is 'Y'
Applied to: Set Manifest From Port to 'IIS-A6'
Action: The manifest from port field is blank (spaces)
Logic Flow:
IF A shipment is being processed AND the action type is IIS-A6 OR the multi-manifest indicator is 'Y'
AND The manifest from port field is blank (spaces)
THEN:
• The manifest from port should be set to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment is being processed and the action type is iis-a6 or the multi-manifest indicator is 'y'.
Trigger Criteria:
Context: A shipment is being processed AND the action type is IIS-A6 OR the multi-manifest indicator is 'Y'
Applied to: Set Manifest To Port to 'IIS-A6'
Action: The manifest to port field is blank (spaces)
Logic Flow:
IF A shipment is being processed AND the action type is IIS-A6 OR the multi-manifest indicator is 'Y'
Business Justification: Governs the functional prerequisites and system routing when shipment requires broker information lookup.
Trigger Criteria:
Context: A shipment requires broker information lookup
Applied to: Set Initial Search Parameters
Action: The broker lookup process is initiated
Logic Flow:
IF A shipment requires broker information lookup
AND The broker lookup process is initiated
THEN:
• All search parameters are populated with shipper CHOP, consignee CHOP, origin station, destination station with road number, and commodity code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when all search parameters are populated with specific values. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All search parameters are populated with specific values
Applied to: Call Crossing Table Search - First Attempt
Action: The crossing table search is executed with full criteria
Logic Flow:
IF All search parameters are populated with specific values
AND The crossing table search is executed with full criteria
THEN:
• The system attempts to find broker data matching all specified parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when crossing table search has been executed with full criteria.
Trigger Criteria:
Context: The crossing table search has been executed with full criteria
Applied to: Broker Data Found?
Action: The search results are evaluated
Logic Flow:
IF The crossing table search has been executed with full criteria
AND The search results are evaluated
THEN:
• If broker data is found, the lookup process completes successfully, otherwise proceed to secondary search with wildcards
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when primary search with full criteria did not find broker data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The primary search with full criteria did not find broker data
Applied to: Call Crossing Table Search - Second Attempt
Action: The shipper CHOP and origin station are set to wildcard values and the crossing table search is executed
Logic Flow:
IF The primary search with full criteria did not find broker data
AND The shipper CHOP and origin station are set to wildcard values and the crossing table search is executed
THEN:
• The system attempts to find broker data with the broadened search criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when crossing table search has been executed with shipper and origin wildcards.
Trigger Criteria:
Context: The crossing table search has been executed with shipper and origin wildcards
Applied to: Broker Data Found?
Action: The search results are evaluated
Logic Flow:
IF The crossing table search has been executed with shipper and origin wildcards
AND The search results are evaluated
THEN:
• If broker data is found, the lookup process completes successfully, otherwise proceed to final search with commodity wildcard
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when both primary and secondary searches did not find broker data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Both primary and secondary searches did not find broker data
Applied to: Call Crossing Table Search - Third Attempt
Action: The commodity code is set to wildcard and the crossing table search is executed
Logic Flow:
IF Both primary and secondary searches did not find broker data
AND The commodity code is set to wildcard and the crossing table search is executed
THEN:
• The system attempts to find broker data with the most general search criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when crossing table search has been executed with maximum wildcard criteria.
Trigger Criteria:
Context: The crossing table search has been executed with maximum wildcard criteria
Applied to: Broker Data Found?
Action: The final search results are evaluated
Logic Flow:
IF The crossing table search has been executed with maximum wildcard criteria
AND The final search results are evaluated
THEN:
• If broker data is found, the lookup process completes successfully, otherwise no broker information is available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when one of the crossing table searches has successfully found broker data.
Trigger Criteria:
Context: One of the crossing table searches has successfully found broker data
Applied to: Broker Information Retrieved Successfully
Action: The broker information is retrieved
Logic Flow:
IF One of the crossing table searches has successfully found broker data
AND The broker information is retrieved
THEN:
• The broker lookup process completes with valid broker information available for use
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when all three crossing table search attempts have been executed.
Trigger Criteria:
Context: All three crossing table search attempts have been executed
Applied to: No Broker Information Found
Action: None of the searches found matching broker data
Logic Flow:
IF All three crossing table search attempts have been executed
AND None of the searches found matching broker data
THEN:
• The broker lookup process completes with no broker information available
Business Justification: Establishes the required business protocol to be followed when crossing table lookup has been performed for broker information.
Trigger Criteria:
Context: A crossing table lookup has been performed for broker information
Applied to: Crossing Table Data Found?
Action: The system checks the crossing table return status
Logic Flow:
IF A crossing table lookup has been performed for broker information
AND The system checks the crossing table return status
THEN:
• If data is found, proceed with broker override processing, otherwise skip broker override logic
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when crossing table data is available with an override flag.
Trigger Criteria:
Context: Crossing table data is available with an override flag
Applied to: Override Flag = 'Y'?
Action: The override flag is evaluated
Logic Flow:
IF Crossing table data is available with an override flag
AND The override flag is evaluated
THEN:
• If override flag equals 'Y', force override of existing broker data, otherwise check existing broker status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when override flag is not 'y' and existing broker name exists.
Trigger Criteria:
Context: Override flag is not 'Y' and existing broker name exists
Applied to: Existing Broker Name is Empty, UNKNOWN, or NOT-REQ?
Action: The existing broker name is evaluated
Logic Flow:
IF Override flag is not 'Y' and existing broker name exists
AND The existing broker name is evaluated
THEN:
• If broker name is SPACES, 'UNKNOWN', or 'NOT-REQ', use crossing table data, otherwise keep existing broker data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when crossing table contains valid broker data and override conditions are satisfied.
Trigger Criteria:
Context: Crossing table contains valid broker data and override conditions are satisfied
Applied to: Move Broker Name from Crossing Table
Action: Broker name assignment is performed
Logic Flow:
IF Crossing table contains valid broker data and override conditions are satisfied
AND Broker name assignment is performed
THEN:
• The broker name from crossing table is moved to the customs record broker field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when broker information has been processed from crossing table.
Trigger Criteria:
Context: Broker information has been processed from crossing table
Applied to: Manifest-To Station Available in Crossing Table?
Action: The crossing table manifest-to station field is checked
Logic Flow:
IF Broker information has been processed from crossing table
AND The crossing table manifest-to station field is checked
THEN:
• If manifest-to station is not SPACES, proceed with manifest-to station override, otherwise complete processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when crossing table contains valid manifest-to station information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Crossing table contains valid manifest-to station information
Applied to: Override Manifest-To Station Information
Action: Manifest-to station override is performed
Logic Flow:
IF Crossing table contains valid manifest-to station information
AND Manifest-to station override is performed
THEN:
• Reset error flags, update manifest-to station name, lookup station in MC table, validate Canadian customs code, and update destination station information including station number and call letters
Business Justification: Defines the strict business conditions required to proceed when crossing table entry exists with broker data.
Trigger Criteria:
Context: A crossing table entry exists with broker data
Applied to: Crossing Table CDN Manifest-To Available?
Action: The system checks for CDN manifest-to field availability
Logic Flow:
IF A crossing table entry exists with broker data
AND The system checks for CDN manifest-to field availability
THEN:
• The system determines if manifest-to station override should proceed based on field presence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when crossing table contains cdn manifest-to override data.
Trigger Criteria:
Context: Crossing table contains CDN manifest-to override data
Applied to: Reset Error Flags
Action: The system begins manifest-to station override processing
Logic Flow:
IF Crossing table contains CDN manifest-to override data
AND The system begins manifest-to station override processing
THEN:
• All manifest-to related error flags are reset to OFF state
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when crossing table contains a valid cdn manifest-to value.
Trigger Criteria:
Context: Crossing table contains a valid CDN manifest-to value
Applied to: Set Manifest-To Station from Crossing Table
Action: The system processes manifest-to station override
Logic Flow:
IF Crossing table contains a valid CDN manifest-to value
AND The system processes manifest-to station override
THEN:
• The manifest-to station name is updated with the crossing table CDN manifest-to value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest-to station name has been set from crossing table.
Trigger Criteria:
Context: A manifest-to station name has been set from crossing table
Applied to: Lookup MC Table for Manifest-To Port
Action: The system looks up the manifest port in MC table
Logic Flow:
IF A manifest-to station name has been set from crossing table
AND The system looks up the manifest port in MC table
THEN:
• The system attempts to retrieve MC table data for the specified manifest port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup has been performed for a manifest port.
Trigger Criteria:
Context: An MC table lookup has been performed for a manifest port
Applied to: MC Table Lookup Successful?
Action: The system evaluates the lookup result
Logic Flow:
IF An MC table lookup has been performed for a manifest port
AND The system evaluates the lookup result
THEN:
• The system determines success or failure based on data retrieval status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when mc table data has been successfully retrieved for a manifest port.
Trigger Criteria:
Context: MC table data has been successfully retrieved for a manifest port
Applied to: Validate Canadian Customs Code
Action: The system validates the Canadian customs code
Logic Flow:
IF MC table data has been successfully retrieved for a manifest port
AND The system validates the Canadian customs code
THEN:
• The system checks if the customs code is not equal to '00000' which indicates an invalid code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid canadian customs code has been retrieved from mc table.
Trigger Criteria:
Context: A valid Canadian customs code has been retrieved from MC table
Applied to: Set Manifest-To Station Code
Action: The system configures the manifest-to station
Logic Flow:
IF A valid Canadian customs code has been retrieved from MC table
AND The system configures the manifest-to station
THEN:
• The manifest-to station code is set to the Canadian customs code from MC table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid mc table data exists for the manifest-to station.
Trigger Criteria:
Context: Valid MC table data exists for the manifest-to station
Applied to: Set Destination Station Number
Action: The system sets destination station configuration
Logic Flow:
IF Valid MC table data exists for the manifest-to station
AND The system sets destination station configuration
THEN:
• The destination station number for index is set to the MC table station number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid mc table data exists for the manifest-to station. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Valid MC table data exists for the manifest-to station
Applied to: Set Batch Print Call Letters
Action: The system configures batch printing parameters
Logic Flow:
IF Valid MC table data exists for the manifest-to station
AND The system configures batch printing parameters
THEN:
• The batch print call letters are set to the MC table call letters value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mc table lookup was successful but canadian customs code equals '00000'.
Trigger Criteria:
Context: MC table lookup was successful but Canadian customs code equals '00000'
Applied to: Set Error Flag 2 - Invalid Customs Code
Action: The system validates the customs code
Logic Flow:
IF MC table lookup was successful but Canadian customs code equals '00000'
AND The system validates the customs code
THEN:
• Error flag 2 is set to ON and the manifest port name is saved for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup failed to retrieve data for the manifest-to station.
Trigger Criteria:
Context: MC table lookup failed to retrieve data for the manifest-to station
Applied to: Set Error Flag 3 - Invalid MC Port
Action: The system processes the lookup failure
Logic Flow:
IF MC table lookup failed to retrieve data for the manifest-to station
AND The system processes the lookup failure
THEN:
• Error flag 3 is set to ON and the manifest port name is saved for error reporting
R-GCCCCADD-cbl-00987 (+5)File: GCCCCADD.cblBusiness Rule: Origin Country Determination from AU Table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when origin country determination process is starting.
Trigger Criteria:
Context: The origin country determination process is starting
Applied to: Initialize Origin Country to Spaces
Action: The system begins to determine the origin country
Logic Flow:
IF The origin country determination process is starting
AND The system begins to determine the origin country
THEN:
• The origin country field should be initialized to spaces (blank)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to lookup authorized user information.
Trigger Criteria:
Context: The system needs to lookup authorized user information
Applied to: Setup AU Table Lookup Parameters
Action: Setting up AU table lookup parameters
Logic Flow:
IF The system needs to lookup authorized user information
AND Setting up AU table lookup parameters
THEN:
• The table ID should be set to 'AU', the consignee CHOP code should be used as the CHOP key, and the commodity code should be used as the commodity key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au table lookup parameters are configured with consignee chop and commodity code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: AU table lookup parameters are configured with consignee CHOP and commodity code
Applied to: Call Table Lookup Service
Action: The table lookup service is called
Logic Flow:
IF AU table lookup parameters are configured with consignee CHOP and commodity code
AND The table lookup service is called
THEN:
• The system should execute the lookup and return the result status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au table lookup service has been executed.
Trigger Criteria:
Context: The AU table lookup service has been executed
Applied to: AU Table Record Found?
Action: The lookup result is evaluated
Logic Flow:
IF The AU table lookup service has been executed
AND The lookup result is evaluated
THEN:
• If the lookup is successful, the AU table data should be loaded; otherwise, the AU table data should be cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when au table lookup has been processed.
Trigger Criteria:
Context: The AU table lookup has been processed
Applied to: Origin Country is Mexico?
Action: The current origin country value is evaluated
Logic Flow:
IF The AU table lookup has been processed
AND The current origin country value is evaluated
THEN:
• If the origin country is 'MX' (Mexico), the process should exit and preserve the Mexico designation; otherwise, continue with state-country table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when origin country is not mexico and state-country lookup is needed.
Trigger Criteria:
Context: The origin country is not Mexico and state-country lookup is needed
Applied to: Lookup State-Country Table
Action: The state-country table is searched using the origin station state code
Logic Flow:
IF The origin country is not Mexico and state-country lookup is needed
AND The state-country table is searched using the origin station state code
THEN:
• If a matching state code is found, the corresponding country should be set as the origin country
R-GCCCCADD-cbl-00993 (+6)File: GCCCCADD.cblBusiness Rule: Mexico Origin Country Handling
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment requires origin country determination.
Trigger Criteria:
Context: A shipment requires origin country determination
Applied to: Initialize Origin Country to Spaces
Action: The Mexico origin country handling process begins
Logic Flow:
IF A shipment requires origin country determination
AND The Mexico origin country handling process begins
THEN:
• The origin country field should be initialized to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has a consignee chop code and commodity code.
Trigger Criteria:
Context: A shipment has a consignee CHOP code and commodity code
Applied to: Lookup Authorized User Table with Consignee CHOP and Commodity Code
Action: Origin country determination is required
Logic Flow:
IF A shipment has a consignee CHOP code and commodity code
AND Origin country determination is required
THEN:
• The system should lookup the authorized user table using the consignee CHOP and commodity code as search keys
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when authorized user table lookup has been performed.
Trigger Criteria:
Context: An authorized user table lookup has been performed
Applied to: Store AU Table Data
Action: The lookup returns valid data
Logic Flow:
IF An authorized user table lookup has been performed
AND The lookup returns valid data
THEN:
• The authorized user table data should be stored in the working storage area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when authorized user table lookup has been performed.
Trigger Criteria:
Context: An authorized user table lookup has been performed
Applied to: Clear AU Table Data
Action: The lookup does not return valid data
Logic Flow:
IF An authorized user table lookup has been performed
AND The lookup does not return valid data
THEN:
• The authorized user table data area should be cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when origin country has been determined from authorized user data.
Trigger Criteria:
Context: The origin country has been determined from authorized user data
Applied to: Exit - Keep Mexico as Origin Country
Action: The origin country is 'MX' (Mexico)
Logic Flow:
IF The origin country has been determined from authorized user data
AND The origin country is 'MX' (Mexico)
THEN:
• The system should preserve Mexico as the origin country and exit the country determination process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when origin country is not mexico and needs to be determined.
Trigger Criteria:
Context: The origin country is not Mexico and needs to be determined
Applied to: Lookup State-Country Table with Origin Station State Code
Action: The origin station state code is available
Logic Flow:
IF The origin country is not Mexico and needs to be determined
AND The origin station state code is available
THEN:
• The system should lookup the state-country table using the origin station state code to determine the origin country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when state-country table lookup has been performed using the origin station state code.
Trigger Criteria:
Context: A state-country table lookup has been performed using the origin station state code
Applied to: Set Origin Country from State-Country Lookup
Action: The lookup returns a valid country code
Logic Flow:
IF A state-country table lookup has been performed using the origin station state code
AND The lookup returns a valid country code
THEN:
• The origin country should be set to the country code returned from the state-country lookup
R-GCCCCADD-cbl-01000 (+12)File: GCCCCADD.cblBusiness Rule: Postal Code Padding
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo manifest creation process is executing.
Trigger Criteria:
Context: The cargo manifest creation process is executing
Applied to: Called from GCX011?
Action: The system checks the calling program source
Logic Flow:
IF The cargo manifest creation process is executing
AND The system checks the calling program source
THEN:
• If called from GCX011, proceed with postal code validation and padding, otherwise skip postal code processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system is processing postal codes for gcx011 integration.
Trigger Criteria:
Context: The system is processing postal codes for GCX011 integration
Applied to: Shipper Postal Code Not Empty?
Action: The shipper postal code field is evaluated
Logic Flow:
IF The system is processing postal codes for GCX011 integration
AND The shipper postal code field is evaluated
THEN:
• If shipper postal code is not empty, proceed to check its length, otherwise skip to consignee postal code processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper postal code is not empty.
Trigger Criteria:
Context: The shipper postal code is not empty
Applied to: Calculate Shipper Postal Code Length
Action: The system calculates the string length of the shipper postal code
Logic Flow:
IF The shipper postal code is not empty
AND The system calculates the string length of the shipper postal code
THEN:
• The actual character length is determined by counting non-space characters from the end
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper postal code length has been calculated.
Trigger Criteria:
Context: The shipper postal code length has been calculated
Applied to: Length < 5 Characters?
Action: The system compares the length to the minimum requirement of 5 characters
Logic Flow:
IF The shipper postal code length has been calculated
AND The system compares the length to the minimum requirement of 5 characters
THEN:
• If length is less than 5 characters, proceed with padding, otherwise continue to consignee processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper postal code is shorter than 5 characters.
Trigger Criteria:
Context: The shipper postal code is shorter than 5 characters
Applied to: Pad Shipper Postal Code with Periods to 5 Characters
Action: The system applies padding to meet minimum length requirements
Logic Flow:
IF The shipper postal code is shorter than 5 characters
AND The system applies padding to meet minimum length requirements
THEN:
• Periods are added to positions 5 through 5 of the postal code field to ensure 5-character minimum length
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has completed shipper postal code processing.
Trigger Criteria:
Context: The system has completed shipper postal code processing
Applied to: Consignee Postal Code Not Empty?
Action: The consignee postal code field is evaluated
Logic Flow:
IF The system has completed shipper postal code processing
AND The consignee postal code field is evaluated
THEN:
• If consignee postal code is not empty, proceed to check its length, otherwise skip to notify party postal code processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee postal code is not empty.
Trigger Criteria:
Context: The consignee postal code is not empty
Applied to: Calculate Consignee Postal Code Length
Action: The system calculates the string length of the consignee postal code
Logic Flow:
IF The consignee postal code is not empty
AND The system calculates the string length of the consignee postal code
THEN:
• The actual character length is determined by counting non-space characters from the end
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when consignee postal code length has been calculated.
Trigger Criteria:
Context: The consignee postal code length has been calculated
Applied to: Length < 5 Characters?
Action: The system compares the length to the minimum requirement of 5 characters
Logic Flow:
IF The consignee postal code length has been calculated
AND The system compares the length to the minimum requirement of 5 characters
THEN:
• If length is less than 5 characters, proceed with padding, otherwise continue to notify party processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when consignee postal code is shorter than 5 characters.
Trigger Criteria:
Context: The consignee postal code is shorter than 5 characters
Applied to: Pad Consignee Postal Code with Periods to 5 Characters
Action: The system applies padding to meet minimum length requirements
Logic Flow:
IF The consignee postal code is shorter than 5 characters
AND The system applies padding to meet minimum length requirements
THEN:
• Periods are added to positions 5 through 5 of the postal code field to ensure 5-character minimum length
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system has completed consignee postal code processing.
Trigger Criteria:
Context: The system has completed consignee postal code processing
Applied to: Notify Party Postal Code Not Empty?
Action: The notify party postal code field is evaluated
Logic Flow:
IF The system has completed consignee postal code processing
AND The notify party postal code field is evaluated
THEN:
• If notify party postal code is not empty, proceed to check its length, otherwise complete postal code processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when notify party postal code is not empty.
Trigger Criteria:
Context: The notify party postal code is not empty
Applied to: Calculate Notify Party Postal Code Length
Action: The system calculates the string length of the notify party postal code
Logic Flow:
IF The notify party postal code is not empty
AND The system calculates the string length of the notify party postal code
THEN:
• The actual character length is determined by counting non-space characters from the end
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when notify party postal code length has been calculated.
Trigger Criteria:
Context: The notify party postal code length has been calculated
Applied to: Length < 5 Characters?
Action: The system compares the length to the minimum requirement of 5 characters
Logic Flow:
IF The notify party postal code length has been calculated
AND The system compares the length to the minimum requirement of 5 characters
THEN:
• If length is less than 5 characters, proceed with padding, otherwise complete processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when notify party postal code is shorter than 5 characters.
Trigger Criteria:
Context: The notify party postal code is shorter than 5 characters
Applied to: Pad Notify Party Postal Code with Periods to 5 Characters
Action: The system applies padding to meet minimum length requirements
Logic Flow:
IF The notify party postal code is shorter than 5 characters
AND The system applies padding to meet minimum length requirements
THEN:
• Periods are added to positions 5 through 5 of the postal code field to ensure 5-character minimum length
R-GCCCCADD-cbl-01013 (+11)File: GCCCCADD.cblBusiness Rule: Waybill Date Validation and ETA Calculation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment root record exists with waybill date information.
Trigger Criteria:
Context: A shipment root record exists with waybill date information
Applied to: Extract Waybill Date from Shipment Root
Action: The system processes the shipment for customs manifest creation
Logic Flow:
IF A shipment root record exists with waybill date information
AND The system processes the shipment for customs manifest creation
THEN:
• The waybill date is extracted from the shipment root and stored for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when waybill date has been extracted from the shipment root.
Trigger Criteria:
Context: A waybill date has been extracted from the shipment root
Applied to: Move Waybill Date to Working Storage
Action: The system prepares for date calculations
Logic Flow:
IF A waybill date has been extracted from the shipment root
AND The system prepares for date calculations
THEN:
• The waybill date is moved to working storage variables and also set as the waybill date index
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when waybill date is available in working storage.
Trigger Criteria:
Context: The waybill date is available in working storage
Applied to: Set Up Date Calculation Parameters
Action: The system prepares to calculate the border arrival ETA
Logic Flow:
IF The waybill date is available in working storage
AND The system prepares to calculate the border arrival ETA
THEN:
• The date calculation parameters are set to ADD mode for DAYS calculation with the waybill date as the original date
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when waybill date is in 6-digit format (yymmdd).
Trigger Criteria:
Context: The waybill date is in 6-digit format (YYMMDD)
Applied to: Add Machine Century to Date
Action: The system prepares the date for calculation
Logic Flow:
IF The waybill date is in 6-digit format (YYMMDD)
AND The system prepares the date for calculation
THEN:
• The machine century is added to the year portion to create a complete 8-digit date format
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when date calculation utility parameters are being configured.
Trigger Criteria:
Context: The date calculation utility parameters are being configured
Applied to: Set Calculation Mode to ADD DAYS
Action: The system sets up the calculation mode
Logic Flow:
IF The date calculation utility parameters are being configured
AND The system sets up the calculation mode
THEN:
• The calculation mode is set to ADD and the unit is set to DAYS
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when configured number of days for eta calculation exists.
Trigger Criteria:
Context: A configured number of days for ETA calculation exists
Applied to: Set Days Amount from Configuration
Action: The system sets up the date calculation parameters
Logic Flow:
IF A configured number of days for ETA calculation exists
AND The system sets up the date calculation parameters
THEN:
• The configured days amount is set as the amount to add to the waybill date
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all date calculation parameters are properly configured. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All date calculation parameters are properly configured
Applied to: Call Date Calculation Utility ISCDTCAL
Action: The system needs to calculate the border arrival ETA
Logic Flow:
IF All date calculation parameters are properly configured
AND The system needs to calculate the border arrival ETA
THEN:
• The ISCDTCAL utility is called with the configured parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when date calculation utility has been called.
Trigger Criteria:
Context: The date calculation utility has been called
Applied to: Date Calculation Successful?
Action: The system evaluates the calculation result
Logic Flow:
IF The date calculation utility has been called
AND The system evaluates the calculation result
THEN:
• If the calculation was successful, the new date is used; otherwise, an error is processed
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when date calculation utility executed successfully.
Trigger Criteria:
Context: The date calculation utility executed successfully
Applied to: Set Border Arrival ETA Date
Action: The system processes the successful calculation result
Logic Flow:
IF The date calculation utility executed successfully
AND The system processes the successful calculation result
THEN:
• The calculated new date is assigned as the border arrival ETA
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when date calculation utility failed to execute successfully.
Trigger Criteria:
Context: The date calculation utility failed to execute successfully
Applied to: Set Invalid Waybill Date Error
Action: The system processes the failed calculation result
Logic Flow:
IF The date calculation utility failed to execute successfully
AND The system processes the failed calculation result
THEN:
• An invalid waybill date error code is set for message retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when invalid waybill date error code has been set.
Trigger Criteria:
Context: An invalid waybill date error code has been set
Applied to: Retrieve Error Message Text
Action: The system needs to provide error details
Logic Flow:
IF An invalid waybill date error code has been set
AND The system needs to provide error details
THEN:
• The error message retrieval process is performed to get the descriptive error text
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when error message has been retrieved for the invalid waybill date.
Trigger Criteria:
Context: An error message has been retrieved for the invalid waybill date
Applied to: Add Error to Message Queue
Action: The system processes the error condition
Logic Flow:
IF An error message has been retrieved for the invalid waybill date
AND The system processes the error condition
THEN:
• The error message is added to the message queue for user notification
R-GCCCCADD-cbl-01025 (+2)File: GCCCCADD.cblBusiness Rule: Station Number Conversion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment record contains an origin station number in character format.
Trigger Criteria:
Context: A shipment record contains an origin station number in character format
Applied to: Convert Character to Numeric Format
Action: The system processes the origin station data for customs manifest creation
Logic Flow:
IF A shipment record contains an origin station number in character format
AND The system processes the origin station data for customs manifest creation
THEN:
• The origin station number is converted to numeric format and stored in the customs record origin station number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment record contains a destination station number in character format.
Trigger Criteria:
Context: A shipment record contains a destination station number in character format
Applied to: Convert Character to Numeric Format
Action: The system processes the destination station data for customs manifest creation
Logic Flow:
IF A shipment record contains a destination station number in character format
AND The system processes the destination station data for customs manifest creation
THEN:
• The destination station number is converted to numeric format and stored in the customs record destination station number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest to station has been validated and contains a station number in the mc table lookup result.
Trigger Criteria:
Context: A manifest to station has been validated and contains a station number in the MC table lookup result
Applied to: Store Numeric Destination Station Number
Action: The system processes the manifest to station information
Logic Flow:
IF A manifest to station has been validated and contains a station number in the MC table lookup result
AND The system processes the manifest to station information
THEN:
• The station number is converted to numeric format and stored in both the destination station number index and destination station number index station fields
R-GCCCCADD-cbl-01028 (+1)File: GCCCCADD.cblBusiness Rule: Manifest Port Default Setting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment is being processed with action code iis-a6 or multi-manifest indicator equals 'y'.
Trigger Criteria:
Context: A shipment is being processed with action code IIS-A6 OR multi-manifest indicator equals 'Y'
Applied to: Set Manifest From Port to 'IIS-A6'
Action: The manifest from port field is blank or empty
Logic Flow:
IF A shipment is being processed with action code IIS-A6 OR multi-manifest indicator equals 'Y'
AND The manifest from port field is blank or empty
THEN:
• The manifest from port should be set to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment is being processed with action code iis-a6 or multi-manifest indicator equals 'y'.
Trigger Criteria:
Context: A shipment is being processed with action code IIS-A6 OR multi-manifest indicator equals 'Y'
Applied to: Set Manifest To Port to 'IIS-A6'
Action: The manifest to port field is blank or empty
Logic Flow:
IF A shipment is being processed with action code IIS-A6 OR multi-manifest indicator equals 'Y'
AND The manifest to port field is blank or empty
THEN:
• The manifest to port should be set to 'IIS-A6'
R-GCCCCADD-cbl-01030 (+5)File: GCCCCADD.cblBusiness Rule: Canadian Customs Code Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest from port value exists in the shipment root.
Trigger Criteria:
Context: A manifest from port value exists in the shipment root
Applied to: Lookup MC Table with Manifest From Port
Action: The system looks up the manifest from port in the MC table
Logic Flow:
IF A manifest from port value exists in the shipment root
AND The system looks up the manifest from port in the MC table
THEN:
• The system retrieves the corresponding manifest code record or determines if no record exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when canadian customs code has been retrieved from the mc table.
Trigger Criteria:
Context: A Canadian customs code has been retrieved from the MC table
Applied to: Canadian Customs Code = '00000'?
Action: The Canadian customs code equals '00000'
Logic Flow:
IF A Canadian customs code has been retrieved from the MC table
AND The Canadian customs code equals '00000'
THEN:
• The system identifies this as an invalid customs code and clears the MC table data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when canadian customs code from mc table equals '00000'.
Trigger Criteria:
Context: The Canadian customs code from MC table equals '00000'
Applied to: Invalid Manifest Port Canadian Customs Code
Action: The system detects this invalid customs code
Logic Flow:
IF The Canadian customs code from MC table equals '00000'
AND The system detects this invalid customs code
THEN:
• The system generates an error message for invalid manifest port Canadian customs code and adds it to the message array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest from port value needs to be validated.
Trigger Criteria:
Context: A manifest from port value needs to be validated
Applied to: Invalid Manifest Port in MC Table
Action: The MC table lookup fails to find a matching record
Logic Flow:
IF A manifest from port value needs to be validated
AND The MC table lookup fails to find a matching record
THEN:
• The system generates an error message for invalid manifest port and adds it to the message array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid canadian customs code has been retrieved from mc table.
Trigger Criteria:
Context: A valid Canadian customs code has been retrieved from MC table
Applied to: Set Canadian Customs Code to Manifest From Station Code
Action: The Canadian customs code is not '00000'
Logic Flow:
IF A valid Canadian customs code has been retrieved from MC table
AND The Canadian customs code is not '00000'
THEN:
• The system assigns the Canadian customs code to the manifest from station code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid mc table data has been retrieved.
Trigger Criteria:
Context: Valid MC table data has been retrieved
Applied to: Continue Processing
Action: Processing continues after validation
Logic Flow:
IF Valid MC table data has been retrieved
AND Processing continues after validation
THEN:
• The system assigns the US port of exit code from the MC table to the corresponding field
R-GCCCCADD-cbl-01036 (+7)File: GCCCCADD.cblBusiness Rule: US Port Exit Code Setting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment has a manifest from port defined in the shipment root data.
Trigger Criteria:
Context: A shipment has a manifest from port defined in the shipment root data
Applied to: Set GCCC-US-PORT-OF-EXIT-CODE
Action: The system looks up the manifest from port in the MC table and finds a matching record
Logic Flow:
IF A shipment has a manifest from port defined in the shipment root data
AND The system looks up the manifest from port in the MC table and finds a matching record
THEN:
• The US port of exit code from the MC table record is assigned to the cargo manifest US port of exit code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment has a manifest from port defined in the shipment root data.
Trigger Criteria:
Context: A shipment has a manifest from port defined in the shipment root data
Applied to: Log Error - Invalid Manifest Port
Action: The system attempts to look up the manifest from port in the MC table and the lookup fails
Logic Flow:
IF A shipment has a manifest from port defined in the shipment root data
AND The system attempts to look up the manifest from port in the MC table and the lookup fails
THEN:
• The system clears the MC table data and logs an error message for invalid manifest port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest from port lookup in the mc table is successful.
Trigger Criteria:
Context: A manifest from port lookup in the MC table is successful
Applied to: Extract US Port Exit Code from MC Table
Action: The Canadian customs code in the MC table record equals '00000'
Logic Flow:
IF A manifest from port lookup in the MC table is successful
AND The Canadian customs code in the MC table record equals '00000'
THEN:
• The system clears the MC table data and adds an error message for invalid Canadian customs code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when action is iis-a6 or the multi-manifest indicator is 'y'.
Trigger Criteria:
Context: The action is IIS-A6 or the multi-manifest indicator is 'Y'
Applied to: Get Manifest From Port from Shipment Root
Action: The manifest from port in the shipment root is blank
Logic Flow:
IF The action is IIS-A6 or the multi-manifest indicator is 'Y'
AND The manifest from port in the shipment root is blank
THEN:
• The system sets the manifest from port to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when action is iis-a6 or the multi-manifest indicator is 'y'.
Trigger Criteria:
Context: The action is IIS-A6 or the multi-manifest indicator is 'Y'
Applied to: Get Manifest To Port from Shipment Root
Action: The manifest to port in the shipment root is blank
Logic Flow:
IF The action is IIS-A6 or the multi-manifest indicator is 'Y'
AND The manifest to port in the shipment root is blank
THEN:
• The system sets the manifest to port to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment is being processed for customs manifest creation
Applied to: Log Error - Invalid Manifest Port
Action: The manifest to port is blank or not provided
Logic Flow:
IF A shipment is being processed for customs manifest creation
AND The manifest to port is blank or not provided
THEN:
• The system sets error flag 1 to indicate missing manifest to port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest to port lookup in the mc table is successful.
Trigger Criteria:
Context: A manifest to port lookup in the MC table is successful
Applied to: Set US Port Exit Code for Manifest To Station
Action: The Canadian customs code in the MC table record equals '00000'
Logic Flow:
IF A manifest to port lookup in the MC table is successful
AND The Canadian customs code in the MC table record equals '00000'
THEN:
• The system clears the MC table data and sets error flag 2 with the port name for invalid Canadian customs code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment has a manifest to port defined.
Trigger Criteria:
Context: A shipment has a manifest to port defined
Applied to: Log Error - Invalid Manifest Port
Action: The system attempts to look up the manifest to port in the MC table and the lookup fails
Logic Flow:
IF A shipment has a manifest to port defined
AND The system attempts to look up the manifest to port in the MC table and the lookup fails
THEN:
• The system clears the MC table data and sets error flag 3 with the port name for invalid manifest port
R-GCCCCADD-cbl-01044 (+4)File: GCCCCADD.cblBusiness Rule: Special CCN Type 9 Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with a ccn key is being processed.
Trigger Criteria:
Context: A shipment with a CCN key is being processed
Applied to: Check CCN Type
Action: The system checks the CCN type from the CCN key
Logic Flow:
IF A shipment with a CCN key is being processed
AND The system checks the CCN type from the CCN key
THEN:
• The system identifies if the CCN type equals '9' for special processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with ccn type 9 is being processed.
Trigger Criteria:
Context: A shipment with CCN type 9 is being processed
Applied to: Are Current Settings Valid for Type 9?
Action: The system evaluates the US exit code, manifest from station name, manifest to station name, and their relationship
Logic Flow:
IF A shipment with CCN type 9 is being processed
AND The system evaluates the US exit code, manifest from station name, manifest to station name, and their relationship
THEN:
• The system determines settings are invalid if US exit code is not '00000' OR manifest from station is not 'IIS-A6' OR manifest to station is not 'IIS-A6' OR manifest from station does not equal manifest to station
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with ccn type 9 has invalid current manifest port settings.
Trigger Criteria:
Context: A shipment with CCN type 9 has invalid current manifest port settings
Applied to: Apply Special Type 9 Rules
Action: The system applies special type 9 processing rules
Logic Flow:
IF A shipment with CCN type 9 has invalid current manifest port settings
AND The system applies special type 9 processing rules
THEN:
• The system sets both manifest from station name and manifest to station name to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment with ccn type 9 has valid current manifest port settings. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A shipment with CCN type 9 has valid current manifest port settings
Applied to: Keep Existing Manifest Port Settings
Action: The system processes the manifest port information
Logic Flow:
IF A shipment with CCN type 9 has valid current manifest port settings
AND The system processes the manifest port information
THEN:
• The system preserves the existing manifest to station code, destination station number, and call letters without modification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with ccn type that is not '9' is being processed.
Trigger Criteria:
Context: A shipment with CCN type that is not '9' is being processed
Applied to: Continue Normal Processing
Action: The system evaluates the CCN type
Logic Flow:
IF A shipment with CCN type that is not '9' is being processed
AND The system evaluates the CCN type
THEN:
• The system continues with normal manifest port processing without applying special type 9 rules
R-GCCCCADD-cbl-01049 (+5)File: GCCCCADD.cblBusiness Rule: Destination Country Classification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when destination country classification process is starting.
Trigger Criteria:
Context: A destination country classification process is starting
Applied to: Set Destination as Non-US by Default
Action: The system begins destination country determination
Logic Flow:
IF A destination country classification process is starting
AND The system begins destination country determination
THEN:
• The destination should be set as non-US by default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when state-country lookup needs to be performed.
Trigger Criteria:
Context: A state-country lookup needs to be performed
Applied to: Initialize State Lookup Index
Action: The system prepares to search the state-country table
Logic Flow:
IF A state-country lookup needs to be performed
AND The system prepares to search the state-country table
THEN:
• The lookup index should be set to position 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when destination state code from shipment root and a state-country lookup table.
Trigger Criteria:
Context: A destination state code from shipment root and a state-country lookup table
Applied to: Does Destination State Match Table Entry?
Action: The system searches for the destination state code in the lookup table
Logic Flow:
IF A destination state code from shipment root and a state-country lookup table
AND The system searches for the destination state code in the lookup table
THEN:
• The system should identify if the destination state code matches any table entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when state code match is found in the lookup table.
Trigger Criteria:
Context: A state code match is found in the lookup table
Applied to: Is Country Code 'US'?
Action: The system checks the corresponding country code for the matched state
Logic Flow:
IF A state code match is found in the lookup table
AND The system checks the corresponding country code for the matched state
THEN:
• The system should determine if the country code equals 'US'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when destination state code matches a lookup table entry with country code 'us'.
Trigger Criteria:
Context: A destination state code matches a lookup table entry with country code 'US'
Applied to: Set Destination as US
Action: The state-country verification confirms US destination
Logic Flow:
IF A destination state code matches a lookup table entry with country code 'US'
AND The state-country verification confirms US destination
THEN:
• The destination should be classified as US
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when destination state code either does not match any lookup table entry or matches an entry with non-us country code.
Trigger Criteria:
Context: A destination state code either does not match any lookup table entry or matches an entry with non-US country code
Applied to: Keep Destination as Non-US
Action: The state-country verification does not confirm US destination
Logic Flow:
IF A destination state code either does not match any lookup table entry or matches an entry with non-US country code
AND The state-country verification does not confirm US destination
THEN:
• The destination should remain classified as non-US
Business Justification: Dictates the expected operational logic and validation steps when shipment with consignee chop code and destination station number.
Trigger Criteria:
Context: A shipment with consignee CHOP code and destination station number
Applied to: Customer Bonded Siding Determination - Determine if consignee has bonded siding using RF table lookup with consignee CHOP and station
Action: The system performs RF table lookup using consignee CHOP and destination station
Logic Flow:
IF A shipment with consignee CHOP code and destination station number
AND The system performs RF table lookup using consignee CHOP and destination station
THEN:
• The system sets customer bonded indicator to TRUE if RF record is found, otherwise sets it to FALSE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when request to lookup rf table data.
Trigger Criteria:
Context: A request to lookup RF table data
Applied to: Initialize RF Table Lookup Parameters
Action: The system initializes RF table lookup parameters
Logic Flow:
IF A request to lookup RF table data
AND The system initializes RF table lookup parameters
THEN:
• All lookup parameters are cleared and function code is set to 'GU' for table retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment root data containing consignee chop code.
Trigger Criteria:
Context: Shipment root data containing consignee CHOP code
Applied to: Set Consignee CHOP from Shipment Root
Action: The system prepares RF table lookup parameters
Logic Flow:
IF Shipment root data containing consignee CHOP code
AND The system prepares RF table lookup parameters
THEN:
• The consignee CHOP code from shipment root is assigned to the RF table lookup key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs cargo data with destination station number.
Trigger Criteria:
Context: Customs cargo data with destination station number
Applied to: Set Destination Station Number
Action: The system prepares RF table lookup parameters
Logic Flow:
IF Customs cargo data with destination station number
AND The system prepares RF table lookup parameters
THEN:
• The destination station number is assigned to the RF table lookup key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when requirement to lookup rail facility data.
Trigger Criteria:
Context: A requirement to lookup rail facility data
Applied to: Set Table ID to 'RF'
Action: The system sets up table lookup parameters
Logic Flow:
IF A requirement to lookup rail facility data
AND The system sets up table lookup parameters
THEN:
• The table ID is set to 'RF' to identify the Rail Facility table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when rf table lookup parameters with consignee chop, destination station, and table id 'rf'. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: RF table lookup parameters with consignee CHOP, destination station, and table ID 'RF'
Applied to: Call RF Table Lookup
Action: The system calls the table lookup function
Logic Flow:
IF RF table lookup parameters with consignee CHOP, destination station, and table ID 'RF'
AND The system calls the table lookup function
THEN:
• The system attempts to retrieve matching RF table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when successful rf table lookup with retrieved record data.
Trigger Criteria:
Context: A successful RF table lookup with retrieved record data
Applied to: Extract Sub-location Code from RF Record
Action: The system processes the RF table record
Logic Flow:
IF A successful RF table lookup with retrieved record data
AND The system processes the RF table record
THEN:
• The sub-location code is extracted from the RF record and assigned to customs cargo data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when successful rf table lookup that returns a matching record.
Trigger Criteria:
Context: A successful RF table lookup that returns a matching record
Applied to: Set Customer Bonded Indicator to TRUE
Action: The system processes the lookup result
Logic Flow:
IF A successful RF table lookup that returns a matching record
AND The system processes the lookup result
THEN:
• The customer bonded indicator is set to TRUE indicating the consignee has bonded siding
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when unsuccessful rf table lookup that returns no matching record.
Trigger Criteria:
Context: An unsuccessful RF table lookup that returns no matching record
Applied to: Set Customer Bonded Indicator to FALSE
Action: The system processes the lookup result
Logic Flow:
IF An unsuccessful RF table lookup that returns no matching record
AND The system processes the lookup result
THEN:
• The customer bonded indicator is set to FALSE indicating the consignee does not have bonded siding
R-GCCCCADD-cbl-01070 (+2)File: GCCCCADD.cblBusiness Rule: TOFC/COFC Conveying Car Default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has conveying car initial information already populated.
Trigger Criteria:
Context: A shipment has conveying car initial information already populated
Applied to: Use Existing Conveying Car Initial and Number
Action: The system processes conveying car information
Logic Flow:
IF A shipment has conveying car initial information already populated
AND The system processes conveying car information
THEN:
• The existing conveying car initial and number are retained and used
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has no conveying car initial information and the shipment type is tofc (t) or cofc (c).
Trigger Criteria:
Context: A shipment has no conveying car initial information AND the shipment type is TOFC (T) or COFC (C)
Applied to: Set Default Conveying Car Initial = 'UNKN' Number = '00000001'
Action: The system processes conveying car information
Logic Flow:
IF A shipment has no conveying car initial information AND the shipment type is TOFC (T) or COFC (C)
AND The system processes conveying car information
THEN:
• The conveying car initial is set to 'UNKN' AND the conveying car number is set to '00000001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has no conveying car initial information and the shipment type is neither tofc (t) nor cofc (c).
Trigger Criteria:
Context: A shipment has no conveying car initial information AND the shipment type is neither TOFC (T) nor COFC (C)
Applied to: Clear Conveying Car Information Set to Spaces
Action: The system processes conveying car information
Logic Flow:
IF A shipment has no conveying car initial information AND the shipment type is neither TOFC (T) nor COFC (C)
AND The system processes conveying car information
THEN:
• The conveying car initial and number fields are cleared and set to spaces
R-GCCCCADD-cbl-01073 (+5)File: GCCCCADD.cblBusiness Rule: Car ID Validation and Formatting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment record with conveying car information.
Trigger Criteria:
Context: A shipment record with conveying car information
Applied to: Conveying Car Initial Present?
Action: The system checks for conveying car initial data
Logic Flow:
IF A shipment record with conveying car information
AND The system checks for conveying car initial data
THEN:
• If conveying car initial is not empty, proceed to validation; otherwise skip car ID processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when conveying car initial is present.
Trigger Criteria:
Context: Conveying car initial is present
Applied to: Set Car Values for Validation
Action: The system prepares car data for validation
Logic Flow:
IF Conveying car initial is present
AND The system prepares car data for validation
THEN:
• Clear car validation fields and set both original and destination car values to the conveying car identifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when car values are prepared for validation. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Car values are prepared for validation
Applied to: Call GCCCARID Utility
Action: The system calls the GCCCARID validation utility
Logic Flow:
IF Car values are prepared for validation
AND The system calls the GCCCARID validation utility
THEN:
• The utility processes the car identification and returns validation results
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when car id validation has been performed.
Trigger Criteria:
Context: Car ID validation has been performed
Applied to: Validation Successful?
Action: The system checks the validation result
Logic Flow:
IF Car ID validation has been performed
AND The system checks the validation result
THEN:
• If destination car value contains all asterisks, validation failed; otherwise validation succeeded
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when car id validation was successful.
Trigger Criteria:
Context: Car ID validation was successful
Applied to: Update Car ID with Formatted Value
Action: The system updates the car identification
Logic Flow:
IF Car ID validation was successful
AND The system updates the car identification
THEN:
• Set the conveying car field to the validated destination car value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when car id validation failed.
Trigger Criteria:
Context: Car ID validation failed
Applied to: Generate Invalid Car Error Message
Action: The system processes the validation failure
Logic Flow:
IF Car ID validation failed
AND The system processes the validation failure
THEN:
• Generate an invalid conveying car error message using the original car value and add it to the message collection
R-GCCCCADD-cbl-01079 (+1)File: GCCCCADD.cblBusiness Rule: Previous Carrier Control Number Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment record with previous carrier number field.
Trigger Criteria:
Context: A shipment record with previous carrier number field
Applied to: Previous Carrier Number = '0000' or Spaces?
Action: The previous carrier number is '0000' or spaces
Logic Flow:
IF A shipment record with previous carrier number field
AND The previous carrier number is '0000' or spaces
THEN:
• The system continues processing without setting the previous carrier control number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment record with valid previous carrier number (not '0000' or spaces) and previous cargo control number.
Trigger Criteria:
Context: A shipment record with valid previous carrier number (not '0000' or spaces) and previous cargo control number
Applied to: Format Combined Previous CCN
Action: The system processes the previous carrier information
Logic Flow:
IF A shipment record with valid previous carrier number (not '0000' or spaces) and previous cargo control number
AND The system processes the previous carrier information
THEN:
• The system combines the previous carrier number (positions 1-4) with the previous cargo control number (positions 5-21) and stores the result in the previous carrier control number field
R-GCCCCADD-cbl-01081 (+3)File: GCCCCADD.cblBusiness Rule: Load/Empty Status Quantity Qualifier Setting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when equipment load/empty status is available from shipment data.
Trigger Criteria:
Context: Equipment load/empty status is available from shipment data
Applied to: Set Quantity Qualifier to 'UNT' Units
Action: Equipment status equals 'E' indicating empty equipment
Logic Flow:
IF Equipment load/empty status is available from shipment data
AND Equipment status equals 'E' indicating empty equipment
THEN:
• Quantity qualifier is set to 'UNT' for units measurement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when equipment is loaded (not empty) and current quantity qualifier exists.
Trigger Criteria:
Context: Equipment is loaded (not empty) and current quantity qualifier exists
Applied to: Set Quantity Qualifier to 'PCS' Pieces
Action: Current quantity qualifier equals 'C/L' or 'CLD' or 'CL ' or ' CL' indicating carload types
Logic Flow:
IF Equipment is loaded (not empty) and current quantity qualifier exists
AND Current quantity qualifier equals 'C/L' or 'CLD' or 'CL ' or ' CL' indicating carload types
THEN:
• Quantity qualifier is set to 'PCS' for pieces measurement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when quantity qualifier has been determined for the shipment.
Trigger Criteria:
Context: A quantity qualifier has been determined for the shipment
Applied to: Validate Quantity Qualifier Against MU Table
Action: The quantity qualifier is looked up in the MU (Measurement Unit) table
Logic Flow:
IF A quantity qualifier has been determined for the shipment
AND The quantity qualifier is looked up in the MU (Measurement Unit) table
THEN:
• If qualifier is not found in MU table, generate error message indicating qualifier is not valid
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment processing requires a quantity qualifier.
Trigger Criteria:
Context: Shipment processing requires a quantity qualifier
Applied to: Validate Quantity Qualifier Against MU Table
Action: Quantity qualifier is blank or spaces
Logic Flow:
IF Shipment processing requires a quantity qualifier
AND Quantity qualifier is blank or spaces
THEN:
• Generate error message indicating quantity qualifier is required
Business Justification: Dictates the expected operational logic and validation steps when shipment record is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment record is being processed for customs manifest creation
Applied to: Set Shipper Address 1 to 'NA'
Action: The shipper address line 1 field is empty or contains only spaces
Logic Flow:
IF A shipment record is being processed for customs manifest creation
AND The shipper address line 1 field is empty or contains only spaces
THEN:
• The system shall set the shipper address line 1 to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment record is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment record is being processed for customs manifest creation
Applied to: Set Consignee Address 1 to 'NA'
Action: The consignee address line 1 field is empty or contains only spaces
Logic Flow:
IF A shipment record is being processed for customs manifest creation
AND The consignee address line 1 field is empty or contains only spaces
THEN:
• The system shall set the consignee address line 1 to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment record is being processed and shipper address line 2 exists.
Trigger Criteria:
Context: A shipment record is being processed and shipper address line 2 exists
Applied to: Set Shipper Address 2 to 'NA' and Country to 'US'
Action: The shipper address line 2 is empty OR (the first character is not empty AND characters 2-18 are all spaces)
Logic Flow:
IF A shipment record is being processed and shipper address line 2 exists
AND The shipper address line 2 is empty OR (the first character is not empty AND characters 2-18 are all spaces)
THEN:
• The system shall set shipper address line 2 positions 1-18 to 'NA' and set shipper country code to 'US'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record is being processed and consignee address line 2 exists.
Trigger Criteria:
Context: A shipment record is being processed and consignee address line 2 exists
Applied to: Set Consignee Address 2 to 'NA' and Country to 'CA'
Action: The consignee address line 2 is empty OR (the first character is not empty AND characters 2-18 are all spaces)
Logic Flow:
IF A shipment record is being processed and consignee address line 2 exists
AND The consignee address line 2 is empty OR (the first character is not empty AND characters 2-18 are all spaces)
THEN:
• The system shall set consignee address line 2 positions 1-18 to 'NA' and set consignee country code to 'CA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n1 entity segment is being processed for customs record creation.
Trigger Criteria:
Context: An N1 entity segment is being processed for customs record creation
Applied to: Set Entity Address to 'NA'
Action: The entity address line 1 field is empty or contains only spaces
Logic Flow:
IF An N1 entity segment is being processed for customs record creation
AND The entity address line 1 field is empty or contains only spaces
THEN:
• The system shall set the entity address line 1 to 'NA'
R-GCCCCADD-cbl-01099 (+5)File: GCCCCADD.cblBusiness Rule: Country Code Assignment from State
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper address exists with a state/province code.
Trigger Criteria:
Context: A shipper address exists with a state/province code
Applied to: Get Shipper State/Province Code
Action: The system looks up the state/province code in the state-country reference table
Logic Flow:
IF A shipper address exists with a state/province code
AND The system looks up the state/province code in the state-country reference table
THEN:
• The corresponding country code is assigned to the shipper
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipper address is spaces or shipper address has only first character and remaining 17 characters are spaces.
Trigger Criteria:
Context: Shipper address is spaces OR shipper address has only first character and remaining 17 characters are spaces
Applied to: Set Default US Country Code for Shipper
Action: The system processes shipper address information
Logic Flow:
IF Shipper address is spaces OR shipper address has only first character and remaining 17 characters are spaces
AND The system processes shipper address information
THEN:
• The shipper country code is set to 'US'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper has a state/province code that is not spaces.
Trigger Criteria:
Context: A shipper has a state/province code that is not spaces
Applied to: Generate Invalid State Error Message
Action: The state/province code is not found in the state-country lookup table
Logic Flow:
IF A shipper has a state/province code that is not spaces
AND The state/province code is not found in the state-country lookup table
THEN:
• An invalid shipper province/state code error message is generated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee address exists with a state/province code.
Trigger Criteria:
Context: A consignee address exists with a state/province code
Applied to: Get Consignee State/Province Code
Action: The system looks up the state/province code in the state-country reference table
Logic Flow:
IF A consignee address exists with a state/province code
AND The system looks up the state/province code in the state-country reference table
THEN:
• The corresponding country code is assigned to the consignee
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when consignee address is spaces or consignee address has only first character and remaining 17 characters are spaces.
Trigger Criteria:
Context: Consignee address is spaces OR consignee address has only first character and remaining 17 characters are spaces
Applied to: Set Default CA Country Code for Consignee
Action: The system processes consignee address information
Logic Flow:
IF Consignee address is spaces OR consignee address has only first character and remaining 17 characters are spaces
AND The system processes consignee address information
THEN:
• The consignee country code is set to 'CA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee has a state/province code that is not spaces.
Trigger Criteria:
Context: A consignee has a state/province code that is not spaces
Applied to: Generate Invalid State Error Message
Action: The state/province code is not found in the state-country lookup table
Logic Flow:
IF A consignee has a state/province code that is not spaces
AND The state/province code is not found in the state-country lookup table
THEN:
• An invalid consignee province/state code error message is generated
R-GCCCCADD-cbl-01105 (+4)File: GCCCCADD.cblBusiness Rule: Notify Party Information Inheritance
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment record contains consignee data with name and address information.
Trigger Criteria:
Context: A shipment record contains consignee data with name and address information
Applied to: Extract Notify Party Name from Shipment Data
Action: The notify party name field is extracted from the consignee data and is not blank
Logic Flow:
IF A shipment record contains consignee data with name and address information
AND The notify party name field is extracted from the consignee data and is not blank
THEN:
• The notify party address line 1, address line 2, and country code are automatically populated with the corresponding consignee address information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment record has been processed and consignee information has been extracted.
Trigger Criteria:
Context: A shipment record has been processed and consignee information has been extracted
Applied to: Notify Party Name Exists?
Action: The system evaluates the notify party name field from the consignee data
Logic Flow:
IF A shipment record has been processed and consignee information has been extracted
AND The system evaluates the notify party name field from the consignee data
THEN:
• If the notify party name is not blank, the system proceeds with address inheritance, otherwise it skips the notify party address setup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when notify party name exists and consignee address line 1 is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A notify party name exists and consignee address line 1 is available
Applied to: Copy Consignee Address Line 1 to Notify Party Address Line 1
Action: The system processes notify party address inheritance
Logic Flow:
IF A notify party name exists and consignee address line 1 is available
AND The system processes notify party address inheritance
THEN:
• The consignee's address line 1 is copied to the notify party's address line 1 field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when notify party name exists and consignee address line 2 is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A notify party name exists and consignee address line 2 is available
Applied to: Copy Consignee Address Line 2 to Notify Party Address Line 2
Action: The system processes notify party address inheritance
Logic Flow:
IF A notify party name exists and consignee address line 2 is available
AND The system processes notify party address inheritance
THEN:
• The consignee's address line 2 is copied to the notify party's address line 2 field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when notify party name exists and consignee country code is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A notify party name exists and consignee country code is available
Applied to: Copy Consignee Country Code to Notify Party Country Code
Action: The system processes notify party address inheritance
Logic Flow:
IF A notify party name exists and consignee country code is available
AND The system processes notify party address inheritance
THEN:
• The consignee's country code is copied to the notify party's country code field
R-GCCCCADD-cbl-01110 (+6)File: GCCCCADD.cblBusiness Rule: Special Handling Code Description Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment has special handling codes in positions 1 through 7.
Trigger Criteria:
Context: A shipment has special handling codes in positions 1 through 7
Applied to: Get Special Handling Code at Counter Position
Action: The system processes each special handling code position
Logic Flow:
IF A shipment has special handling codes in positions 1 through 7
AND The system processes each special handling code position
THEN:
• The system should extract the special handling code and instruction for each position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling code exists at a specific position.
Trigger Criteria:
Context: A special handling code exists at a specific position
Applied to: Code = 'VA' or 'EV' or 'VS'?
Action: The code is VA, EV, or VS
Logic Flow:
IF A special handling code exists at a specific position
AND The code is VA, EV, or VS
THEN:
• The system should process the code and its associated instruction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid special handling code (va, ev, or vs) is identified.
Trigger Criteria:
Context: A valid special handling code (VA, EV, or VS) is identified
Applied to: Extract Code and Instruction
Action: The system processes the code
Logic Flow:
IF A valid special handling code (VA, EV, or VS) is identified
AND The system processes the code
THEN:
• The system should extract both the code and its instruction into working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when special handling code and instruction have been extracted.
Trigger Criteria:
Context: Special handling code and instruction have been extracted
Applied to: First Special Handling Slot Empty?
Action: The first special handling slot is empty
Logic Flow:
IF Special handling code and instruction have been extracted
AND The first special handling slot is empty
THEN:
• The system should store the code and instruction in the first slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling code and instruction have been extracted and the first slot is occupied.
Trigger Criteria:
Context: Special handling code and instruction have been extracted and the first slot is occupied
Applied to: Second Special Handling Slot Empty?
Action: The second special handling slot is empty
Logic Flow:
IF Special handling code and instruction have been extracted and the first slot is occupied
AND The second special handling slot is empty
THEN:
• The system should store the code and instruction in the second slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when special handling code and instruction have been extracted and both first and second slots are occupied.
Trigger Criteria:
Context: Special handling code and instruction have been extracted and both first and second slots are occupied
Applied to: Store in Third Special Handling Slot
Action: The system needs to store the information
Logic Flow:
IF Special handling code and instruction have been extracted and both first and second slots are occupied
AND The system needs to store the information
THEN:
• The system should store the code and instruction in the third slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system is processing special handling codes.
Trigger Criteria:
Context: The system is processing special handling codes
Applied to: Counter <= 7?
Action: The counter is less than or equal to 7
Logic Flow:
IF The system is processing special handling codes
AND The counter is less than or equal to 7
THEN:
• The system should continue processing the next special handling code position
Business Justification: Establishes the required business protocol to be followed when edi bol has been processed and ccn array data is available.
Trigger Criteria:
Context: An EDI BOL has been processed and CCN array data is available
Applied to: Check CCN Array from EDI BOL
Action: The system checks the CCN array table from GCWCBOL
Logic Flow:
IF An EDI BOL has been processed and CCN array data is available
AND The system checks the CCN array table from GCWCBOL
THEN:
• The system determines if the CCN array contains valid data or is empty/low-values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ccn array has been validated.
Trigger Criteria:
Context: The CCN array has been validated
Applied to: CCN Array Contains Data?
Action: The CCN array is spaces or low-values
Logic Flow:
IF The CCN array has been validated
AND The CCN array is spaces or low-values
THEN:
• Continue with normal processing without multiple CCN creation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ccn array contains valid data.
Trigger Criteria:
Context: The CCN array contains valid data
Applied to: Initialize CCN Index Counter
Action: Multiple CCN processing is required
Logic Flow:
IF The CCN array contains valid data
AND Multiple CCN processing is required
THEN:
• Initialize the CCN index counter to 1 for array iteration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ccn processing loop is active with current index position.
Trigger Criteria:
Context: CCN processing loop is active with current index position
Applied to: More CCNs to Process?
Action: The index is greater than 99 or the current CCN entry is spaces
Logic Flow:
IF CCN processing loop is active with current index position
AND The index is greater than 99 or the current CCN entry is spaces
THEN:
• Exit the CCN processing loop
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid ccn index position within the array bounds.
Trigger Criteria:
Context: A valid CCN index position within the array bounds
Applied to: Extract Current CCN from Array
Action: Processing the current CCN entry
Logic Flow:
IF A valid CCN index position within the array bounds
AND Processing the current CCN entry
THEN:
• Extract the CCN value from GCWCBOL-CCN array at the current index
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ccn is being processed for manifest creation.
Trigger Criteria:
Context: A CCN is being processed for manifest creation
Applied to: Set Waybill Key for Spawn & Set Waybill Date for Spawn
Action: Preparing the spawn message parameters
Logic Flow:
IF A CCN is being processed for manifest creation
AND Preparing the spawn message parameters
THEN:
• Set the spawn waybill key to the input waybill key from GCWCCADD
• Set the spawn waybill date to the working storage waybill date
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ccn has been extracted from the array.
Trigger Criteria:
Context: A CCN has been extracted from the array
Applied to: Set Current CCN for Spawn
Action: Preparing the spawn message parameters
Logic Flow:
IF A CCN has been extracted from the array
AND Preparing the spawn message parameters
THEN:
• Set the spawn CCN to the current CCN from the array at the current index
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when spawn message is being prepared for ccn processing.
Trigger Criteria:
Context: A spawn message is being prepared for CCN processing
Applied to: Set Action Code to 'AM'
Action: Setting the action code parameter
Logic Flow:
IF A spawn message is being prepared for CCN processing
AND Setting the action code parameter
THEN:
• Set the spawn action code to 'AM' for manifest creation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all spawn message parameters are set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All spawn message parameters are set
Applied to: Spawn GCT0111E Program
Action: Invoking the manifest creation process
Logic Flow:
IF All spawn message parameters are set
AND Invoking the manifest creation process
THEN:
• Call the Z700-SPAWN-GCT0111E procedure to execute the manifest creation program
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ccn has been processed successfully.
Trigger Criteria:
Context: A CCN has been processed successfully
Applied to: Increment CCN Index
Action: Moving to the next CCN in the array
Logic Flow:
IF A CCN has been processed successfully
AND Moving to the next CCN in the array
THEN:
• Increment the CCN index counter by 1
R-GCCCCADD-cbl-01139 (+7)File: GCCCCADD.cblBusiness Rule: CSA Indicator Management with AU Data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment is being processed for customs manifest creation
Applied to: CSA Indicator Already On?
Action: The CSA indicator is already set to ON
Logic Flow:
IF A shipment is being processed for customs manifest creation
AND The CSA indicator is already set to ON
THEN:
• Skip all CSA indicator management processing and continue with normal manifest creation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment is being processed and csa indicator is not already on.
Trigger Criteria:
Context: A shipment is being processed and CSA indicator is not already on
Applied to: AU Table Data Available?
Action: AU table data is not available or accessible
Logic Flow:
IF A shipment is being processed and CSA indicator is not already on
AND AU table data is not available or accessible
THEN:
• Skip CSA indicator management and continue with normal processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment is being processed with csa indicator off and au table data available.
Trigger Criteria:
Context: A shipment is being processed with CSA indicator off and AU table data available
Applied to: Importer Data Present?
Action: Importer data is already present in the manifest
Logic Flow:
IF A shipment is being processed with CSA indicator off and AU table data available
AND Importer data is already present in the manifest
THEN:
• Skip AU table importer data retrieval and continue with normal processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment is being processed with no existing importer data and au table data is available.
Trigger Criteria:
Context: A shipment is being processed with no existing importer data and AU table data is available
Applied to: Retrieve AU Table Importer Data
Action: The system needs to populate importer information
Logic Flow:
IF A shipment is being processed with no existing importer data and AU table data is available
AND The system needs to populate importer information
THEN:
• Retrieve importer name and business number from the AU table using consignee chop and commodity code as lookup keys
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer data has been successfully retrieved from au table.
Trigger Criteria:
Context: Importer data has been successfully retrieved from AU table
Applied to: Set Importer Information from AU Table
Action: The system needs to populate importer information in the manifest
Logic Flow:
IF Importer data has been successfully retrieved from AU table
AND The system needs to populate importer information in the manifest
THEN:
• Set importer name from AU table importer field and business number from AU table business number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer information is being set from au table data.
Trigger Criteria:
Context: Importer information is being set from AU table data
Applied to: Set Business Number Qualifier to M5
Action: The business number qualifier needs to be assigned
Logic Flow:
IF Importer information is being set from AU table data
AND The business number qualifier needs to be assigned
THEN:
• Set the business number qualifier to 'M5' to indicate the source is from authorized user table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer information has been successfully set from au table data.
Trigger Criteria:
Context: Importer information has been successfully set from AU table data
Applied to: Turn CSA Indicator ON
Action: The CSA indicator status needs to be updated
Logic Flow:
IF Importer information has been successfully set from AU table data
AND The CSA indicator status needs to be updated
THEN:
• Set the CSA indicator to ON to indicate Canada-US Agreement processing is active
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when both au table importer data and edi bol importer data are found.
Trigger Criteria:
Context: Both AU table importer data and EDI BOL importer data are found
Applied to: Turn CSA Indicator OFF
Action: The business number qualifier is 'BN' or blank
Logic Flow:
IF Both AU table importer data and EDI BOL importer data are found
AND The business number qualifier is 'BN' or blank
THEN:
• Turn the CSA indicator OFF to deactivate Canada-US Agreement processing
R-GCCCCADD-cbl-01147 (+3)File: GCCCCADD.cblBusiness Rule: Application Type and Transit Status Determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when origin station state code exists in the shipment data.
Trigger Criteria:
Context: An origin station state code exists in the shipment data
Applied to: Get Origin Country Code from State Lookup
Action: The system performs a lookup in the state-country table using the origin station state code
Logic Flow:
IF An origin station state code exists in the shipment data
AND The system performs a lookup in the state-country table using the origin station state code
THEN:
• The corresponding country code is retrieved and assigned as the origin country, or spaces if no match is found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when destination station state code exists in the shipment data.
Trigger Criteria:
Context: A destination station state code exists in the shipment data
Applied to: Get Destination Country Code from State Lookup
Action: The system performs a lookup in the state-country table using the destination station state code
Logic Flow:
IF A destination station state code exists in the shipment data
AND The system performs a lookup in the state-country table using the destination station state code
THEN:
• The corresponding country code is retrieved and assigned as the destination country, or spaces if no match is found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when origin and destination country codes have been determined.
Trigger Criteria:
Context: Origin and destination country codes have been determined
Applied to: Search Application Type Table with Country Combinations
Action: The system searches the application type table using the country code combination
Logic Flow:
IF Origin and destination country codes have been determined
AND The system searches the application type table using the country code combination
THEN:
• If a matching combination is found, the corresponding application type and in-transit status are assigned; otherwise, both fields are set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when in-transit status is set to ocean and the ccn key starts with '6105e'.
Trigger Criteria:
Context: The in-transit status is set to ocean and the CCN key starts with '6105E'
Applied to: Is Ocean In-Transit and CCN starts with 6105E?
Action: The system evaluates the ocean in-transit status and CCN prefix combination
Logic Flow:
IF The in-transit status is set to ocean and the CCN key starts with '6105E'
AND The system evaluates the ocean in-transit status and CCN prefix combination
THEN:
• The broker name is automatically set to 'NOT-REQ' without further broker processing
R-GCCCCADD-cbl-01151 (+4)File: GCCCCADD.cblBusiness Rule: Return Transit Origin Station Override
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with an action code.
Trigger Criteria:
Context: A shipment with an action code
Applied to: Check Action Code
Action: The action code is evaluated for return transit processing
Logic Flow:
IF A shipment with an action code
AND The action code is evaluated for return transit processing
THEN:
• The system should identify RT action codes for special return transit handling
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with action code rt.
Trigger Criteria:
Context: A shipment with action code RT
Applied to: Set In-Transit Status to Return
Action: The return transit processing is initiated
Logic Flow:
IF A shipment with action code RT
AND The return transit processing is initiated
THEN:
• The in-transit status should be set to RETURN and application type should be set to 33
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when return transit shipment with action code rt.
Trigger Criteria:
Context: A return transit shipment with action code RT
Applied to: Clear Destination Station Numbers
Action: The return transit status is being configured
Logic Flow:
IF A return transit shipment with action code RT
AND The return transit status is being configured
THEN:
• The destination station number index and error/release status index should be cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when return transit shipment with a manifest from station name.
Trigger Criteria:
Context: A return transit shipment with a manifest from station name
Applied to: Search Port City State Table
Action: The system searches the GCSPORTS port city state table
Logic Flow:
IF A return transit shipment with a manifest from station name
AND The system searches the GCSPORTS port city state table
THEN:
• The system should look for a port entry that matches the manifest from station name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when return transit shipment where the manifest from station name matches a port in the gcsports table.
Trigger Criteria:
Context: A return transit shipment where the manifest from station name matches a port in the GCSPORTS table
Applied to: Override Origin Station Name with Port City
Action: The port lookup is successful
Logic Flow:
IF A return transit shipment where the manifest from station name matches a port in the GCSPORTS table
AND The port lookup is successful
THEN:
• The origin station name should be overridden with the port city and the origin station state code should be overridden with the port state from the table
Business Justification: Ensures correct system behavior and process compliance when shipment is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment is being processed for customs manifest creation
Applied to: Check Shipment Status
Action: The shipment has in-transit status of either TRANSIT or RETURN and the CSA indicator is currently ON
Logic Flow:
IF A shipment is being processed for customs manifest creation
AND The shipment has in-transit status of either TRANSIT or RETURN and the CSA indicator is currently ON
THEN:
• The system should reset the CSA indicator to OFF, clear the importer name, clear the business number qualifier, clear the business number, and set the AU importer flag to not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has in-transit status of transit or return and csa indicator is on.
Trigger Criteria:
Context: A shipment has in-transit status of TRANSIT or RETURN and CSA indicator is ON
Applied to: Clear Importer Name
Action: The system processes the importer data clearing logic
Logic Flow:
IF A shipment has in-transit status of TRANSIT or RETURN and CSA indicator is ON
AND The system processes the importer data clearing logic
THEN:
• The importer name field should be set to spaces, the business number qualifier should be set to spaces, and the business number should be set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when transit or return shipment with csa indicator on is being processed.
Trigger Criteria:
Context: A transit or return shipment with CSA indicator ON is being processed
Applied to: Set AU Importer Flag to Not Found
Action: The importer data clearing process is executed
Logic Flow:
IF A transit or return shipment with CSA indicator ON is being processed
AND The importer data clearing process is executed
THEN:
• The AU importer found flag should be set to NOT FOUND status
R-GCCCCADD-cbl-01159 (+2)File: GCCCCADD.cblBusiness Rule: Customer Bonded Indicator Reset for Transit
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment has been processed and classified with an in-transit status.
Trigger Criteria:
Context: A shipment has been processed and classified with an in-transit status
Applied to: Reset Customer Bonded Indicator to Spaces & Reset Sub-location Code to Spaces
Action: The shipment status is either in-transit or return movement
Logic Flow:
IF A shipment has been processed and classified with an in-transit status
AND The shipment status is either in-transit or return movement
THEN:
• The customer bonded indicator should be reset to spaces (cleared)
• The sub-location code should be reset to spaces (cleared)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment is not classified as in-transit or return movement.
Trigger Criteria:
Context: A shipment is not classified as in-transit or return movement
Applied to: Keep Current Settings
Action: The sub-location error flag is set indicating an invalid sub-location code
Logic Flow:
IF A shipment is not classified as in-transit or return movement
AND The sub-location error flag is set indicating an invalid sub-location code
THEN:
• An error message for invalid destination station sub-location code should be added to the message list
Business Justification: Ensures correct system behavior and process compliance when edi bol contains sf stuffer entity data with entity name pn type.
Trigger Criteria:
Context: An EDI BOL contains SF stuffer entity data with entity name PN type
Applied to: Build SF Stuffer Entity Segments
Action: Processing SF entity segments from EBSNRSC data source
Logic Flow:
IF An EDI BOL contains SF stuffer entity data with entity name PN type
AND Processing SF entity segments from EBSNRSC data source
THEN:
• Extract entity name, address information from PA type, city/state/postal/country from PC type, and contact information from GP type, then create SF entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol contains uc ultimate consignee entity data with entity name un type.
Trigger Criteria:
Context: An EDI BOL contains UC ultimate consignee entity data with entity name UN type
Applied to: Build UC Ultimate Consignee Segments
Action: Processing UC entity segments from EBSNRSC data source
Logic Flow:
IF An EDI BOL contains UC ultimate consignee entity data with entity name UN type
AND Processing UC entity segments from EBSNRSC data source
THEN:
• Extract entity name, address information from UA type, city/state/postal/country from UC type, and contact information from GP type, then create UC entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol contains bn beneficial owner entity data and tn transportation data exists.
Trigger Criteria:
Context: An EDI BOL contains BN beneficial owner entity data and TN transportation data exists
Applied to: Build BN Beneficial Owner Segments
Action: Processing BN entity segments from EBSNRSC and EBSNRTD data sources
Logic Flow:
IF An EDI BOL contains BN beneficial owner entity data and TN transportation data exists
AND Processing BN entity segments from EBSNRSC and EBSNRTD data sources
THEN:
• Extract entity name from BN type, address information from BT type, city/state/postal/country from BY type, set consignee chop code, and create BN entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when transportation data exists in ebsnrtd with c1 organization id or fastway consignee data code equals 'c'.
Trigger Criteria:
Context: Transportation data exists in EBSNRTD with C1 organization ID or Fastway consignee data code equals 'C'
Applied to: Build C1 Carrier Entity Segments
Action: Processing C1 entity segments from EBSNRTD or SHIPROOT data sources
Logic Flow:
IF Transportation data exists in EBSNRTD with C1 organization ID or Fastway consignee data code equals 'C'
AND Processing C1 entity segments from EBSNRTD or SHIPROOT data sources
THEN:
• If EBSNRTD data found, extract entity name from TN type, address from T2 type, city/state/postal/country from TA type, and contact from T3 type; otherwise use Fastway consignee data with parsed address information and create C1 entity record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation data exists in ebsnrtd with n1 organization id.
Trigger Criteria:
Context: Transportation data exists in EBSNRTD with N1 organization ID
Applied to: Build N1 Notify Party Segments
Action: Processing N1 entity segments from EBSNRTD data source
Logic Flow:
IF Transportation data exists in EBSNRTD with N1 organization ID
AND Processing N1 entity segments from EBSNRTD data source
THEN:
• Extract entity name from TN type, address information from T2 type, city/state/postal/country from TA type, and contact information from T3 type, then create N1 entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mcoa data exists in ebsmcoa with organization id equals 'pf' or 'ss'.
Trigger Criteria:
Context: MCOA data exists in EBSMCOA with organization ID equals 'PF' or 'SS'
Applied to: Build PF/SS MCOA Entity Segments
Action: Processing PF/SS entity segments from EBSMCOA data source
Logic Flow:
IF MCOA data exists in EBSMCOA with organization ID equals 'PF' or 'SS'
AND Processing PF/SS entity segments from EBSMCOA data source
THEN:
• Extract entity name, ID code qualifier, and ID code from OT type, address information from ON type, city/state/postal/country from OC type, then create PF or SS entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation data exists in ebsnrtd with 11 organization id.
Trigger Criteria:
Context: Transportation data exists in EBSNRTD with 11 organization ID
Applied to: Build 11 Entity Segments
Action: Processing 11 entity segments from EBSNRTD data source
Logic Flow:
IF Transportation data exists in EBSNRTD with 11 organization ID
AND Processing 11 entity segments from EBSNRTD data source
THEN:
• Extract entity name from TN type, address information from T2 type, city/state/postal/country from TA type, and contact information from T3 type, then create 11 entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol contains nn named entity data with valid entity id codes.
Trigger Criteria:
Context: EDI BOL contains NN named entity data with valid entity ID codes
Applied to: Build NN Entity Segments
Action: Processing NN entity segments from EBSNRSC data source and entity ID is valid
Logic Flow:
IF EDI BOL contains NN named entity data with valid entity ID codes
AND Processing NN entity segments from EBSNRSC data source and entity ID is valid
THEN:
• Extract entity name and consignee chop code, address information from GC type, city/state/postal/country from GA type, then create NN entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation data exists in ebsnrtd with mc organization id.
Trigger Criteria:
Context: Transportation data exists in EBSNRTD with MC organization ID
Applied to: Build MC Entity Segments
Action: Processing MC entity segments from EBSNRTD data source
Logic Flow:
IF Transportation data exists in EBSNRTD with MC organization ID
AND Processing MC entity segments from EBSNRTD data source
THEN:
• Extract entity name from TN type, address information from T2 type, city/state/postal/country from TA type, and contact information from T3 type, then create MC entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation data exists in ebsnrtd with oo organization id.
Trigger Criteria:
Context: Transportation data exists in EBSNRTD with OO organization ID
Applied to: Build OO Entity Segments
Action: Processing OO entity segments from EBSNRTD data source
Logic Flow:
IF Transportation data exists in EBSNRTD with OO organization ID
AND Processing OO entity segments from EBSNRTD data source
THEN:
• Extract entity name from TN type, address information from T2 type, city/state/postal/country from TA type, and contact information from T3 type, then create OO entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation data exists in ebsnrtd with fw organization id.
Trigger Criteria:
Context: Transportation data exists in EBSNRTD with FW organization ID
Applied to: Build FW Entity Segments
Action: Processing FW entity segments from EBSNRTD data source
Logic Flow:
IF Transportation data exists in EBSNRTD with FW organization ID
AND Processing FW entity segments from EBSNRTD data source
THEN:
• Extract entity name from TN type, address information from T2 type, city/state/postal/country from TA type, and contact information from T3 type, then create FW entity record with default 'NA' address if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol contains im importer entity data or au table contains importer information and no existing importer record found in sequence 55.
Trigger Criteria:
Context: EDI BOL contains IM importer entity data or AU table contains importer information and no existing importer record found in sequence 55
Applied to: Build IM Importer Segments
Action: Processing IM entity segments from EBSNRSC or AU table data sources
Logic Flow:
IF EDI BOL contains IM importer entity data or AU table contains importer information and no existing importer record found in sequence 55
AND Processing IM entity segments from EBSNRSC or AU table data sources
THEN:
• If EDI data exists, extract importer name, business number qualifier, business number, address, and contact information; if only AU table data exists, create importer record from AU table with business number qualifier 'M5' and set CSA indicator on; if both AU and sequence 55 importer found with business number qualifier 'BN' or blank, turn CSA indicator off
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record is being created and address information is blank or spaces.
Trigger Criteria:
Context: An entity record is being created and address information is blank or spaces
Applied to: Set Default Address Values
Action: Processing any entity segment address data
Logic Flow:
IF An entity record is being created and address information is blank or spaces
AND Processing any entity segment address data
THEN:
• Set address line 1 to 'NA' if blank and leave address line 2 as spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity record contains state or province code information.
Trigger Criteria:
Context: An entity record contains state or province code information
Applied to: Assign Country Codes
Action: Processing entity address information from Fastway data
Logic Flow:
IF An entity record contains state or province code information
AND Processing entity address information from Fastway data
THEN:
• Search state-country lookup table to find matching state/province code and assign corresponding country code to entity record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity record is ready for insertion and current sequence index is within maximum sequence limit.
Trigger Criteria:
Context: An entity record is ready for insertion and current sequence index is within maximum sequence limit
Applied to: Insert Entity Record
Action: Inserting entity record into sequence 55 array
Logic Flow:
IF An entity record is ready for insertion and current sequence index is within maximum sequence limit
AND Inserting entity record into sequence 55 array
THEN:
• Assign CCN key, record type '55', current sequence index to entity record, store in array, and increment sequence index by 1
R-GCCCCADD-cbl-01526 (+8)File: GCCCCADD.cblBusiness Rule: Entity Data Population from EDI
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol key exists and entity type is specified.
Trigger Criteria:
Context: An EDI BOL key exists and entity type is specified
Applied to: Get EDI BOL Segment for Entity Type
Action: System attempts to retrieve entity segment data from EBSNRSC
Logic Flow:
IF An EDI BOL key exists and entity type is specified
AND System attempts to retrieve entity segment data from EBSNRSC
THEN:
• Entity segment data is retrieved if found, otherwise segment is marked as not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol n1 segment data is available.
Trigger Criteria:
Context: EDI BOL N1 segment data is available
Applied to: Extract Entity Name from N1 Segment
Action: System processes entity identification information
Logic Flow:
IF EDI BOL N1 segment data is available
AND System processes entity identification information
THEN:
• Entity ID code, name, ID code qualifier, and ID code are extracted and populated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity n1 segment has been processed and edi bol key exists.
Trigger Criteria:
Context: Entity N1 segment has been processed and EDI BOL key exists
Applied to: Get Address Segment N3
Action: System attempts to retrieve address segment data from EBSNRSA
Logic Flow:
IF Entity N1 segment has been processed and EDI BOL key exists
AND System attempts to retrieve address segment data from EBSNRSA
THEN:
• Address segment data is retrieved if found, otherwise address processing is skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol n3 address segment data is available.
Trigger Criteria:
Context: EDI BOL N3 address segment data is available
Applied to: Extract Address Line 1
Action: System processes address information
Logic Flow:
IF EDI BOL N3 address segment data is available
AND System processes address information
THEN:
• Address line 1 and address line 2 are extracted and populated in entity record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity address information has been processed and edi bol key exists.
Trigger Criteria:
Context: Entity address information has been processed and EDI BOL key exists
Applied to: Get City/State Segment N4
Action: System attempts to retrieve city/state segment data from EBSNRSA
Logic Flow:
IF Entity address information has been processed and EDI BOL key exists
AND System attempts to retrieve city/state segment data from EBSNRSA
THEN:
• City/state segment data is retrieved if found, otherwise geographic processing is skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol n4 city/state segment data is available.
Trigger Criteria:
Context: EDI BOL N4 city/state segment data is available
Applied to: Extract City Name
Action: System processes geographic information
Logic Flow:
IF EDI BOL N4 city/state segment data is available
AND System processes geographic information
THEN:
• City name, state/province code, postal code, and country code are extracted and populated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity geographic information has been processed and edi bol key exists.
Trigger Criteria:
Context: Entity geographic information has been processed and EDI BOL key exists
Applied to: Get Contact Segment PER
Action: System attempts to retrieve contact segment data from EBSNRSA or EBSNRTD
Logic Flow:
IF Entity geographic information has been processed and EDI BOL key exists
AND System attempts to retrieve contact segment data from EBSNRSA or EBSNRTD
THEN:
• Contact segment data is retrieved if found, otherwise contact processing is skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol per contact segment data is available.
Trigger Criteria:
Context: EDI BOL PER contact segment data is available
Applied to: Extract Contact Function Code
Action: System processes contact information
Logic Flow:
IF EDI BOL PER contact segment data is available
AND System processes contact information
THEN:
• Contact function code, person name, communication number qualifier, and communication number are extracted and populated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity address information is missing or empty spaces.
Trigger Criteria:
Context: Entity address information is missing or empty spaces
Applied to: Set Default Address if Missing
Action: System validates address completeness
Logic Flow:
IF Entity address information is missing or empty spaces
AND System validates address completeness
THEN:
• Address line 1 is set to 'NA' as default value
R-GCCCCADD-cbl-01535 (+7)File: GCCCCADD.cblBusiness Rule: Entity Data Population from Fastway
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data is not available for shipper entity and fastway shipment data exists.
Trigger Criteria:
Context: EDI BOL data is not available for shipper entity AND Fastway shipment data exists
Applied to: Populate Shipper from Fastway
Action: Building shipper record (sequence 0001) AND shipper entity type is required
Logic Flow:
IF EDI BOL data is not available for shipper entity AND Fastway shipment data exists
AND Building shipper record (sequence 0001) AND shipper entity type is required
THEN:
• Set entity ID to 'SH' AND populate shipper CHOP code from shipment root AND populate shipper name from shipment root AND set default address values for missing fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper address data from fastway shipment root is being processed.
Trigger Criteria:
Context: Shipper address data from Fastway shipment root is being processed
Applied to: Set Default Address Values
Action: Shipper address field 1 is spaces OR shipper address field 2 is spaces or has only first character with remaining spaces
Logic Flow:
IF Shipper address data from Fastway shipment root is being processed
AND Shipper address field 1 is spaces OR shipper address field 2 is spaces or has only first character with remaining spaces
THEN:
• Set shipper address field 1 to 'NA' when spaces AND set shipper address field 2 to 'NA' for first 18 characters when spaces or incomplete AND set shipper country code to 'US' when address field 2 is defaulted
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data is not available for consignee entity and fastway shipment data exists.
Trigger Criteria:
Context: EDI BOL data is not available for consignee entity AND Fastway shipment data exists
Applied to: Populate Consignee from Fastway
Action: Building consignee record (sequence 0002) AND consignee entity type is required
Logic Flow:
IF EDI BOL data is not available for consignee entity AND Fastway shipment data exists
AND Building consignee record (sequence 0002) AND consignee entity type is required
THEN:
• Set entity ID to 'CN' AND populate consignee CHOP code from shipment root AND populate consignee name from shipment root consignee data field 1 AND set default address values for missing fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when consignee address data from fastway shipment root is being processed.
Trigger Criteria:
Context: Consignee address data from Fastway shipment root is being processed
Applied to: Set Default Consignee Address
Action: Consignee address field 3 is spaces OR consignee address field 4 is spaces or has only first character with remaining spaces
Logic Flow:
IF Consignee address data from Fastway shipment root is being processed
AND Consignee address field 3 is spaces OR consignee address field 4 is spaces or has only first character with remaining spaces
THEN:
• Set consignee address field 1 to 'NA' when field 3 is spaces AND set consignee address field 2 to 'NA' for first 18 characters when field 4 is spaces or incomplete AND set consignee country code to 'CA' when address field 4 is defaulted
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address data exists in fastway format and address parsing is required for entity.
Trigger Criteria:
Context: Address data exists in Fastway format AND address parsing is required for entity
Applied to: Parse Address Components
Action: Processing address field 2 for shipper OR processing address field 4 for consignee OR processing carrier address data
Logic Flow:
IF Address data exists in Fastway format AND address parsing is required for entity
AND Processing address field 2 for shipper OR processing address field 4 for consignee OR processing carrier address data
THEN:
• Parse address into city name, state/province code, and postal code components AND lookup country code using state-country table based on state/province code AND set country code from lookup result
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when state or province code exists from parsed address data and state-country lookup table is available.
Trigger Criteria:
Context: State or province code exists from parsed address data AND state-country lookup table is available
Applied to: Lookup Country Code
Action: Country code determination is required for address validation
Logic Flow:
IF State or province code exists from parsed address data AND state-country lookup table is available
AND Country code determination is required for address validation
THEN:
• Search state-country table for matching state/province code AND set country code from table entry when match found AND set country code to spaces when no match found AND add error message when country code cannot be determined
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when carrier entity type (c1) is required and edi bol data is not available and fastway shipment data exists.
Trigger Criteria:
Context: Carrier entity type (C1) is required AND EDI BOL data is not available AND Fastway shipment data exists
Applied to: Populate Carrier from Fastway
Action: Building carrier record AND consignee data code field 2 equals 'C'
Logic Flow:
IF Carrier entity type (C1) is required AND EDI BOL data is not available AND Fastway shipment data exists
AND Building carrier record AND consignee data code field 2 equals 'C'
THEN:
• Set entity ID to 'C1' AND populate carrier name from consignee data field 2 AND populate carrier address from consignee data field 3 AND set carrier address to 'NA' when field 3 is spaces AND parse carrier address components for city, state, postal code, and country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity record is being built for shipper or consignee.
Trigger Criteria:
Context: Entity record is being built for shipper or consignee
Applied to: Set Default NA for Missing Address
Action: Shipper name is spaces OR consignee name is spaces
Logic Flow:
IF Entity record is being built for shipper or consignee
AND Shipper name is spaces OR consignee name is spaces
THEN:
• Add error message for invalid shipper name when shipper name is missing AND add error message for invalid consignee name when consignee name is missing
Business Justification: Governs the functional prerequisites and system routing when shipper record is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipper record is being processed for customs manifest creation
Applied to: Set Shipper Address 1 to 'NA'
Action: The shipper address line 1 field is empty or contains only spaces
Logic Flow:
IF A shipper record is being processed for customs manifest creation
AND The shipper address line 1 field is empty or contains only spaces
THEN:
• The system assigns 'NA' as the default value for shipper address line 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper record is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipper record is being processed for customs manifest creation
Applied to: Set Shipper Address 2 to 'NA'
Action: The shipper address line 2 field is empty, contains only spaces, or has only the first character filled with remaining characters as spaces
Logic Flow:
IF A shipper record is being processed for customs manifest creation
AND The shipper address line 2 field is empty, contains only spaces, or has only the first character filled with remaining characters as spaces
THEN:
• The system assigns 'NA' as the default value for shipper address line 2 and sets country code to 'US'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record is being processed for customs manifest creation.
Trigger Criteria:
Context: A consignee record is being processed for customs manifest creation
Applied to: Set Consignee Address 1 to 'NA'
Action: The consignee address line 1 field is empty or contains only spaces
Logic Flow:
IF A consignee record is being processed for customs manifest creation
AND The consignee address line 1 field is empty or contains only spaces
THEN:
• The system assigns 'NA' as the default value for consignee address line 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record is being processed for customs manifest creation.
Trigger Criteria:
Context: A consignee record is being processed for customs manifest creation
Applied to: Set Consignee Address 2 to 'NA'
Action: The consignee address line 2 field is empty, contains only spaces, or has only the first character filled with remaining characters as spaces
Logic Flow:
IF A consignee record is being processed for customs manifest creation
AND The consignee address line 2 field is empty, contains only spaces, or has only the first character filled with remaining characters as spaces
THEN:
• The system assigns 'NA' as the default value for consignee address line 2 and sets country code to 'CA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record (sf, uc, bn, c1, n1, 11, mc, oo, fw) is being processed for customs manifest creation.
Trigger Criteria:
Context: An entity record (SF, UC, BN, C1, N1, 11, MC, OO, FW) is being processed for customs manifest creation
Applied to: Set Entity N301 Address to 'NA'
Action: The entity N301 address information field is empty or contains only spaces
Logic Flow:
IF An entity record (SF, UC, BN, C1, N1, 11, MC, OO, FW) is being processed for customs manifest creation
AND The entity N301 address information field is empty or contains only spaces
THEN:
• The system assigns 'NA' as the default value for the entity N301 address information field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer record is being processed for customs manifest creation.
Trigger Criteria:
Context: An importer record is being processed for customs manifest creation
Applied to: Set Importer Address to 'NA'
Action: The importer address information field is empty, contains only spaces, or contains low-values
Logic Flow:
IF An importer record is being processed for customs manifest creation
AND The importer address information field is empty, contains only spaces, or contains low-values
THEN:
• The system assigns 'NA' as the default value for the importer address information field
R-GCCCCADD-cbl-01549 (+6)File: GCCCCADD.cblBusiness Rule: Entity Country Code Assignment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity has a state or province code that needs country code assignment.
Trigger Criteria:
Context: An entity has a state or province code that needs country code assignment
Applied to: Entity has State/Province Code?
Action: The system processes the entity's location information
Logic Flow:
IF An entity has a state or province code that needs country code assignment
AND The system processes the entity's location information
THEN:
• The system should check if the entity has a valid state or province code before proceeding with country lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity has a state or province code requiring country assignment.
Trigger Criteria:
Context: An entity has a state or province code requiring country assignment
Applied to: Initialize State Search Index to 1
Action: The system begins the lookup process
Logic Flow:
IF An entity has a state or province code requiring country assignment
AND The system begins the lookup process
THEN:
• The system should set the search index to position 1 to start searching from the beginning of the state-country table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is searching through the state-country lookup table.
Trigger Criteria:
Context: The system is searching through the state-country lookup table
Applied to: State Code Matches Table Entry?
Action: The system compares the entity's state or province code with a table entry
Logic Flow:
IF The system is searching through the state-country lookup table
AND The system compares the entity's state or province code with a table entry
THEN:
• The system should determine if the state code exactly matches the current table entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when matching state or province code is found in the state-country lookup table.
Trigger Criteria:
Context: A matching state or province code is found in the state-country lookup table
Applied to: Assign Corresponding Country Code to Entity
Action: The system processes the matched entry
Logic Flow:
IF A matching state or province code is found in the state-country lookup table
AND The system processes the matched entry
THEN:
• The system should assign the corresponding country code from the table entry to the entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when current table entry does not match the entity's state or province code.
Trigger Criteria:
Context: The current table entry does not match the entity's state or province code
Applied to: More Table Entries to Check?
Action: The system evaluates the search progress
Logic Flow:
IF The current table entry does not match the entity's state or province code
AND The system evaluates the search progress
THEN:
• The system should check if there are more entries remaining in the state-country lookup table to examine
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when there are more entries to check in the state-country lookup table.
Trigger Criteria:
Context: There are more entries to check in the state-country lookup table
Applied to: Move to Next Table Entry
Action: The current entry does not match the entity's state or province code
Logic Flow:
IF There are more entries to check in the state-country lookup table
AND The current entry does not match the entity's state or province code
THEN:
• The system should increment the search index to move to the next table entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system has searched through all entries in the state-country lookup table.
Trigger Criteria:
Context: The system has searched through all entries in the state-country lookup table
Applied to: No Country Code Found - Leave Blank
Action: No matching state or province code is found
Logic Flow:
IF The system has searched through all entries in the state-country lookup table
AND No matching state or province code is found
THEN:
• The system should leave the entity's country code field blank or unassigned
R-GCCCCADD-cbl-01556 (+16)File: GCCCCADD.cblBusiness Rule: N1 Segment Data Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record is identified as shipper (sequence 1) or consignee (sequence 2).
Trigger Criteria:
Context: A record is identified as shipper (sequence 1) or consignee (sequence 2)
Applied to: Are all core fields empty?
Action: All core fields (name, address, city/state/postal, contact) are empty
Logic Flow:
IF A record is identified as shipper (sequence 1) or consignee (sequence 2)
AND All core fields (name, address, city/state/postal, contact) are empty
THEN:
• Generate required field errors for shipper name, consignee name, address, city, state, postal code, and country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when record has address data, city/state data, or contact data populated.
Trigger Criteria:
Context: A record has address data, city/state data, or contact data populated
Applied to: Entity ID or Name missing but other data present?
Action: Entity ID is missing or empty
Logic Flow:
IF A record has address data, city/state data, or contact data populated
AND Entity ID is missing or empty
THEN:
• Generate entity ID required error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when record has address data, city/state data, or contact data populated.
Trigger Criteria:
Context: A record has address data, city/state data, or contact data populated
Applied to: Entity ID or Name missing but other data present?
Action: Name is missing or empty
Logic Flow:
IF A record has address data, city/state data, or contact data populated
AND Name is missing or empty
THEN:
• Generate name required error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record has entity id populated.
Trigger Criteria:
Context: A record has entity ID populated
Applied to: Entity ID present but Name missing?
Action: Name field is missing or empty
Logic Flow:
IF A record has entity ID populated
AND Name field is missing or empty
THEN:
• Generate name required error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record has entity id populated.
Trigger Criteria:
Context: A record has entity ID populated
Applied to: Entity ID present but Address missing?
Action: Address information is missing or empty
Logic Flow:
IF A record has entity ID populated
AND Address information is missing or empty
THEN:
• Generate address required error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record sequence number is greater than 2.
Trigger Criteria:
Context: A record sequence number is greater than 2
Applied to: Entity ID invalid or restricted type?
Action: Entity ID is not in valid values list or is a restricted type (SH, CN, BN)
Logic Flow:
IF A record sequence number is greater than 2
AND Entity ID is not in valid values list or is a restricted type (SH, CN, BN)
THEN:
• Generate invalid entity ID value error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when record has city/state/postal data section populated.
Trigger Criteria:
Context: A record has city/state/postal data section populated
Applied to: City name missing?
Action: City name is missing or empty
Logic Flow:
IF A record has city/state/postal data section populated
AND City name is missing or empty
THEN:
• Generate city name required error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record has city name populated.
Trigger Criteria:
Context: A record has city name populated
Applied to: City name too short?
Action: City name length is less than 2 characters
Business Justification: Establishes the required business protocol to be followed when record has state/province code populated but country code is missing.
Trigger Criteria:
Context: A record has state/province code populated but country code is missing
Applied to: Auto-assign Country from State
Action: State/province code lookup is performed
Logic Flow:
IF A record has state/province code populated but country code is missing
AND State/province code lookup is performed
THEN:
• Assign corresponding country code from the state-country lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record has city/state/postal data populated.
Trigger Criteria:
Context: A record has city/state/postal data populated
Applied to: Country code missing?
Action: Country code is missing or empty after auto-assignment attempt
Logic Flow:
IF A record has city/state/postal data populated
AND Country code is missing or empty after auto-assignment attempt
THEN:
• Generate country code required error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record has contact name populated.
Trigger Criteria:
Context: A record has contact name populated
Applied to: Contact qualifier missing but name present?
Action: Contact communication qualifier is missing or empty
Logic Flow:
IF A record has contact name populated
AND Contact communication qualifier is missing or empty
Business Justification: Ensures correct system behavior and process compliance when record has contact communication qualifier populated.
Trigger Criteria:
Context: A record has contact communication qualifier populated
Applied to: Contact qualifier invalid?
Action: Contact qualifier is not spaces, 'FX', or 'TE'
Logic Flow:
IF A record has contact communication qualifier populated
AND Contact qualifier is not spaces, 'FX', or 'TE'
THEN:
• Generate invalid contact qualifier value error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record has contact communication qualifier or contact name populated.
Trigger Criteria:
Context: A record has contact communication qualifier or contact name populated
Applied to: Contact number missing but qualifier/name present?
Action: Contact communication number is missing or empty
Logic Flow:
IF A record has contact communication qualifier or contact name populated
AND Contact communication number is missing or empty
THEN:
• Generate contact number required error message
R-GCCCCADD-cbl-01573 (+4)File: GCCCCADD.cblBusiness Rule: Entity ID Value Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record segment contains address data, location data, or contact data.
Trigger Criteria:
Context: A record segment contains address data, location data, or contact data
Applied to: Entity ID Code Present?
Action: The entity identification code field is empty or spaces
Logic Flow:
IF A record segment contains address data, location data, or contact data
AND The entity identification code field is empty or spaces
THEN:
• Generate a required entity ID error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity identification code is present in the record.
Trigger Criteria:
Context: An entity identification code is present in the record
Applied to: Entity ID Code Present?
Action: The entity name field is empty or spaces
Logic Flow:
IF An entity identification code is present in the record
AND The entity name field is empty or spaces
THEN:
• Generate a required entity name error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when record is being validated for entity type compliance.
Trigger Criteria:
Context: A record is being validated for entity type compliance
Applied to: Skip Validation for Basic Records
Action: The record sequence number is 1 (shipper) or 2 (consignee)
Logic Flow:
IF A record is being validated for entity type compliance
AND The record sequence number is 1 (shipper) or 2 (consignee)
THEN:
• Skip the entity ID value validation and proceed to next validation step
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record sequence number is greater than 2 (extended entity record).
Trigger Criteria:
Context: A record sequence number is greater than 2 (extended entity record)
Applied to: Entity ID in Allowed Values?
Action: The entity identification code is present but not in the list of valid entity types
Logic Flow:
IF A record sequence number is greater than 2 (extended entity record)
AND The entity identification code is present but not in the list of valid entity types
THEN:
• Generate an invalid entity type error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when extended record (sequence > 2) contains an entity identification code.
Trigger Criteria:
Context: An extended record (sequence > 2) contains an entity identification code
Applied to: Entity ID is Shipper/Consignee/Broker?
Action: The entity type is shipper (SH), consignee (CN), or customs broker (CB)
Logic Flow:
IF An extended record (sequence > 2) contains an entity identification code
AND The entity type is shipper (SH), consignee (CN), or customs broker (CB)
THEN:
• Generate an invalid entity type error message as these types are reserved for specific record positions
R-GCCCCADD-cbl-01578File: GCCCCADD.cblBusiness Rule: Address Information Requirement Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity record is being processed with entity id and name fields.
Trigger Criteria:
Context: An entity record is being processed with entity ID and name fields
Applied to: Address Information Requirement Validation - Validate that address information is provided when entity ID and name are present
Action: The entity ID is not spaces AND the entity name is not spaces AND the address line 1 is spaces
Logic Flow:
IF An entity record is being processed with entity ID and name fields
AND The entity ID is not spaces AND the entity name is not spaces AND the address line 1 is spaces
THEN:
• The system generates an error message indicating that address information is required
R-GCCCCADD-cbl-01579 (+4)File: GCCCCADD.cblBusiness Rule: City Name Length Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when city name field is provided in the address information.
Trigger Criteria:
Context: A city name field is provided in the address information
Applied to: City Name Length Validation - Validate city name has minimum 2 character length requirement
Action: The system validates the city name length
Logic Flow:
IF A city name field is provided in the address information
AND The system validates the city name length
THEN:
• If the city name has fewer than 2 characters, generate a minimum length requirement error message and add it to the error queue
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n4 segment with city name field is being processed.
Trigger Criteria:
Context: An N4 segment with city name field is being processed
Applied to: City Name Present?
Action: The system checks for city name presence
Logic Flow:
IF An N4 segment with city name field is being processed
AND The system checks for city name presence
THEN:
• If city name is spaces, skip length validation and continue processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when city name field with potential trailing spaces.
Trigger Criteria:
Context: A city name field with potential trailing spaces
Applied to: Get Actual String Length
Action: The system calculates the actual string length
Logic Flow:
IF A city name field with potential trailing spaces
AND The system calculates the actual string length
THEN:
• Return the length excluding trailing spaces by iterating from the end until a non-space character is found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when city name that has fewer than 2 characters.
Trigger Criteria:
Context: A city name that has fewer than 2 characters
Applied to: Generate Min Length Error Message
Action: The minimum length validation fails
Logic Flow:
IF A city name that has fewer than 2 characters
AND The minimum length validation fails
THEN:
• Generate error message with code GCCS-E-GEN-MIN-LEN2-REQ indicating minimum 2 character length requirement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when validation error message has been generated.
Trigger Criteria:
Context: A validation error message has been generated
Applied to: Add Error to Message Queue
Action: The error needs to be recorded
Logic Flow:
IF A validation error message has been generated
AND The error needs to be recorded
THEN:
• Add the error message to the message queue if there are fewer than 10 messages already queued
R-GCCCCADD-cbl-01584 (+4)File: GCCCCADD.cblBusiness Rule: Postal Code Length Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when postal code field contains data.
Trigger Criteria:
Context: A postal code field contains data
Applied to: Is Postal Code Present?
Action: The system validates the postal code
Logic Flow:
IF A postal code field contains data
AND The system validates the postal code
THEN:
• The system should continue validation if postal code is not present
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when postal code field contains data with potential trailing spaces.
Trigger Criteria:
Context: A postal code field contains data with potential trailing spaces
Applied to: Get Actual String Length Excluding Trailing Spaces
Action: The system needs to validate the postal code length
Logic Flow:
IF A postal code field contains data with potential trailing spaces
AND The system needs to validate the postal code length
THEN:
• The system should calculate the actual string length excluding trailing spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when postal code has been provided and its actual length calculated.
Trigger Criteria:
Context: A postal code has been provided and its actual length calculated
Applied to: String Length >= 3?
Action: The actual string length is less than 3 characters
Logic Flow:
IF A postal code has been provided and its actual length calculated
AND The actual string length is less than 3 characters
THEN:
• The system should trigger a validation error for insufficient postal code length
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when postal code has failed the minimum length validation.
Trigger Criteria:
Context: A postal code has failed the minimum length validation
Applied to: Retrieve Error Message GCCS-E-GEN-MIN-LEN3-REQ
Action: The system needs to provide error feedback
Logic Flow:
IF A postal code has failed the minimum length validation
AND The system needs to provide error feedback
THEN:
• The system should retrieve the standard minimum length error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when postal code validation error message has been retrieved.
Trigger Criteria:
Context: A postal code validation error message has been retrieved
Applied to: Add Validation Error Message to Error Collection
Action: The system processes the validation failure
Logic Flow:
IF A postal code validation error message has been retrieved
AND The system processes the validation failure
THEN:
• The system should add the error message to the validation error collection
R-GCCCCADD-cbl-01589 (+4)File: GCCCCADD.cblBusiness Rule: State Province Requirement Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when n4 address segment is being processed for validation.
Trigger Criteria:
Context: An N4 address segment is being processed for validation
Applied to: N4 Address Data Present?
Action: The N4 address data is completely empty or contains only spaces
Logic Flow:
IF An N4 address segment is being processed for validation
AND The N4 address data is completely empty or contains only spaces
THEN:
• The system should skip all address validation and proceed to the next validation step
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address is being validated and the country code indicates canada, usa, or mexico.
Trigger Criteria:
Context: An address is being validated and the country code indicates Canada, USA, or Mexico
Applied to: State/Province Code Present?
Action: The state or province code field is empty or contains only spaces
Logic Flow:
IF An address is being validated and the country code indicates Canada, USA, or Mexico
AND The state or province code field is empty or contains only spaces
THEN:
• The system should generate a required state/province error message and add it to the validation error list
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address contains both a country code and a state/province code.
Trigger Criteria:
Context: An address contains both a country code and a state/province code
Applied to: Valid State/Province for Country?
Action: The state/province code is validated against the country using the state-country lookup table
Logic Flow:
IF An address contains both a country code and a state/province code
AND The state/province code is validated against the country using the state-country lookup table
THEN:
• If the state/province code is not valid for the specified country, the system should generate an invalid state/province error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when address has a state/province code but no country code specified.
Trigger Criteria:
Context: An address has a state/province code but no country code specified
Applied to: Set Country Code from State/Province Lookup
Action: The system looks up the state/province code in the state-country reference table
Logic Flow:
IF An address has a state/province code but no country code specified
AND The system looks up the state/province code in the state-country reference table
THEN:
• The system should automatically set the country code based on the lookup result from the state-country table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address is being validated and all other validation steps have been completed.
Trigger Criteria:
Context: An address is being validated and all other validation steps have been completed
Applied to: Continue Validation
Action: The country code field is empty or contains only spaces
Logic Flow:
IF An address is being validated and all other validation steps have been completed
AND The country code field is empty or contains only spaces
THEN:
• The system should generate a required country code error message and add it to the validation error list
R-GCCCCADD-cbl-01598 (+3)File: GCCCCADD.cblBusiness Rule: Contact Information Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when contact record is being validated.
Trigger Criteria:
Context: A contact record is being validated
Applied to: PER03 Qualifier Empty AND Contact Name NOT Empty?
Action: The communication number qualifier (PER03) is empty AND the contact person name (PER02) is not empty
Logic Flow:
IF A contact record is being validated
AND The communication number qualifier (PER03) is empty AND the contact person name (PER02) is not empty
THEN:
• Generate an error message indicating that communication qualifier is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when contact record is being validated.
Trigger Criteria:
Context: A contact record is being validated
Applied to: PER03 Qualifier Empty AND Communication Number NOT Empty?
Action: The communication number qualifier (PER03) is empty AND the communication number (PER04) is not empty
Logic Flow:
IF A contact record is being validated
AND The communication number qualifier (PER03) is empty AND the communication number (PER04) is not empty
THEN:
• Generate an error message indicating that communication qualifier is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when contact record is being validated.
Trigger Criteria:
Context: A contact record is being validated
Applied to: Communication Qualifier NOT Empty OR Contact Name NOT Empty?
Action: The communication number qualifier (PER03) is not empty OR the contact person name (PER02) is not empty AND the communication number (PER04) is empty
Logic Flow:
IF A contact record is being validated
AND The communication number qualifier (PER03) is not empty OR the contact person name (PER02) is not empty AND the communication number (PER04) is empty
THEN:
• Generate an error message indicating that communication number is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when contact record with a communication number qualifier is being validated.
Trigger Criteria:
Context: A contact record with a communication number qualifier is being validated
Applied to: PER03 Qualifier Valid? Blank, FX, or TE
Action: The communication number qualifier (PER03) is not blank, 'FX', or 'TE'
Logic Flow:
IF A contact record with a communication number qualifier is being validated
AND The communication number qualifier (PER03) is not blank, 'FX', or 'TE'
THEN:
• Generate an error message indicating invalid qualifier value
R-GCCCCADD-cbl-01602 (+2)File: GCCCCADD.cblBusiness Rule: Communication Qualifier Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when contact record is being validated.
Trigger Criteria:
Context: A contact record is being validated
Applied to: Contact Name Present?
Action: Contact name is not blank AND communication qualifier is blank
Logic Flow:
IF A contact record is being validated
AND Contact name is not blank AND communication qualifier is blank
THEN:
• System generates required communication qualifier error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when contact record is being validated.
Trigger Criteria:
Context: A contact record is being validated
Applied to: Communication Number Present?
Action: Communication number is not blank AND communication qualifier is blank
Logic Flow:
IF A contact record is being validated
AND Communication number is not blank AND communication qualifier is blank
THEN:
• System generates required communication qualifier error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when contact record with communication qualifier is being validated.
Trigger Criteria:
Context: A contact record with communication qualifier is being validated
Applied to: Communication Qualifier Valid?
Action: Communication qualifier is not blank AND not 'FX' AND not 'TE'
Logic Flow:
IF A contact record with communication qualifier is being validated
AND Communication qualifier is not blank AND not 'FX' AND not 'TE'
THEN:
• System generates invalid communication qualifier value error message
R-GCCCCADD-cbl-01605 (+10)File: GCCCCADD.cblBusiness Rule: Bunch Bill Car Search Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment with an action code.
Trigger Criteria:
Context: A shipment with an action code
Applied to: Action Code = 'US' or 'RT'?
Action: The system checks if bunch bill car search is required
Logic Flow:
IF A shipment with an action code
AND The system checks if bunch bill car search is required
THEN:
• Processing continues to carload validation if action code is 'US' (Transit) or 'RT' (Return), otherwise skip bunch bill search
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with us or rt action code.
Trigger Criteria:
Context: A shipment with US or RT action code
Applied to: Short Multiple Ship Carload?
Action: The system checks the shipment carload type
Logic Flow:
IF A shipment with US or RT action code
AND The system checks the shipment carload type
THEN:
• Proceed with bunch bill car search if shipment is marked as short multiple ship carload, otherwise use original shipment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when qualified shipment requiring bunch bill car search.
Trigger Criteria:
Context: A qualified shipment requiring bunch bill car search
Applied to: Initialize Search Parameters
Action: The system initializes the search process
Logic Flow:
IF A qualified shipment requiring bunch bill car search
AND The system initializes the search process
THEN:
• Clear search segments, set waybill key as search key, and prepare for equipment sequence iteration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when active equipment search process.
Trigger Criteria:
Context: An active equipment search process
Applied to: Car Sequence ≤ 200?
Action: The system checks the current search sequence number
Logic Flow:
IF An active equipment search process
AND The system checks the current search sequence number
THEN:
• Continue searching if sequence is 200 or less, otherwise terminate search as not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid search sequence number within bounds. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid search sequence number within bounds
Applied to: Get Equipment Record by Sequence
Action: The system attempts to retrieve equipment record
Logic Flow:
IF A valid search sequence number within bounds
AND The system attempts to retrieve equipment record
THEN:
• Call equipment management system to get equipment data for the specified sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when equipment retrieval attempt.
Trigger Criteria:
Context: An equipment retrieval attempt
Applied to: Equipment Record Found?
Action: The system checks if equipment data was successfully retrieved
Logic Flow:
IF An equipment retrieval attempt
AND The system checks if equipment data was successfully retrieved
THEN:
• Proceed with equipment ID comparison if record found, otherwise mark search as not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when successfully retrieved equipment record and target car id.
Trigger Criteria:
Context: A successfully retrieved equipment record and target car ID
Applied to: Equipment ID = Target Car ID?
Action: The system compares equipment ID with target car ID
Logic Flow:
IF A successfully retrieved equipment record and target car ID
AND The system compares equipment ID with target car ID
THEN:
• Mark as found and update shipment data if IDs match, otherwise increment sequence and continue search
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when equipment id matches the target car id.
Trigger Criteria:
Context: Equipment ID matches the target car ID
Applied to: Set Car Found Flag
Action: The system processes the successful match
Logic Flow:
IF Equipment ID matches the target car ID
AND The system processes the successful match
THEN:
• Set car found flag to true and prepare to update shipment data with found equipment information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when successfully matched equipment record.
Trigger Criteria:
Context: A successfully matched equipment record
Applied to: Move Equipment Data to SHIPROOT
Action: The system updates shipment data
Logic Flow:
IF A successfully matched equipment record
AND The system updates shipment data
THEN:
• Replace original shipment root data with the found equipment data from bunch bill
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when equipment id does not match target car id.
Trigger Criteria:
Context: Equipment ID does not match target car ID
Applied to: Increment Car Sequence
Action: The system continues the search process
Logic Flow:
IF Equipment ID does not match target car ID
AND The system continues the search process
THEN:
• Increment the car sequence number by 1 and continue with boundary check
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when search sequence exceeds 200 or equipment record not found.
Trigger Criteria:
Context: Search sequence exceeds 200 or equipment record not found
Applied to: Set Car Not Found Flag
Action: The system terminates the search process
Logic Flow:
IF Search sequence exceeds 200 or equipment record not found
AND The system terminates the search process
THEN:
• Set car not found flag and continue processing with original shipment data
R-GCCCCADD-cbl-01616 (+1)File: GCCCCADD.cblBusiness Rule: Manifest Port Override Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record exists with manifest port information.
Trigger Criteria:
Context: A shipment record exists with manifest port information
Applied to: Override Manifest From Port with Calling Program Value
Action: The calling program provides a manifest from port override value that is not spaces
Logic Flow:
IF A shipment record exists with manifest port information
AND The calling program provides a manifest from port override value that is not spaces
THEN:
• The shipment's manifest from port is updated with the calling program's provided value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record exists with manifest port information.
Trigger Criteria:
Context: A shipment record exists with manifest port information
Applied to: Override Manifest To Port with Calling Program Value
Action: The calling program provides a manifest to port override value that is not spaces
Logic Flow:
IF A shipment record exists with manifest port information
AND The calling program provides a manifest to port override value that is not spaces
THEN:
• The shipment's manifest to port is updated with the calling program's provided value
Business Justification: Ensures correct system behavior and process compliance when string field that may contain trailing spaces.
Trigger Criteria:
Context: A string field that may contain trailing spaces
Applied to: String Length Calculation Utility
Action: The system needs to determine the actual content length
Logic Flow:
IF A string field that may contain trailing spaces
AND The system needs to determine the actual content length
THEN:
• The system calculates length by counting from the end until a non-space character is found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when city name field in an address record.
Trigger Criteria:
Context: A city name field in an address record
Applied to: Validate Field Length Requirements
Action: The actual string length of the city name is less than 2 characters
Logic Flow:
IF A city name field in an address record
AND The actual string length of the city name is less than 2 characters
THEN:
• The system generates a minimum length requirement error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when postal code field in an address record.
Trigger Criteria:
Context: A postal code field in an address record
Applied to: Validate Field Length Requirements
Action: The actual string length of the postal code is less than 3 characters and postal code is not empty
Logic Flow:
IF A postal code field in an address record
AND The actual string length of the postal code is less than 3 characters and postal code is not empty
THEN:
• The system generates a minimum length requirement error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when postal code field when called from gcx011 system and the postal code is not empty.
Trigger Criteria:
Context: A postal code field when called from GCX011 system and the postal code is not empty
Applied to: Check Postal Code Length
Action: The actual string length of the postal code is less than 5 characters
Logic Flow:
IF A postal code field when called from GCX011 system and the postal code is not empty
AND The actual string length of the postal code is less than 5 characters
THEN:
• The system pads the postal code with periods to make it exactly 5 characters long
R-GCCCCADD-cbl-01622 (+3)File: GCCCCADD.cblBusiness Rule: Communication Number Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when contact record with communication number qualifier populated and contact name not populated.
Trigger Criteria:
Context: A contact record with communication number qualifier populated and contact name not populated
Applied to: Communication Number Qualifier Present?
Action: The communication number field is empty
Logic Flow:
IF A contact record with communication number qualifier populated and contact name not populated
AND The communication number field is empty
THEN:
• Generate error message indicating communication number is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when contact record with contact name populated and communication number qualifier not populated.
Trigger Criteria:
Context: A contact record with contact name populated and communication number qualifier not populated
Applied to: Contact Name Present?
Action: The communication number field is empty
Logic Flow:
IF A contact record with contact name populated and communication number qualifier not populated
AND The communication number field is empty
THEN:
• Generate error message indicating communication number is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when contact record with communication number qualifier or contact name populated.
Trigger Criteria:
Context: A contact record with communication number qualifier or contact name populated
Applied to: Communication Number Present?
Action: The communication number field contains a value
Logic Flow:
IF A contact record with communication number qualifier or contact name populated
AND The communication number field contains a value
THEN:
• Communication number validation passes successfully
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact record with no communication number qualifier and no contact name.
Trigger Criteria:
Context: A contact record with no communication number qualifier and no contact name
Applied to: Validation Passed
Action: Communication number validation is performed
Logic Flow:
IF A contact record with no communication number qualifier and no contact name
AND Communication number validation is performed
THEN:
• Validation passes without requiring communication number
R-GCCCCADD-cbl-01642 (+14)File: GCCCCADD.cblBusiness Rule: Automated Haulage Flag Setting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with an ima (intermodal agreement) code.
Trigger Criteria:
Context: A shipment with an IMA (Intermodal Agreement) code
Applied to: Is IMA Code = 'HM'?
Action: The system checks if the IMA code equals 'HM' (Haulage Mode)
Logic Flow:
IF A shipment with an IMA (Intermodal Agreement) code
AND The system checks if the IMA code equals 'HM' (Haulage Mode)
THEN:
• The system should proceed with haulage processing if true, or clear haulage fields if false
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment in haulage mode (ima code = 'hm').
Trigger Criteria:
Context: A shipment in haulage mode (IMA code = 'HM')
Applied to: Haulage Right Carrier Available?
Action: The system checks if haulage right carrier field is populated (not spaces)
Logic Flow:
IF A shipment in haulage mode (IMA code = 'HM')
AND The system checks if haulage right carrier field is populated (not spaces)
THEN:
• The system should proceed with carrier lookup if available, or set unknown defaults if not available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when haulage mode shipment without a specified haulage rights carrier.
Trigger Criteria:
Context: A haulage mode shipment without a specified haulage rights carrier
Applied to: Set Unknown Haulage Rights SCAC
Action: The carrier field is spaces or empty
Logic Flow:
IF A haulage mode shipment without a specified haulage rights carrier
AND The carrier field is spaces or empty
THEN:
• The system should set haulage rights SCAC to 'UNKN', clear automated flag, set bill owner to 'UNKN', and set reject haulage status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage mode shipment with a specified haulage rights carrier.
Trigger Criteria:
Context: A haulage mode shipment with a specified haulage rights carrier
Applied to: Lookup Carrier Code in CC Table
Action: The system looks up the carrier in the CC (Carrier Code) table
Logic Flow:
IF A haulage mode shipment with a specified haulage rights carrier
AND The system looks up the carrier in the CC (Carrier Code) table
THEN:
• The system should retrieve the CCRA code if found, or proceed with unknown defaults if not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when successful carrier code lookup in the cc table.
Trigger Criteria:
Context: A successful carrier code lookup in the CC table
Applied to: Set Haulage Rights SCAC from Table
Action: The carrier code is found and validated
Logic Flow:
IF A successful carrier code lookup in the CC table
AND The carrier code is found and validated
THEN:
• The system should set the haulage rights SCAC to the CCRA code from the table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when validated haulage rights scac and canadian customs port code.
Trigger Criteria:
Context: A validated haulage rights SCAC and Canadian customs port code
Applied to: Build SS Table Key with Port Code and SCAC
Action: The system needs to lookup haulage agreement details
Logic Flow:
IF A validated haulage rights SCAC and Canadian customs port code
AND The system needs to lookup haulage agreement details
THEN:
• The system should build the SS table key using 'C' prefix, 3-digit port code, and either the haulage SCAC or default '6105' if SCAC is spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when constructed ss table key with port code and carrier scac.
Trigger Criteria:
Context: A constructed SS table key with port code and carrier SCAC
Applied to: Lookup Haulage Agreement in SS Table
Action: The system looks up the haulage agreement in the SS table
Logic Flow:
IF A constructed SS table key with port code and carrier SCAC
AND The system looks up the haulage agreement in the SS table
THEN:
• The system should retrieve agreement details if found, or proceed with default handling if not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when successful ss table lookup for haulage agreement.
Trigger Criteria:
Context: A successful SS table lookup for haulage agreement
Applied to: Get Automated Carrier Flag from SS Table
Action: The system processes the automated carrier flag from the agreement
Logic Flow:
IF A successful SS table lookup for haulage agreement
AND The system processes the automated carrier flag from the agreement
THEN:
• The system should set the haulage automated flag and determine bill owner (6105 if automated)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage agreement with automated carrier flag set to true.
Trigger Criteria:
Context: A haulage agreement with automated carrier flag set to true
Applied to: Set Bill Owner to 6105
Action: The system processes automated haulage billing
Logic Flow:
IF A haulage agreement with automated carrier flag set to true
AND The system processes automated haulage billing
THEN:
• The system should set the bill owner to '6105' (standard railway code)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage agreement record from the ss table.
Trigger Criteria:
Context: A haulage agreement record from the SS table
Applied to: Haulage Agreement = 'Y'?
Action: The system checks if the haulage agreement field equals 'Y'
Logic Flow:
IF A haulage agreement record from the SS table
AND The system checks if the haulage agreement field equals 'Y'
THEN:
• The system should set accept haulage status if 'Y', or reject haulage status if not 'Y'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when haulage agreement with agreement field set to 'y'.
Trigger Criteria:
Context: A haulage agreement with agreement field set to 'Y'
Applied to: Set Accept Haulage Status
Action: The system processes the acceptance decision
Logic Flow:
IF A haulage agreement with agreement field set to 'Y'
AND The system processes the acceptance decision
THEN:
• The system should set the haulage status to 'ACCEPT'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage agreement with agreement field not equal to 'y' or missing carrier information.
Trigger Criteria:
Context: A haulage agreement with agreement field not equal to 'Y' or missing carrier information
Applied to: Set Reject Haulage Status
Action: The system processes the rejection decision
Logic Flow:
IF A haulage agreement with agreement field not equal to 'Y' or missing carrier information
AND The system processes the rejection decision
THEN:
• The system should set the haulage status to 'REJECT'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when successful ss table lookup with haulage agreement details.
Trigger Criteria:
Context: A successful SS table lookup with haulage agreement details
Applied to: Set Bill As SCAC from SS Table
Action: The system determines billing arrangements
Logic Flow:
IF A successful SS table lookup with haulage agreement details
AND The system determines billing arrangements
THEN:
• The system should set bill as SCAC to haulage bill initial if haulage mode, or line bill initial if not haulage mode
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when failed ss table lookup for haulage agreement.
Trigger Criteria:
Context: A failed SS table lookup for haulage agreement
Applied to: Set Default Values for Missing SS Entry
Action: The system cannot find agreement details
Logic Flow:
IF A failed SS table lookup for haulage agreement
AND The system cannot find agreement details
THEN:
• The system should set default values: clear automated flag and set reject status for haulage mode, or set bill owner and bill as SCAC to '6105' for non-haulage mode
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment with ima code not equal to 'hm'.
Trigger Criteria:
Context: A shipment with IMA code not equal to 'HM'
Applied to: Clear Haulage Fields for Non-Haulage
Action: The system processes non-haulage shipments
Logic Flow:
IF A shipment with IMA code not equal to 'HM'
AND The system processes non-haulage shipments
THEN:
• The system should clear haulage rights SCAC, automated flag, and reject haulage indicator
Business Justification: Ensures correct system behavior and process compliance when shipment with an ima code.
Trigger Criteria:
Context: A shipment with an IMA code
Applied to: Is IMA Code = 'HM'?
Action: The system checks the IMA code value
Logic Flow:
IF A shipment with an IMA code
AND The system checks the IMA code value
THEN:
• If IMA code equals 'HM' then haulage processing is required, otherwise skip haulage processing and set default billing information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment requiring haulage processing.
Trigger Criteria:
Context: A shipment requiring haulage processing
Applied to: Haulage Right Carrier exists?
Action: The system checks for haulage rights carrier
Logic Flow:
IF A shipment requiring haulage processing
AND The system checks for haulage rights carrier
THEN:
• If haulage rights carrier is spaces then set unknown SCAC code, clear automated flag, set bill owner to unknown, and reject haulage, otherwise proceed with carrier lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid haulage rights carrier code.
Trigger Criteria:
Context: A valid haulage rights carrier code
Applied to: Lookup Carrier in CC Table
Action: The system looks up the carrier in CC table
Logic Flow:
IF A valid haulage rights carrier code
AND The system looks up the carrier in CC table
THEN:
• Retrieve carrier information for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when carrier code lookup result.
Trigger Criteria:
Context: A carrier code lookup result
Applied to: Carrier Found in CC Table?
Action: The system checks if carrier was found in CC table
Logic Flow:
IF A carrier code lookup result
AND The system checks if carrier was found in CC table
THEN:
• If carrier found then extract CCRA code, otherwise set unknown SCAC code, clear automated flag, reject haulage, and set bill owner to unknown
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid carrier record from cc table.
Trigger Criteria:
Context: A valid carrier record from CC table
Applied to: Get CCRA Code from CC Table
Action: The system processes the carrier information
Logic Flow:
IF A valid carrier record from CC table
AND The system processes the carrier information
THEN:
• Assign the CCRA code to haulage rights SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when canadian customs port code and scac code.
Trigger Criteria:
Context: A Canadian customs port code and SCAC code
Applied to: Build SS Table Key with Port Code and SCAC
Action: The system builds SS table lookup key
Logic Flow:
IF A Canadian customs port code and SCAC code
AND The system builds SS table lookup key
THEN:
• Construct key with 'C' prefix plus last 3 digits of port code and either haulage rights SCAC or default '6105' if SCAC is spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when constructed ss table key.
Trigger Criteria:
Context: A constructed SS table key
Applied to: Lookup Haulage Agreement in SS Table
Action: The system looks up haulage agreement in SS table
Logic Flow:
IF A constructed SS table key
AND The system looks up haulage agreement in SS table
THEN:
• Retrieve haulage agreement details for validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage agreement data from ss table.
Trigger Criteria:
Context: Haulage agreement data from SS table
Applied to: Haulage Agreement = 'Y'?
Action: The system checks the haulage agreement flag
Logic Flow:
IF Haulage agreement data from SS table
AND The system checks the haulage agreement flag
THEN:
• If haulage agreement equals 'Y' then accept haulage, otherwise reject haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid ss table data for haulage processing.
Trigger Criteria:
Context: Valid SS table data for haulage processing
Applied to: Set Automated Carrier Flag
Action: The system processes haulage automation settings
Logic Flow:
IF Valid SS table data for haulage processing
AND The system processes haulage automation settings
THEN:
• Set automated carrier flag from SS table and determine bill as SCAC based on haulage or line haul settings
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage processing with automated carrier flag set.
Trigger Criteria:
Context: Haulage processing with automated carrier flag set
Applied to: Automated Haulage?
Action: The system determines bill ownership
Logic Flow:
IF Haulage processing with automated carrier flag set
AND The system determines bill ownership
THEN:
• If automated haulage then set bill owner to '6105', otherwise use existing bill owner
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment that does not require haulage processing.
Trigger Criteria:
Context: A shipment that does not require haulage processing
Applied to: Set Default Billing Information
Action: The system sets billing information
Logic Flow:
IF A shipment that does not require haulage processing
AND The system sets billing information
THEN:
• Clear haulage rights SCAC, automated flag, and reject haulage indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage shipment with missing or invalid carrier information.
Trigger Criteria:
Context: A haulage shipment with missing or invalid carrier information
Applied to: Set Unknown SCAC and Reject Status
Action: The system processes the invalid carrier
Logic Flow:
IF A haulage shipment with missing or invalid carrier information
AND The system processes the invalid carrier
THEN:
• Set haulage rights SCAC to 'UNKN', clear automated flag, set bill owner to 'UNKN', and reject haulage
R-GCCCCADD-cbl-01669 (+12)File: GCCCCADD.cblBusiness Rule: Bill Owner Assignment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment with an ima code from the shipment root data.
Trigger Criteria:
Context: A shipment with an IMA code from the shipment root data
Applied to: Is IMA Code = 'HM' Haulage Movement?
Action: The system checks if the IMA code equals 'HM'
Logic Flow:
IF A shipment with an IMA code from the shipment root data
AND The system checks if the IMA code equals 'HM'
THEN:
• The system identifies this as a haulage movement and proceeds with haulage-specific processing, otherwise skips haulage processing entirely
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage movement shipment.
Trigger Criteria:
Context: A haulage movement shipment
Applied to: Haulage Right Carrier Available?
Action: The system checks if the haulage right carrier field contains a value other than spaces
Logic Flow:
IF A haulage movement shipment
AND The system checks if the haulage right carrier field contains a value other than spaces
THEN:
• If no carrier is specified, set bill owner to 'UNKN', clear haulage automated flag, set bill owner to 'UNKN', and set reject haulage status to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid haulage right carrier code.
Trigger Criteria:
Context: A valid haulage right carrier code
Applied to: Lookup Carrier Code in CC Table
Action: The system performs a lookup in the CC table using the carrier code
Logic Flow:
IF A valid haulage right carrier code
AND The system performs a lookup in the CC table using the carrier code
THEN:
• The system retrieves the corresponding CCRA code for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when carrier code lookup attempt in the cc table.
Trigger Criteria:
Context: A carrier code lookup attempt in the CC table
Applied to: Carrier Code Found?
Action: The lookup operation completes
Logic Flow:
IF A carrier code lookup attempt in the CC table
AND The lookup operation completes
THEN:
• If the carrier code is found, use the retrieved CCRA code as haulage rights SCAC, otherwise set bill owner to 'UNKN', clear haulage automated flag, set reject haulage status, and set bill owner to 'UNKN'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when successful carrier code lookup in the cc table.
Trigger Criteria:
Context: A successful carrier code lookup in the CC table
Applied to: Set Haulage Rights SCAC from Carrier Code
Action: The system retrieves the CCRA code from the lookup result
Logic Flow:
IF A successful carrier code lookup in the CC table
AND The system retrieves the CCRA code from the lookup result
THEN:
• The system assigns the CCRA code to the haulage rights SCAC field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when canadian customs port code and either haulage rights scac or default '6105' carrier code.
Trigger Criteria:
Context: A Canadian customs port code and either haulage rights SCAC or default '6105' carrier code
Applied to: Check SS Table for Haulage Agreement
Action: The system performs a lookup in the SS table using the constructed key
Logic Flow:
IF A Canadian customs port code and either haulage rights SCAC or default '6105' carrier code
AND The system performs a lookup in the SS table using the constructed key
THEN:
• The system retrieves haulage agreement details including automated carrier flag and haulage agreement status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when successful ss table lookup for haulage agreement.
Trigger Criteria:
Context: A successful SS table lookup for haulage agreement
Applied to: Automated Haulage?
Action: The system checks the automated carrier flag from the SS table
Logic Flow:
IF A successful SS table lookup for haulage agreement
AND The system checks the automated carrier flag from the SS table
THEN:
• If automated haulage is indicated, set the haulage automated flag and assign bill owner to '6105'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when successful ss table lookup with haulage agreement details.
Trigger Criteria:
Context: A successful SS table lookup with haulage agreement details
Applied to: Haulage Agreement Accepted?
Action: The system checks if the haulage agreement field equals 'Y'
Logic Flow:
IF A successful SS table lookup with haulage agreement details
AND The system checks if the haulage agreement field equals 'Y'
THEN:
• If accepted, set accept haulage status and use haul bill initial as bill-as SCAC, otherwise set reject haulage status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment where the ima code is not 'hm'.
Trigger Criteria:
Context: A shipment where the IMA code is not 'HM'
Applied to: Clear Haulage Settings No Bill Owner Assignment
Action: The system processes the shipment
Logic Flow:
IF A shipment where the IMA code is not 'HM'
AND The system processes the shipment
THEN:
• Clear all haulage-related fields including haulage rights SCAC, haulage automated flag, and reject haulage indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage movement processed through gcx011 interface.
Trigger Criteria:
Context: A haulage movement processed through GCX011 interface
Applied to: Called from GCX011 and CCN starts with '6105'?
Action: The system checks if the CCN key starts with '6105'
Logic Flow:
IF A haulage movement processed through GCX011 interface
AND The system checks if the CCN key starts with '6105'
THEN:
• If true, proceed with CCN modification logic based on bill-as SCAC validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ccn that starts with '6105' processed through gcx011.
Trigger Criteria:
Context: A CCN that starts with '6105' processed through GCX011
Applied to: Bill-As SCAC Valid and Not Default?
Action: The system checks if bill-as SCAC is not 'UNKN', not spaces, not low-values, and not '6105'
Logic Flow:
IF A CCN that starts with '6105' processed through GCX011
AND The system checks if bill-as SCAC is not 'UNKN', not spaces, not low-values, and not '6105'
THEN:
• If valid, proceed with CCN key modification using the bill-as SCAC value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid bill-as scac and automated haulage flag set to true.
Trigger Criteria:
Context: A valid bill-as SCAC and automated haulage flag set to true
Applied to: Set CCN Type to 'E' Set Bill Owner to '6105'
Action: The system modifies the CCN key
Logic Flow:
IF A valid bill-as SCAC and automated haulage flag set to true
AND The system modifies the CCN key
THEN:
• Replace the first 4 characters of CCN with bill-as SCAC, set the 5th character to 'E', and assign bill owner to '6105'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid bill-as scac and automated haulage flag set to false.
Trigger Criteria:
Context: A valid bill-as SCAC and automated haulage flag set to false
Applied to: Set CCN Type to 'P' Set Bill Owner to Bill-As SCAC
Action: The system modifies the CCN key
Logic Flow:
IF A valid bill-as SCAC and automated haulage flag set to false
AND The system modifies the CCN key
THEN:
• Replace the first 4 characters of CCN with bill-as SCAC, set the 5th character to 'P', and assign bill owner to the bill-as SCAC value
R-GCCCCADD-cbl-01682 (+5)File: GCCCCADD.cblBusiness Rule: CCN Key Modification for Automated Haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage shipment is being processed.
Trigger Criteria:
Context: A haulage shipment is being processed
Applied to: Called from GCX011?
Action: The process is not called from GCX011 program
Logic Flow:
IF A haulage shipment is being processed
AND The process is not called from GCX011 program
THEN:
• Skip CCN key modification and continue with standard processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage shipment is called from gcx011 program.
Trigger Criteria:
Context: A haulage shipment is called from GCX011 program
Applied to: CCN Key starts with '6105'?
Action: The CCN key does not start with '6105'
Logic Flow:
IF A haulage shipment is called from GCX011 program
AND The CCN key does not start with '6105'
THEN:
• Skip CCN key modification and continue with standard processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage shipment with ccn key starting with '6105' called from gcx011.
Trigger Criteria:
Context: A haulage shipment with CCN key starting with '6105' called from GCX011
Applied to: Bill-As SCAC is valid?
Action: The Bill-As SCAC is 'UNKN' or spaces or low-values or '6105'
Logic Flow:
IF A haulage shipment with CCN key starting with '6105' called from GCX011
AND The Bill-As SCAC is 'UNKN' or spaces or low-values or '6105'
THEN:
• Skip CCN key modification and continue with standard processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage shipment with valid bill-as scac code.
Trigger Criteria:
Context: A haulage shipment with valid Bill-As SCAC code
Applied to: Move Bill-As SCAC to CCN Key position 1-4
Action: The Bill-As SCAC is not 'UNKN', spaces, low-values, or '6105'
Logic Flow:
IF A haulage shipment with valid Bill-As SCAC code
AND The Bill-As SCAC is not 'UNKN', spaces, low-values, or '6105'
THEN:
• Replace the first four characters of the CCN key with the Bill-As SCAC code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage shipment with valid bill-as scac and automated haulage flag set.
Trigger Criteria:
Context: A haulage shipment with valid Bill-As SCAC and automated haulage flag set
Applied to: Set CCN Key position 5 to 'E'
Action: The haulage is automated
Logic Flow:
IF A haulage shipment with valid Bill-As SCAC and automated haulage flag set
AND The haulage is automated
THEN:
• Set the fifth position of CCN key to 'E' and set Bill Owner to '6105'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage shipment with valid bill-as scac and automated haulage flag not set.
Trigger Criteria:
Context: A haulage shipment with valid Bill-As SCAC and automated haulage flag not set
Applied to: Set CCN Key position 5 to 'P'
Action: The haulage is not automated
Logic Flow:
IF A haulage shipment with valid Bill-As SCAC and automated haulage flag not set
AND The haulage is not automated
THEN:
• Set the fifth position of CCN key to 'P' and set Bill Owner to the Bill-As SCAC code
R-GCCCCADD-cbl-01688 (+10)File: GCCCCADD.cblBusiness Rule: Error Message Text Retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when validation error has occurred and an error message number has been identified.
Trigger Criteria:
Context: A validation error has occurred and an error message number has been identified
Applied to: Error Message Text Retrieval - Retrieve error message text from MS table for validation failures
Action: The system needs to retrieve the corresponding error message text
Logic Flow:
IF A validation error has occurred and an error message number has been identified
AND The system needs to retrieve the corresponding error message text
THEN:
• The system should lookup the message text from the MS table using the error number as key and return the English text for display
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when error message retrieval request is initiated.
Trigger Criteria:
Context: An error message retrieval request is initiated
Applied to: Initialize Table Access Parameters
Action: The system prepares to access the message repository
Logic Flow:
IF An error message retrieval request is initiated
AND The system prepares to access the message repository
THEN:
• All table access parameters should be cleared and initialized to ensure clean lookup operation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when table access parameters are being configured for message retrieval.
Trigger Criteria:
Context: Table access parameters are being configured for message retrieval
Applied to: Set Function Code to 'GU'
Action: The system sets up the database operation type
Logic Flow:
IF Table access parameters are being configured for message retrieval
AND The system sets up the database operation type
THEN:
• The function code should be set to 'GU' to perform a get unique operation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when table access is being configured for message text retrieval.
Trigger Criteria:
Context: Table access is being configured for message text retrieval
Applied to: Set Table ID to 'MS'
Action: The system identifies which table to access
Logic Flow:
IF Table access is being configured for message text retrieval
AND The system identifies which table to access
THEN:
• The table ID should be set to 'MS' to target the message repository table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when specific error message number has been identified for lookup.
Trigger Criteria:
Context: A specific error message number has been identified for lookup
Applied to: Set Message Error Number as Key
Action: The system configures the search key for message retrieval
Logic Flow:
IF A specific error message number has been identified for lookup
AND The system configures the search key for message retrieval
THEN:
• The error message number should be assigned as the sequence ID key for table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when all table access parameters have been properly configured. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All table access parameters have been properly configured
Applied to: Call Table I/O Service
Action: The system executes the message text retrieval operation
Logic Flow:
IF All table access parameters have been properly configured
AND The system executes the message text retrieval operation
THEN:
• The table I/O service should be called with the configured parameters to perform the lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when table lookup operation has been executed for message text retrieval.
Trigger Criteria:
Context: A table lookup operation has been executed for message text retrieval
Applied to: Table Access Successful?
Action: The system evaluates the operation result
Logic Flow:
IF A table lookup operation has been executed for message text retrieval
AND The system evaluates the operation result
THEN:
• If the return flag indicates 'SUCCESSFUL', the message text should be processed, otherwise handle the failure case
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when message text has been successfully retrieved from the ms table.
Trigger Criteria:
Context: Message text has been successfully retrieved from the MS table
Applied to: Move Table Segment to MS Structure
Action: The system processes the retrieved table segment
Logic Flow:
IF Message text has been successfully retrieved from the MS table
AND The system processes the retrieved table segment
THEN:
• The table segment data should be moved to the MS structure for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when message data has been successfully loaded into the ms structure.
Trigger Criteria:
Context: Message data has been successfully loaded into the MS structure
Applied to: Extract English Text Message
Action: The system extracts the displayable message text
Logic Flow:
IF Message data has been successfully loaded into the MS structure
AND The system extracts the displayable message text
THEN:
• The English text field from the MS structure should be extracted as the message content
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when english message text has been extracted from the ms structure.
Trigger Criteria:
Context: English message text has been extracted from the MS structure
Applied to: Set Message Label for Display
Action: The system prepares the message for display
Logic Flow:
IF English message text has been extracted from the MS structure
AND The system prepares the message for display
THEN:
• The extracted English text should be assigned to the message label field for user presentation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when message text retrieval from the ms table has failed.
Trigger Criteria:
Context: Message text retrieval from the MS table has failed
Applied to: Clear MS Structure - No Message Found
Action: The system handles the retrieval failure
Logic Flow:
IF Message text retrieval from the MS table has failed
AND The system handles the retrieval failure
THEN:
• The MS structure should be cleared to spaces to ensure no invalid message text is displayed
Business Justification: Dictates the expected operational logic and validation steps when ccn array table exists from bill of lading processing.
Trigger Criteria:
Context: A CCN array table exists from bill of lading processing
Applied to: CCN Array Contains Data?
Action: The system checks for multiple CCN processing requirements
Logic Flow:
IF A CCN array table exists from bill of lading processing
AND The system checks for multiple CCN processing requirements
THEN:
• Processing continues only if the CCN array contains valid data, otherwise manifest creation is marked complete
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ccn array with multiple cargo control numbers and a current index position.
Trigger Criteria:
Context: A CCN array with multiple cargo control numbers and a current index position
Applied to: More CCNs in Array?
Action: The system processes each CCN in sequence
Logic Flow:
IF A CCN array with multiple cargo control numbers and a current index position
AND The system processes each CCN in sequence
THEN:
• Continue processing the next CCN if the current index is within array bounds and the CCN value is not spaces, otherwise complete the manifest creation process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid ccn array data requiring multiple manifest processing.
Trigger Criteria:
Context: Valid CCN array data requiring multiple manifest processing
Applied to: Initialize Spawn Parameters
Action: The system prepares to spawn the GCT0111E program
Logic Flow:
IF Valid CCN array data requiring multiple manifest processing
AND The system prepares to spawn the GCT0111E program
THEN:
• Initialize spawn waybill key, waybill date, current CCN from array, and action code to 'AM' for manifest processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when prepared spawn message with waybill and ccn information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Prepared spawn message with waybill and CCN information
Applied to: Call IMS to Change Message
Action: The system needs to process a cargo control number for manifest creation
Logic Flow:
IF Prepared spawn message with waybill and CCN information
AND The system needs to process a cargo control number for manifest creation
THEN:
• Call IMS with CHNG function to invoke GCT0111E program, write the message to the processing queue, and purge the IMS message
R-GCCCCADD-cbl-01703 (+15)File: GCCCCADD.cblBusiness Rule: Importer Segment Building from EDI
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Get Importer N1 Segment from EDI BOL
Action: The system searches for importer N1 segment with entity type 'IM'
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system searches for importer N1 segment with entity type 'IM'
THEN:
• The system retrieves importer name and identification details if found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment has been retrieved from edi bol.
Trigger Criteria:
Context: An N1 segment has been retrieved from EDI BOL
Applied to: Check Entity ID is 'IM'
Action: The system checks the entity ID code
Logic Flow:
IF An N1 segment has been retrieved from EDI BOL
AND The system checks the entity ID code
THEN:
• Processing continues only if entity ID equals 'IM' for importer
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data exists in temporary backup storage and edi bol contains importer information.
Trigger Criteria:
Context: Importer data exists in temporary backup storage and EDI BOL contains importer information
Applied to: Is Corrector EDI with Backup Data?
Action: The system processes a corrector EDI transaction
Logic Flow:
IF Importer data exists in temporary backup storage and EDI BOL contains importer information
AND The system processes a corrector EDI transaction
THEN:
• The system uses the backup importer data instead of processing new EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when backup importer data exists in temporary storage.
Trigger Criteria:
Context: Backup importer data exists in temporary storage
Applied to: Restore Backup Importer Data
Action: A corrector EDI requires restoration of previous importer information
Logic Flow:
IF Backup importer data exists in temporary storage
AND A corrector EDI requires restoration of previous importer information
THEN:
• The system restores importer name, business number, qualifier, address, and contact information from backup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid importer n1 segment exists in edi bol.
Trigger Criteria:
Context: A valid importer N1 segment exists in EDI BOL
Applied to: Extract Importer Information
Action: The system processes new importer information
Logic Flow:
IF A valid importer N1 segment exists in EDI BOL
AND The system processes new importer information
THEN:
• The system extracts importer name, business number qualifier, and business number for customs processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n1 segment has been processed.
Trigger Criteria:
Context: An importer N1 segment has been processed
Applied to: Get Importer N3 Address Segment
Action: The system searches for corresponding N3 address segment
Logic Flow:
IF An importer N1 segment has been processed
AND The system searches for corresponding N3 address segment
THEN:
• The system retrieves address line information for the importer
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer n3 address segment data is available.
Trigger Criteria:
Context: Importer N3 address segment data is available
Applied to: Process Address Information
Action: The system processes address line information
Logic Flow:
IF Importer N3 address segment data is available
AND The system processes address line information
THEN:
• The system sets address line 1 and 2, defaulting to 'NA' if address line 1 is empty
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer address has been processed.
Trigger Criteria:
Context: An importer address has been processed
Applied to: Get Importer N4 City/State Segment
Action: The system searches for corresponding N4 city/state segment
Logic Flow:
IF An importer address has been processed
AND The system searches for corresponding N4 city/state segment
THEN:
• The system retrieves city, state, postal code, and country information for the importer
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer n4 city/state segment data is available.
Trigger Criteria:
Context: Importer N4 city/state segment data is available
Applied to: Process City/State/Postal Information
Action: The system processes location information
Logic Flow:
IF Importer N4 city/state segment data is available
AND The system processes location information
THEN:
• The system sets city name, state/province code, postal code, and country code for the importer
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer location information has been processed.
Trigger Criteria:
Context: Importer location information has been processed
Applied to: Clear Contact Information
Action: The system finalizes importer segment data
Logic Flow:
IF Importer location information has been processed
AND The system finalizes importer segment data
THEN:
• The system clears all contact information fields for the importer record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer segment data has been assembled.
Trigger Criteria:
Context: Importer segment data has been assembled
Applied to: Validate N1 Segment Data
Action: The system validates the N1 segment information
Logic Flow:
IF Importer segment data has been assembled
AND The system validates the N1 segment information
THEN:
• The system ensures required fields are present and data meets customs requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer segment data has been validated.
Trigger Criteria:
Context: Importer segment data has been validated
Applied to: Insert Importer Record into Customs Database
Action: The system processes the importer record for storage
Logic Flow:
IF Importer segment data has been validated
AND The system processes the importer record for storage
THEN:
• The system inserts the importer record into the customs database with sequence number assignment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when corrector edi transaction does not contain importer information.
Trigger Criteria:
Context: A corrector EDI transaction does not contain importer information
Applied to: Handle Importer Data Deletion
Action: Previous importer data existed for the shipment
Logic Flow:
IF A corrector EDI transaction does not contain importer information
AND Previous importer data existed for the shipment
THEN:
• The system processes importer data deletion while preserving backup data if available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when corrector edi removes importer data and backup importer data exists.
Trigger Criteria:
Context: Corrector EDI removes importer data and backup importer data exists
Applied to: Retain Backup Data if Available
Action: The system processes importer data deletion
Logic Flow:
IF Corrector EDI removes importer data and backup importer data exists
AND The system processes importer data deletion
THEN:
• The system retains and uses backup importer data instead of clearing all importer information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi removes importer data and no backup data exists.
Trigger Criteria:
Context: Corrector EDI removes importer data and no backup data exists
Applied to: Clear Importer Fields
Action: The system processes importer data deletion
Logic Flow:
IF Corrector EDI removes importer data and no backup data exists
AND The system processes importer data deletion
THEN:
• The system clears importer name and related fields from the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when au table contains importer data and edi bol contains importer data with business number qualifier 'bn' or spaces.
Trigger Criteria:
Context: AU table contains importer data and EDI BOL contains importer data with business number qualifier 'BN' or spaces
Applied to: Reset CSA Indicator
Action: The system processes importer information from both sources
Logic Flow:
IF AU table contains importer data and EDI BOL contains importer data with business number qualifier 'BN' or spaces
AND The system processes importer information from both sources
THEN:
• The system turns off the CSA indicator to prevent duplicate processing
R-GCCCCADD-cbl-01719 (+12)File: GCCCCADD.cblBusiness Rule: Importer Data Backup for Corrector EDI
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when corrector edi transaction is being processed.
Trigger Criteria:
Context: A corrector EDI transaction is being processed
Applied to: Corrector EDI with Importer Data?
Action: The system evaluates if importer data, business number, and business number qualifier are all present
Logic Flow:
IF A corrector EDI transaction is being processed
AND The system evaluates if importer data, business number, and business number qualifier are all present
THEN:
• The system determines whether to proceed with importer data backup or skip the backup process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer data backup is required and counter is initialized to 3.
Trigger Criteria:
Context: Importer data backup is required and counter is initialized to 3
Applied to: Search Existing Importer Records
Action: The system searches customs records type 55 with sequence numbers from 3 to 24 until importer is found or maximum sequence is reached
Logic Flow:
IF Importer data backup is required and counter is initialized to 3
AND The system searches customs records type 55 with sequence numbers from 3 to 24 until importer is found or maximum sequence is reached
THEN:
• The system retrieves each record and checks if entity ID equals 'IM' to identify importer records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when customs record type 55 has been retrieved during the search process.
Trigger Criteria:
Context: A customs record type 55 has been retrieved during the search process
Applied to: Importer Record Found?
Action: The system checks if the entity ID code equals 'IM' (Importer)
Logic Flow:
IF A customs record type 55 has been retrieved during the search process
AND The system checks if the entity ID code equals 'IM' (Importer)
THEN:
• The system determines if this is a valid importer record requiring backup processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid importer record has been found in the customs database.
Trigger Criteria:
Context: A valid importer record has been found in the customs database
Applied to: Extract Current Importer Information
Action: The system processes the importer record to extract all relevant data fields
Logic Flow:
IF A valid importer record has been found in the customs database
AND The system processes the importer record to extract all relevant data fields
THEN:
• The system prepares to backup importer name, business identifiers, address, and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current importer record contains name information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Current importer record contains name information
Applied to: Backup Importer Name
Action: The system backs up importer data before applying corrector EDI changes
Logic Flow:
IF Current importer record contains name information
AND The system backs up importer data before applying corrector EDI changes
THEN:
• The importer name is stored in temporary backup field WS-TEMP-IM-NAME
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current importer record contains business number and qualifier information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Current importer record contains business number and qualifier information
Applied to: Backup Business Number & Qualifier
Action: The system backs up business identification data before applying corrector EDI changes
Logic Flow:
IF Current importer record contains business number and qualifier information
AND The system backs up business identification data before applying corrector EDI changes
THEN:
• The business number qualifier is stored in WS-TEMP-IM-QUALand business number is stored in WS-TEMP-IM-CDE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when current importer record contains csa indicator information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Current importer record contains CSA indicator information
Applied to: Backup CSA Indicator
Action: The system backs up CSA status before applying corrector EDI changes
Logic Flow:
IF Current importer record contains CSA indicator information
AND The system backs up CSA status before applying corrector EDI changes
THEN:
• The CSA indicator value is stored in temporary backup field WS-TEMP-CSA-IND
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when current importer record contains address information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Current importer record contains address information
Applied to: Backup Address Information
Action: The system backs up address data before applying corrector EDI changes
Logic Flow:
IF Current importer record contains address information
AND The system backs up address data before applying corrector EDI changes
THEN:
• Address line 1 is stored in WS-TEMP-IM-ADR1and address line 2 is stored in WS-TEMP-IM-ADR2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current importer record contains geographic location information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Current importer record contains geographic location information
Applied to: Backup City/State/Postal Data
Action: The system backs up location data before applying corrector EDI changes
Logic Flow:
IF Current importer record contains geographic location information
AND The system backs up location data before applying corrector EDI changes
THEN:
• City name is stored in WS-TEMP-IM-CITY, state/province code in WS-TEMP-IM-PROV, and postal code in WS-TEMP-IM-POSTAL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when current importer record contains country code information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Current importer record contains country code information
Applied to: Backup Country Code
Action: The system backs up country data before applying corrector EDI changes
Logic Flow:
IF Current importer record contains country code information
AND The system backs up country data before applying corrector EDI changes
THEN:
• The country code is stored in temporary backup field WS-TEMP-IM-CTRY
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when current importer record contains contact information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Current importer record contains contact information
Applied to: Backup Contact Information
Action: The system backs up contact data before applying corrector EDI changes
Logic Flow:
IF Current importer record contains contact information
AND The system backs up contact data before applying corrector EDI changes
THEN:
• Contact function code is stored in WS-TEMP-IM-CONT-CDE, person name in WS-TEMP-IM-PER-NAME, communication qualifier in WS-TEMP-IM-COM-QUAL, and communication number in WS-TEMP-IM-COM-NUM
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all importer data fields have been successfully backed up to temporary storage. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All importer data fields have been successfully backed up to temporary storage
Applied to: Set Backup Complete Flag
Action: The backup process completes without errors
Logic Flow:
IF All importer data fields have been successfully backed up to temporary storage
AND The backup process completes without errors
THEN:
• The system sets WS-TEMP-IMP-FOUND flag to indicate successful backup completion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer data has been successfully backed up and backup complete flag is set.
Trigger Criteria:
Context: Importer data has been successfully backed up and backup complete flag is set
Applied to: Clear Current Importer Fields
Action: The system prepares to process corrector EDI changes
Logic Flow:
IF Importer data has been successfully backed up and backup complete flag is set
AND The system prepares to process corrector EDI changes
THEN:
• The original importer, business number, and business number qualifier fields are cleared to spaces
R-GCCCCADD-cbl-01732 (+8)File: GCCCCADD.cblBusiness Rule: CSA Indicator Management for Importer Data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment is being processed for customs manifest creation
Applied to: CSA Indicator Already On?
Action: The system checks the current CSA indicator status
Logic Flow:
IF A shipment is being processed for customs manifest creation
AND The system checks the current CSA indicator status
THEN:
• If CSA indicator is already on, maintain the current status, otherwise proceed to check data sources
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when csa indicator is not currently active and au table lookup is required.
Trigger Criteria:
Context: CSA indicator is not currently active and AU table lookup is required
Applied to: AU Table Has Importer Data?
Action: The system searches AU table using consignee CHOP code and commodity code
Logic Flow:
IF CSA indicator is not currently active and AU table lookup is required
AND The system searches AU table using consignee CHOP code and commodity code
THEN:
• If AU table contains matching importer data, proceed to retrieve it, otherwise check EDI data sources
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when csa indicator is not active and au table has no importer data.
Trigger Criteria:
Context: CSA indicator is not active and AU table has no importer data
Applied to: EDI Has Importer Data?
Action: The system checks EDI BOL for importer N1 segments
Logic Flow:
IF CSA indicator is not active and AU table has no importer data
AND The system checks EDI BOL for importer N1 segments
THEN:
• If EDI contains importer data, proceed to validate business number qualifier, otherwise maintain current CSA status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when au table contains importer data for the consignee and commodity.
Trigger Criteria:
Context: AU table contains importer data for the consignee and commodity
Applied to: Get AU Importer Data
Action: The system retrieves AU importer information
Logic Flow:
IF AU table contains importer data for the consignee and commodity
AND The system retrieves AU importer information
THEN:
• Set importer name and business number from AU table data, set business number qualifier to 'M5', and activate CSA indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi contains importer data with business number qualifier.
Trigger Criteria:
Context: EDI contains importer data with business number qualifier
Applied to: Business Number Qualifier BN or Blank?
Action: The system checks if business number qualifier is 'BN' or blank
Logic Flow:
IF EDI contains importer data with business number qualifier
AND The system checks if business number qualifier is 'BN' or blank
THEN:
• If qualifier is 'BN' or blank, turn off CSA indicator, otherwise maintain current status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi contains importer data with business number qualifier.
Trigger Criteria:
Context: EDI contains importer data with business number qualifier
Applied to: Turn CSA Indicator Off
Action: Business number qualifier is 'BN' or blank spaces
Logic Flow:
IF EDI contains importer data with business number qualifier
AND Business number qualifier is 'BN' or blank spaces
THEN:
• Turn off CSA indicator to prevent automatic CSA processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment has been processed for csa indicator management.
Trigger Criteria:
Context: A shipment has been processed for CSA indicator management
Applied to: Transit or Return Shipment?
Action: The shipment is identified as transit (in-transit status) or return movement
Logic Flow:
IF A shipment has been processed for CSA indicator management
AND The shipment is identified as transit (in-transit status) or return movement
THEN:
• Turn off CSA indicator and clear all importer data fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when au table contains valid importer data for the shipment.
Trigger Criteria:
Context: AU table contains valid importer data for the shipment
Applied to: Set CSA Indicator On
Action: Importer information is successfully retrieved from AU table
Logic Flow:
IF AU table contains valid importer data for the shipment
AND Importer information is successfully retrieved from AU table
THEN:
• Set CSA indicator to active status and populate importer fields with AU data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment is identified as transit or return movement.
Trigger Criteria:
Context: A shipment is identified as transit or return movement
Applied to: Clear Importer Data
Action: CSA indicator override is applied
Logic Flow:
IF A shipment is identified as transit or return movement
AND CSA indicator override is applied
THEN:
• Clear importer name, business number, and business number qualifier fields
R-GCCCCADD-cbl-01741 (+8)File: GCCCCADD.cblBusiness Rule: Importer Business Number Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bill of lading key exists for the shipment.
Trigger Criteria:
Context: An EDI bill of lading key exists for the shipment
Applied to: Retrieve EDI N1 Importer Segment
Action: The system needs to process importer business number information
Logic Flow:
IF An EDI bill of lading key exists for the shipment
AND The system needs to process importer business number information
THEN:
• The system retrieves the N1 importer segment from the EDI data using the bill of lading key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system has attempted to retrieve the n1 importer segment.
Trigger Criteria:
Context: The system has attempted to retrieve the N1 importer segment
Applied to: N1 Importer Segment Found?
Action: The retrieval operation completes
Logic Flow:
IF The system has attempted to retrieve the N1 importer segment
AND The retrieval operation completes
THEN:
• If the segment is found, proceed with business number extraction, otherwise skip business number processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid n1 importer segment exists in the edi data.
Trigger Criteria:
Context: A valid N1 importer segment exists in the EDI data
Applied to: Extract Business Number Qualifier from N1-ID-CODE-QUAL
Action: The system processes the importer identification information
Logic Flow:
IF A valid N1 importer segment exists in the EDI data
AND The system processes the importer identification information
THEN:
• The business number qualifier is extracted from the N1-ID-CODE-QUAL field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid n1 importer segment exists in the edi data.
Trigger Criteria:
Context: A valid N1 importer segment exists in the EDI data
Applied to: Set Importer Name from N1-NAME
Action: The system processes importer identification information
Logic Flow:
IF A valid N1 importer segment exists in the EDI data
AND The system processes importer identification information
THEN:
• The importer name is extracted from N1-NAMEand stored in the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid n1 importer segment exists with business number qualifier.
Trigger Criteria:
Context: A valid N1 importer segment exists with business number qualifier
Applied to: Extract Business Number from N1-ID-CODE
Action: The system processes the importer identification information
Logic Flow:
IF A valid N1 importer segment exists with business number qualifier
AND The system processes the importer identification information
THEN:
• The business number is extracted from the N1-ID-CODE field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when business number qualifier has been extracted from the edi n1 segment.
Trigger Criteria:
Context: A business number qualifier has been extracted from the EDI N1 segment
Applied to: Store Business Number Qualifier in GCCC-BUSINESS-NBR-QUAL
Action: The system updates the customs record
Logic Flow:
IF A business number qualifier has been extracted from the EDI N1 segment
AND The system updates the customs record
THEN:
• The qualifier is stored in the GCCC-BUSINESS-NBR-QUAL field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when business number has been extracted from the edi n1 segment.
Trigger Criteria:
Context: A business number has been extracted from the EDI N1 segment
Applied to: Store Business Number in GCCC-BUSINESS-NBR
Action: The system updates the customs record
Logic Flow:
IF A business number has been extracted from the EDI N1 segment
AND The system updates the customs record
THEN:
• The business number is stored in the GCCC-BUSINESS-NBR field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when business number and qualifier have been extracted from the edi n1 segment.
Trigger Criteria:
Context: Business number and qualifier have been extracted from the EDI N1 segment
Applied to: Update Customs Record with Business Number Data
Action: The system processes the importer information
Logic Flow:
IF Business number and qualifier have been extracted from the EDI N1 segment
AND The system processes the importer information
THEN:
• The customs record is updated with both the business number and qualifier in the appropriate fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer business number information has been successfully extracted and stored.
Trigger Criteria:
Context: Importer business number information has been successfully extracted and stored
Applied to: Mark Importer Data as Found
Action: The processing of the N1 importer segment completes
Logic Flow:
IF Importer business number information has been successfully extracted and stored
AND The processing of the N1 importer segment completes
THEN:
• The system sets the importer found flag to indicate successful processing
R-GCCCCADD-cbl-01750 (+14)File: GCCCCADD.cblBusiness Rule: Importer Address Data Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bill of lading exists with importer entity type 'im'.
Trigger Criteria:
Context: An EDI Bill of Lading exists with importer entity type 'IM'
Applied to: Get Importer N3 Segment from EDI BOL
Action: The system processes importer address information
Logic Flow:
IF An EDI Bill of Lading exists with importer entity type 'IM'
AND The system processes importer address information
THEN:
• The system retrieves the N3 segment containing address line 1 and address line 2 from the EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bill of lading exists with importer entity type 'im'.
Trigger Criteria:
Context: An EDI Bill of Lading exists with importer entity type 'IM'
Applied to: Get Importer N4 Segment from EDI BOL
Action: The system processes importer geographic information
Logic Flow:
IF An EDI Bill of Lading exists with importer entity type 'IM'
AND The system processes importer geographic information
THEN:
• The system retrieves the N4 segment containing city, state, postal code, and country data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system is processing importer address information.
Trigger Criteria:
Context: The system is processing importer address information
Applied to: N3 Segment Found?
Action: The N3 segment retrieval is attempted from EDI BOL
Logic Flow:
IF The system is processing importer address information
AND The N3 segment retrieval is attempted from EDI BOL
THEN:
• If N3 segment is found, extract address details; if not found, set default address values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n3 segment exists in the edi bol for the importer.
Trigger Criteria:
Context: An N3 segment exists in the EDI BOL for the importer
Applied to: Extract Address Line 1 from N3
Action: The system processes the N3 segment
Logic Flow:
IF An N3 segment exists in the EDI BOL for the importer
AND The system processes the N3 segment
THEN:
• The system extracts the first address line from field D2-ADDL-NAME-ADDR-1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address line 1 has been extracted from the n3 segment.
Trigger Criteria:
Context: Address Line 1 has been extracted from the N3 segment
Applied to: Address Line 1 Empty?
Action: The system validates the address completeness
Logic Flow:
IF Address Line 1 has been extracted from the N3 segment
AND The system validates the address completeness
THEN:
• If Address Line 1 is empty or contains only spaces/low-values, set it to 'NA'; otherwise use the extracted value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when primary address line is empty, spaces, or low-values.
Trigger Criteria:
Context: The primary address line is empty, spaces, or low-values
Applied to: Set Address Line 1 to 'NA'
Action: The system processes address validation
Logic Flow:
IF The primary address line is empty, spaces, or low-values
AND The system processes address validation
THEN:
• The system sets Address Line 1 to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n3 segment exists and address line 1 has been processed.
Trigger Criteria:
Context: An N3 segment exists and Address Line 1 has been processed
Applied to: Extract Address Line 2 from N3
Action: The system continues N3 segment processing
Logic Flow:
IF An N3 segment exists and Address Line 1 has been processed
AND The system continues N3 segment processing
THEN:
• The system extracts Address Line 2 from field D2-ADDL-NAME-ADDR-2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no n3 segment is found in the edi bol.
Trigger Criteria:
Context: No N3 segment is found in the EDI BOL
Applied to: Set Default Address Line 1 to 'NA'
Action: The system processes importer address information
Logic Flow:
IF No N3 segment is found in the EDI BOL
AND The system processes importer address information
THEN:
• The system sets Address Line 1 to 'NA' and clears Address Line 2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no n3 segment is found in the edi bol.
Trigger Criteria:
Context: No N3 segment is found in the EDI BOL
Applied to: Clear Address Line 2
Action: The system sets default address values
Logic Flow:
IF No N3 segment is found in the EDI BOL
AND The system sets default address values
THEN:
• The system clears Address Line 2 field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system is processing importer geographic information.
Trigger Criteria:
Context: The system is processing importer geographic information
Applied to: N4 Segment Found?
Action: The N4 segment retrieval is attempted from EDI BOL
Logic Flow:
IF The system is processing importer geographic information
AND The N4 segment retrieval is attempted from EDI BOL
THEN:
• If N4 segment is found, extract geographic details; if not found, clear all geographic fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n4 segment exists in the edi bol for the importer.
Trigger Criteria:
Context: An N4 segment exists in the EDI BOL for the importer
Applied to: Extract City Name from N4
Action: The system processes the N4 segment
Logic Flow:
IF An N4 segment exists in the EDI BOL for the importer
AND The system processes the N4 segment
THEN:
• The system extracts the city name from field D4-CITY-NAME
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n4 segment exists and city name has been extracted.
Trigger Criteria:
Context: An N4 segment exists and city name has been extracted
Applied to: Extract State/Province Code from N4
Action: The system continues N4 segment processing
Logic Flow:
IF An N4 segment exists and city name has been extracted
AND The system continues N4 segment processing
THEN:
• The system extracts the state/province code from field D4-STATE-PROV-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n4 segment exists and state/province has been extracted.
Trigger Criteria:
Context: An N4 segment exists and state/province has been extracted
Applied to: Extract Postal Code from N4
Action: The system continues N4 segment processing
Logic Flow:
IF An N4 segment exists and state/province has been extracted
AND The system continues N4 segment processing
THEN:
• The system extracts the postal code from field D4-POSTAL-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when n4 segment exists and postal code has been extracted.
Trigger Criteria:
Context: An N4 segment exists and postal code has been extracted
Applied to: Extract Country Code from N4
Action: The system completes N4 segment processing
Logic Flow:
IF An N4 segment exists and postal code has been extracted
AND The system completes N4 segment processing
THEN:
• The system extracts the country code from field D4-COUNTRY-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no n4 segment is found in the edi bol.
Trigger Criteria:
Context: No N4 segment is found in the EDI BOL
Applied to: Clear All N4 Address Fields
Action: The system processes importer geographic information
Logic Flow:
IF No N4 segment is found in the EDI BOL
AND The system processes importer geographic information
THEN:
• The system clears all N4 address fields including city, state, postal code, and country
R-GCCCCADD-cbl-01765 (+10)File: GCCCCADD.cblBusiness Rule: Importer Contact Information Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer contact information processing is starting.
Trigger Criteria:
Context: Importer contact information processing is starting
Applied to: Initialize Contact Information Fields
Action: Contact information fields need to be initialized
Logic Flow:
IF Importer contact information processing is starting
AND Contact information fields need to be initialized
THEN:
• All contact function code, person name, communication qualifier, and communication number fields are cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer contact information processing is required.
Trigger Criteria:
Context: Importer contact information processing is required
Applied to: Check if EDI BOL Data Available
Action: System checks for EDI BOL data availability using the EDI BOL key
Logic Flow:
IF Importer contact information processing is required
AND System checks for EDI BOL data availability using the EDI BOL key
THEN:
• System determines if valid EDI BOL data exists for contact information extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data is available for the shipment.
Trigger Criteria:
Context: EDI BOL data is available for the shipment
Applied to: Retrieve Importer PER Segment from EDI
Action: System retrieves importer PER segment using entity type 'IM' and sequence '01' and segment type 'GP'
Logic Flow:
IF EDI BOL data is available for the shipment
AND System retrieves importer PER segment using entity type 'IM' and sequence '01' and segment type 'GP'
THEN:
• Importer contact person segment is retrieved from EDI BOL data or marked as not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer per segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: Importer PER segment is successfully retrieved from EDI BOL
Applied to: Extract Contact Function Code
Action: System processes the PER segment contact function code field
Logic Flow:
IF Importer PER segment is successfully retrieved from EDI BOL
AND System processes the PER segment contact function code field
THEN:
• Contact function code is extracted and stored in the customs record contact function code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer per segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: Importer PER segment is successfully retrieved from EDI BOL
Applied to: Extract Contact Person Name
Action: System processes the PER segment contact name field
Logic Flow:
IF Importer PER segment is successfully retrieved from EDI BOL
AND System processes the PER segment contact name field
THEN:
• Contact person name is extracted and stored in the customs record contact name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer per segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: Importer PER segment is successfully retrieved from EDI BOL
Applied to: Extract Communication Number Qualifier
Action: System processes the PER segment communication number qualifier field
Logic Flow:
IF Importer PER segment is successfully retrieved from EDI BOL
AND System processes the PER segment communication number qualifier field
THEN:
• Communication number qualifier is extracted and stored in the customs record communication qualifier field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer per segment is successfully retrieved from edi bol.
Trigger Criteria:
Context: Importer PER segment is successfully retrieved from EDI BOL
Applied to: Extract Communication Number
Action: System processes the PER segment communication number field
Logic Flow:
IF Importer PER segment is successfully retrieved from EDI BOL
AND System processes the PER segment communication number field
THEN:
• Communication number is extracted and stored in the customs record communication number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when contact information has been extracted from edi per segment.
Trigger Criteria:
Context: Contact information has been extracted from EDI PER segment
Applied to: Store Contact Information in Customs Record
Action: All contact fields (function code, person name, communication qualifier, communication number) are populated
Logic Flow:
IF Contact information has been extracted from EDI PER segment
AND All contact fields (function code, person name, communication qualifier, communication number) are populated
THEN:
• Contact information is stored in the customs record type 55 PER segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data is not available or importer per segment is not found.
Trigger Criteria:
Context: EDI BOL data is not available or importer PER segment is not found
Applied to: Clear Contact Information Fields
Action: Contact information cannot be extracted from EDI sources
Logic Flow:
IF EDI BOL data is not available or importer PER segment is not found
AND Contact information cannot be extracted from EDI sources
THEN:
• All contact information fields are cleared to spaces in the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when contact information has been processed from available sources.
Trigger Criteria:
Context: Contact information has been processed from available sources
Applied to: Validate Contact Information Requirements
Action: System validates contact data completeness and format requirements
Logic Flow:
IF Contact information has been processed from available sources
AND System validates contact data completeness and format requirements
THEN:
• Contact information is validated for required fields and proper format according to customs requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when contact information validation has failed.
Trigger Criteria:
Context: Contact information validation has failed
Applied to: Generate Validation Error Messages
Action: Required contact fields are missing or invalid
Logic Flow:
IF Contact information validation has failed
AND Required contact fields are missing or invalid
THEN:
• Appropriate validation error messages are generated and added to the error message collection
R-GCCCCADD-cbl-01776 (+4)File: GCCCCADD.cblBusiness Rule: Importer Data Deletion by Corrector
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data exists from previous record 55 processing with entity id 'im' and importer name is present.
Trigger Criteria:
Context: Importer data exists from previous record 55 processing with entity ID 'IM' and importer name is present
Applied to: Backup Original Importer Data
Action: The system processes corrector EDI that may modify or delete importer information
Logic Flow:
IF Importer data exists from previous record 55 processing with entity ID 'IM' and importer name is present
AND The system processes corrector EDI that may modify or delete importer information
THEN:
• All original importer data is backed up including CHOP code, name, business number qualifier, business number, CSA indicator, address information, city/state/postal data, and contact information, and backup found flag is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when corrector edi processing is active and importer entity data is being evaluated.
Trigger Criteria:
Context: Corrector EDI processing is active and importer entity data is being evaluated
Applied to: Corrector EDI Deletes Importer?
Action: The corrector EDI deletes importer information from the current transaction
Logic Flow:
IF Corrector EDI processing is active and importer entity data is being evaluated
AND The corrector EDI deletes importer information from the current transaction
THEN:
• If backup importer data is available, restore from backup data; otherwise clear importer entity ID and set importer not found status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi has deleted current importer data and backup importer data is available from previous processing.
Trigger Criteria:
Context: Corrector EDI has deleted current importer data and backup importer data is available from previous processing
Applied to: Restore from Backup Data
Action: The system needs to restore importer information
Logic Flow:
IF Corrector EDI has deleted current importer data and backup importer data is available from previous processing
AND The system needs to restore importer information
THEN:
• All backed up importer data is restored including CHOP code as SC301, entity ID as 'IM', name as N102, business number qualifier as N103, business number as N104, CSA indicator, address information as N301/N302, city/state/postal as N401/N402/N403/N404, and contact information as PER01/PER02/PER03/PER04, and importer found flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when corrector edi has deleted current importer data and no backup importer data is available.
Trigger Criteria:
Context: Corrector EDI has deleted current importer data and no backup importer data is available
Applied to: Clear Importer Entity ID
Action: The system processes the importer data deletion
Logic Flow:
IF Corrector EDI has deleted current importer data and no backup importer data is available
AND The system processes the importer data deletion
THEN:
• Importer entity ID is cleared to spaces andif record 55 importer not found flag is set, clear the importer name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when au table importer data is found and record 55 importer data is found and business number qualifier is 'bn' or spaces.
Trigger Criteria:
Context: AU table importer data is found and record 55 importer data is found and business number qualifier is 'BN' or spaces
Applied to: Set Backup Found Flag
Action: The system processes importer data from multiple sources
Logic Flow:
IF AU table importer data is found and record 55 importer data is found and business number qualifier is 'BN' or spaces
AND The system processes importer data from multiple sources
THEN:
• CSA indicator is set to off to prevent conflicting importer data processing
R-GCCCCADD-cbl-01781 (+11)File: GCCCCADD.cblBusiness Rule: EDI BOL GA Segment Retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when request to retrieve geographic address information from edi bol data.
Trigger Criteria:
Context: A request to retrieve geographic address information from EDI BOL data
Applied to: Initialize EDI BOL Request Parameters
Action: The system initializes the EDI BOL request parameters
Logic Flow:
IF A request to retrieve geographic address information from EDI BOL data
AND The system initializes the EDI BOL request parameters
THEN:
• The address segment structure is cleared and ready for data retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol request is being prepared for geographic address retrieval.
Trigger Criteria:
Context: An EDI BOL request is being prepared for geographic address retrieval
Applied to: Set Segment Type to EBSNRSA
Action: The system configures the segment type
Logic Flow:
IF An EDI BOL request is being prepared for geographic address retrieval
AND The system configures the segment type
THEN:
• The segment type is set to EBSNRSA to target address segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol request is being prepared for geographic address retrieval.
Trigger Criteria:
Context: An EDI BOL request is being prepared for geographic address retrieval
Applied to: Set Function Code to GU - Get Unique
Action: The system sets the function code
Logic Flow:
IF An EDI BOL request is being prepared for geographic address retrieval
AND The system sets the function code
THEN:
• The function code is set to GU to retrieve a unique segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when geographic address segment retrieval is requested for record 55 processing.
Trigger Criteria:
Context: A geographic address segment retrieval is requested for record 55 processing
Applied to: Set EDI BOL Key for Record 55
Action: The system assigns the EDI BOL key
Logic Flow:
IF A geographic address segment retrieval is requested for record 55 processing
AND The system assigns the EDI BOL key
THEN:
• The EDI BOL key for record 55 is set as the root key for the request
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when geographic address retrieval is requested for notify party information.
Trigger Criteria:
Context: A geographic address retrieval is requested for notify party information
Applied to: Set Type-1 to NN - Notify Party
Action: The system configures the primary entity type
Logic Flow:
IF A geographic address retrieval is requested for notify party information
AND The system configures the primary entity type
THEN:
• Type-1 is set to NN to identify notify party segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when specific notify party occurrence needs to be identified for geographic address retrieval.
Trigger Criteria:
Context: A specific notify party occurrence needs to be identified for geographic address retrieval
Applied to: Set Sequence Number from NN Counter
Action: The system assigns the sequence number
Logic Flow:
IF A specific notify party occurrence needs to be identified for geographic address retrieval
AND The system assigns the sequence number
THEN:
• The sequence number is set from the NN counter to target the correct notify party occurrence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when geographic address information is needed for a notify party.
Trigger Criteria:
Context: Geographic address information is needed for a notify party
Applied to: Set Type-2 to GA - Geographic Address
Action: The system configures the secondary segment type
Logic Flow:
IF Geographic address information is needed for a notify party
AND The system configures the secondary segment type
THEN:
• Type-2 is set to GA to identify geographic address segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when specific geographic address occurrence needs to be identified within notify party data.
Trigger Criteria:
Context: A specific geographic address occurrence needs to be identified within notify party data
Applied to: Set Geographic Address Sequence
Action: The system assigns the geographic address sequence
Logic Flow:
IF A specific geographic address occurrence needs to be identified within notify party data
AND The system assigns the geographic address sequence
THEN:
• The sequence number is set to identify the correct geographic address occurrence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol segment retrieval requires exact matching criteria.
Trigger Criteria:
Context: An EDI BOL segment retrieval requires exact matching criteria
Applied to: Set Operator to Equals
Action: The system configures the search operator
Logic Flow:
IF An EDI BOL segment retrieval requires exact matching criteria
AND The system configures the search operator
THEN:
• The operator is set to equals for exact segment matching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all edi bol request parameters are configured for geographic address retrieval. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All EDI BOL request parameters are configured for geographic address retrieval
Applied to: Call EDI BOL I/O Service
Action: The system calls the EDI BOL I/O service
Logic Flow:
IF All EDI BOL request parameters are configured for geographic address retrieval
AND The system calls the EDI BOL I/O service
THEN:
• The service is invoked to retrieve the geographic address segment from EDI BOL data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol i/o service has been called to retrieve a geographic address segment.
Trigger Criteria:
Context: The EDI BOL I/O service has been called to retrieve a geographic address segment
Applied to: Set GA Found Flag
Action: The geographic address segment is successfully found and retrieved
Logic Flow:
IF The EDI BOL I/O service has been called to retrieve a geographic address segment
AND The geographic address segment is successfully found and retrieved
THEN:
• The GA found flag is set to indicate successful retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol i/o service has been called to retrieve a geographic address segment.
Trigger Criteria:
Context: The EDI BOL I/O service has been called to retrieve a geographic address segment
Applied to: Set GA Not Found Flag
Action: The geographic address segment is not found in the EDI BOL data
Logic Flow:
IF The EDI BOL I/O service has been called to retrieve a geographic address segment
AND The geographic address segment is not found in the EDI BOL data
THEN:
• The GA not found flag is set to indicate unsuccessful retrieval
Business Justification: Establishes the required business protocol to be followed when consolidated load indicator search process is initiated.
Trigger Criteria:
Context: A consolidated load indicator search process is initiated
Applied to: Initialize CNS Search Variables
Action: The system begins to search for CNS segments
Logic Flow:
IF A consolidated load indicator search process is initiated
AND The system begins to search for CNS segments
THEN:
• The CNS indicator flag is set to not found and sequence counter is initialized to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consolidated load search process is starting.
Trigger Criteria:
Context: The consolidated load search process is starting
Applied to: Set CNS Indicator Not Found
Action: Initial search parameters are being set
Logic Flow:
IF The consolidated load search process is starting
AND Initial search parameters are being set
THEN:
• The CNS indicator flag is set to not found state
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when search for consolidated load indicators is beginning.
Trigger Criteria:
Context: A search for consolidated load indicators is beginning
Applied to: Set Sequence Counter to 1
Action: The system initializes search parameters
Logic Flow:
IF A search for consolidated load indicators is beginning
AND The system initializes search parameters
THEN:
• The sequence counter is set to 1 to start searching from the first segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when sequence number for cns segment search.
Trigger Criteria:
Context: A sequence number for CNS segment search
Applied to: Retrieve EBSBCKS Segment
Action: The system retrieves EBSBCKS segment data using the current sequence number
Logic Flow:
IF A sequence number for CNS segment search
AND The system retrieves EBSBCKS segment data using the current sequence number
THEN:
• The segment data is loaded for consolidated load indicator evaluation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when attempt to retrieve ebsbcks segment data.
Trigger Criteria:
Context: An attempt to retrieve EBSBCKS segment data
Applied to: EBSBCKS Segment Found?
Action: The system checks if the segment was successfully retrieved
Logic Flow:
IF An attempt to retrieve EBSBCKS segment data
AND The system checks if the segment was successfully retrieved
THEN:
• The process continues to check special handling code if segment found, otherwise moves to termination check
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when successfully retrieved ebsbcks segment.
Trigger Criteria:
Context: A successfully retrieved EBSBCKS segment
Applied to: Special Handling Code = 'CNS'?
Action: The system examines the special handling code field
Logic Flow:
IF A successfully retrieved EBSBCKS segment
AND The system examines the special handling code field
THEN:
• If the code equals 'CNS', the consolidated indicator is found; otherwise, continue searching next sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when segment with special handling code 'cns' is found.
Trigger Criteria:
Context: A segment with special handling code 'CNS' is found
Applied to: Set CNS Indicator Found
Action: The system processes the consolidated load identification
Logic Flow:
IF A segment with special handling code 'CNS' is found
AND The system processes the consolidated load identification
THEN:
• The CNS indicator flag is set to found state
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when segment that does not contain 'cns' special handling code.
Trigger Criteria:
Context: A segment that does not contain 'CNS' special handling code
Applied to: Increment Sequence Counter
Action: The system continues searching for consolidated load indicators
Logic Flow:
IF A segment that does not contain 'CNS' special handling code
AND The system continues searching for consolidated load indicators
THEN:
• The sequence counter is incremented by 1 to check the next segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ongoing search for consolidated load indicators.
Trigger Criteria:
Context: An ongoing search for consolidated load indicators
Applied to: Counter > 98 OR CNS Found?
Action: The system evaluates continuation criteria
Logic Flow:
IF An ongoing search for consolidated load indicators
AND The system evaluates continuation criteria
THEN:
• If sequence counter exceeds 98 or CNS indicator is found, terminate search; otherwise continue with next segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cns special handling code has been found in the segment data.
Trigger Criteria:
Context: A CNS special handling code has been found in the segment data
Applied to: Set Consolidated Flag to 'Y'
Action: The system finalizes the consolidated load determination
Logic Flow:
IF A CNS special handling code has been found in the segment data
AND The system finalizes the consolidated load determination
THEN:
• The consolidated flag is set to 'Y' to indicate this is a consolidated shipment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all available segments have been searched and no cns special handling code was found.
Trigger Criteria:
Context: All available segments have been searched and no CNS special handling code was found
Applied to: Set Consolidated Flag to Space
Action: The system finalizes the consolidated load determination
Logic Flow:
IF All available segments have been searched and no CNS special handling code was found
AND The system finalizes the consolidated load determination
THEN:
• The consolidated flag is set to space to indicate this is not a consolidated shipment
R-GCCCCADD-cbl-01804 (+15)File: GCCCCADD.cblBusiness Rule: Customs Record 55 Sequential Processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when customs record 55 processing is starting.
Trigger Criteria:
Context: Customs record 55 processing is starting
Applied to: Initialize Record 55 Index to 3
Action: The system initializes the record processing sequence
Logic Flow:
IF Customs record 55 processing is starting
AND The system initializes the record processing sequence
THEN:
• The record index is set to 3 to allow for shipper (position 1) and consignee (position 2) records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when record 55 processing is being initialized.
Trigger Criteria:
Context: Record 55 processing is being initialized
Applied to: Clear Record 55 Array
Action: The system prepares to store new customs records
Logic Flow:
IF Record 55 processing is being initialized
AND The system prepares to store new customs records
THEN:
• The record 55 array is cleared of any previous data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper information is available from shipment data.
Trigger Criteria:
Context: Shipper information is available from shipment data
Applied to: Build Shipper Record - Sequence 0001
Action: The system builds the shipper record for customs
Logic Flow:
IF Shipper information is available from shipment data
AND The system builds the shipper record for customs
THEN:
• A record 55 with entity ID 'SH' and sequence '0001' is created with shipper details and stored in array position 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee information is available from shipment data.
Trigger Criteria:
Context: Consignee information is available from shipment data
Applied to: Build Consignee Record - Sequence 0002
Action: The system builds the consignee record for customs
Logic Flow:
IF Consignee information is available from shipment data
AND The system builds the consignee record for customs
THEN:
• A record 55 with entity ID 'CN' and sequence '0002' is created with consignee details and stored in array position 2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when new customs record needs to be added to the array.
Trigger Criteria:
Context: A new customs record needs to be added to the array
Applied to: Check Available Index Slots
Action: The system checks the current index position against maximum capacity
Logic Flow:
IF A new customs record needs to be added to the array
AND The system checks the current index position against maximum capacity
THEN:
• The system determines if there is available space in the record array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when current record index position is being evaluated.
Trigger Criteria:
Context: The current record index position is being evaluated
Applied to: Index Within Max Limit?
Action: The system checks if the index is less than or equal to the maximum sequence limit
Logic Flow:
IF The current record index position is being evaluated
AND The system checks if the index is less than or equal to the maximum sequence limit
THEN:
• Processing continues if within limit, otherwise the record is skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when customs record is being prepared for storage.
Trigger Criteria:
Context: A customs record is being prepared for storage
Applied to: Set CCN Key and Record Type 55
Action: The system sets the record identification fields
Logic Flow:
IF A customs record is being prepared for storage
AND The system sets the record identification fields
THEN:
• The CCN key is assigned to the record key field and record type is set to '55'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when customs record is being processed with a valid index position.
Trigger Criteria:
Context: A customs record is being processed with a valid index position
Applied to: Set Sequential Number from Index
Action: The system assigns the sequential number to the record
Logic Flow:
IF A customs record is being processed with a valid index position
AND The system assigns the sequential number to the record
THEN:
• The current index value is used as the sequential number for the record key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when customs record has been built and validated.
Trigger Criteria:
Context: A customs record has been built and validated
Applied to: Move Record to Array Position
Action: The system stores the record in the array
Logic Flow:
IF A customs record has been built and validated
AND The system stores the record in the array
THEN:
• The record is moved to the array position corresponding to the current index
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when customs record has been successfully stored in the array.
Trigger Criteria:
Context: A customs record has been successfully stored in the array
Applied to: Increment Index Counter
Action: The system prepares for the next record
Logic Flow:
IF A customs record has been successfully stored in the array
AND The system prepares for the next record
THEN:
• The index counter is incremented by 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when current entity record has been processed.
Trigger Criteria:
Context: The current entity record has been processed
Applied to: More Entities to Process?
Action: The system evaluates if more entities need processing
Logic Flow:
IF The current entity record has been processed
AND The system evaluates if more entities need processing
THEN:
• Processing continues with next entity if more exist, otherwise moves to finalization
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when record array has reached maximum capacity.
Trigger Criteria:
Context: The record array has reached maximum capacity
Applied to: Skip Record - Array Full
Action: An additional record needs to be processed
Logic Flow:
IF The record array has reached maximum capacity
AND An additional record needs to be processed
THEN:
• The record is skipped and processing continues with remaining entities
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all other entity records have been processed.
Trigger Criteria:
Context: All other entity records have been processed
Applied to: Finalize Importer Record Processing
Action: The system finalizes importer record handling
Logic Flow:
IF All other entity records have been processed
AND The system finalizes importer record handling
THEN:
• Importer data from AU table is processed if importer was found in AU table but not in record 55 data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer record needs to be added and au importer data was found.
Trigger Criteria:
Context: Importer record needs to be added and AU importer data was found
Applied to: 24 N1 Records Found?
Action: The system checks if 24 N1 data records were found
Logic Flow:
IF Importer record needs to be added and AU importer data was found
AND The system checks if 24 N1 data records were found
THEN:
• The 24th record is replaced if found, otherwise a new importer record is inserted
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when 24 n1 data records were found and importer data exists in au table.
Trigger Criteria:
Context: 24 N1 data records were found and importer data exists in AU table
Applied to: Replace 24th Record with Importer
Action: The system needs to add importer record
Logic Flow:
IF 24 N1 data records were found and importer data exists in AU table
AND The system needs to add importer record
THEN:
• The existing 24th record is replaced with importer data using REPL function
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when au importer data exists and 24 n1 records were not found.
Trigger Criteria:
Context: AU importer data exists and 24 N1 records were not found
Applied to: Insert New Importer Record
Action: The system adds the importer record
Logic Flow:
IF AU importer data exists and 24 N1 records were not found
AND The system adds the importer record
THEN:
• A new importer record is inserted with entity ID 'IM' and AU table data
R-GCCCCADD-cbl-01820 (+26)File: GCCCCADD.cblBusiness Rule: Importer Data Processing from EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system needs to process importer information.
Trigger Criteria:
Context: The system needs to process importer information
Applied to: Initialize Importer Segment
Action: Starting importer data processing
Logic Flow:
IF The system needs to process importer information
AND Starting importer data processing
THEN:
• The customs record segment GCSCCS55 should be cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol key exists for the shipment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Get EDI BOL Importer N1 Segment
Action: Retrieving importer N1 segment with entity type 'IM' and sequence '01'
Logic Flow:
IF An EDI BOL key exists for the shipment
AND Retrieving importer N1 segment with entity type 'IM' and sequence '01'
THEN:
• The system should call EDI BOL interface to get importer entity data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when request has been made to retrieve importer n1 segment.
Trigger Criteria:
Context: A request has been made to retrieve importer N1 segment
Applied to: N1 Segment Found?
Action: The EDI BOL interface returns a status code
Logic Flow:
IF A request has been made to retrieve importer N1 segment
AND The EDI BOL interface returns a status code
THEN:
• If status code is spaces then N1 segment is found, otherwise N1 segment is not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when n1 segment has been retrieved from edi bol.
Trigger Criteria:
Context: An N1 segment has been retrieved from EDI BOL
Applied to: Check Entity ID Code
Action: Checking the entity ID code in the N1 segment
Logic Flow:
IF An N1 segment has been retrieved from EDI BOL
AND Checking the entity ID code in the N1 segment
THEN:
• The entity ID code should be extracted for validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity id code has been extracted from n1 segment.
Trigger Criteria:
Context: An entity ID code has been extracted from N1 segment
Applied to: Entity ID = 'IM'?
Action: The entity ID code is compared against importer designation
Logic Flow:
IF An entity ID code has been extracted from N1 segment
AND The entity ID code is compared against importer designation
THEN:
• If entity ID equals 'IM' then it is a valid importer entity, otherwise it is not an importer
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid importer n1 segment with entity id 'im'.
Trigger Criteria:
Context: A valid importer N1 segment with entity ID 'IM'
Applied to: Extract Importer Name
Action: Processing the importer entity data
Logic Flow:
IF A valid importer N1 segment with entity ID 'IM'
AND Processing the importer entity data
THEN:
• The importer name should be extracted from N1-NAME field and stored in both customs record and importer field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid importer n1 segment.
Trigger Criteria:
Context: A valid importer N1 segment
Applied to: Extract Business Number Qualifier & Extract Business Number
Action: Processing importer identification data
Logic Flow:
IF A valid importer N1 segment
AND Processing importer identification data
THEN:
• The business number qualifier should be extracted from N1-ID-CODE-QUALIFIERand stored in both customs record and business number qualifier field
• The business number should be extracted from N1-ID-CODEand stored in both customs record and business number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer business number has been extracted.
Trigger Criteria:
Context: Importer business number has been extracted
• The system should set the importer found flag to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer entity data is being processed.
Trigger Criteria:
Context: Importer entity data is being processed
Applied to: Set Consignee CHOP Code
Action: Setting up importer record relationships
Logic Flow:
IF Importer entity data is being processed
AND Setting up importer record relationships
THEN:
• The consignee CHOP code should be assigned to the importer customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n1 segment has been processed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Importer N1 segment has been processed
Applied to: Get Importer N3 Address Segment
Action: Retrieving importer address data with entity type 'IM', sequence '01', and address type 'IC'
Logic Flow:
IF Importer N1 segment has been processed
AND Retrieving importer address data with entity type 'IM', sequence '01', and address type 'IC'
THEN:
• The system should call EDI BOL interface to get importer address segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when request has been made to retrieve importer n3 address segment.
Trigger Criteria:
Context: A request has been made to retrieve importer N3 address segment
Applied to: N3 Address Found?
Action: The EDI BOL interface returns a status code
Logic Flow:
IF A request has been made to retrieve importer N3 address segment
AND The EDI BOL interface returns a status code
THEN:
• If status code is spaces then address segment is found, otherwise address segment is not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer n3 address segment is available.
Trigger Criteria:
Context: Importer N3 address segment is available
Applied to: Extract Address Line 1
Action: Processing address information
Logic Flow:
IF Importer N3 address segment is available
AND Processing address information
THEN:
• Address line 1 should be extracted from D2-ADDL-NAME-ADDR-1 field and stored in customs record, or set to 'NA' if blank or low-values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n3 address segment is available and address line 1 has been processed.
Trigger Criteria:
Context: Importer N3 address segment is available and address line 1 has been processed
Applied to: Extract Address Line 2
Action: Processing additional address information
Logic Flow:
IF Importer N3 address segment is available and address line 1 has been processed
AND Processing additional address information
THEN:
• Address line 2 should be extracted from D2-ADDL-NAME-ADDR-2 field and stored in customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer n3 address segment is not found.
Trigger Criteria:
Context: Importer N3 address segment is not found
Applied to: Set Default 'NA' Address
Action: Address information is required for customs record
Logic Flow:
IF Importer N3 address segment is not found
AND Address information is required for customs record
THEN:
• Address line 1 should be set to 'NA' and N3 data section should be cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer address processing is in progress. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Importer address processing is in progress
Applied to: Get Importer N4 City/State Segment
Action: Retrieving importer city/state data with entity type 'IM', sequence '01', and city type 'IA'
Logic Flow:
IF Importer address processing is in progress
AND Retrieving importer city/state data with entity type 'IM', sequence '01', and city type 'IA'
THEN:
• The system should call EDI BOL interface to get importer city/state segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when request has been made to retrieve importer n4 city/state segment.
Trigger Criteria:
Context: A request has been made to retrieve importer N4 city/state segment
Applied to: N4 Segment Found?
Action: The EDI BOL interface returns a status code
Logic Flow:
IF A request has been made to retrieve importer N4 city/state segment
AND The EDI BOL interface returns a status code
THEN:
• If status code is spaces then city/state segment is found, otherwise city/state segment is not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n4 city/state segment is available.
Trigger Criteria:
Context: Importer N4 city/state segment is available
Applied to: Extract City Name
Action: Processing city information
Logic Flow:
IF Importer N4 city/state segment is available
AND Processing city information
THEN:
• City name should be extracted from D4-CITY-NAME field and stored in customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n4 city/state segment is available.
Trigger Criteria:
Context: Importer N4 city/state segment is available
Applied to: Extract State/Province Code
Action: Processing state/province information
Logic Flow:
IF Importer N4 city/state segment is available
AND Processing state/province information
THEN:
• State/province code should be extracted from D4-STATE-PROV-CODE field and stored in customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n4 city/state segment is available.
Trigger Criteria:
Context: Importer N4 city/state segment is available
Applied to: Extract Postal Code
Action: Processing postal information
Logic Flow:
IF Importer N4 city/state segment is available
AND Processing postal information
THEN:
• Postal code should be extracted from D4-POSTAL-CODE field and stored in customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n4 city/state segment is available.
Trigger Criteria:
Context: Importer N4 city/state segment is available
Applied to: Extract Country Code
Action: Processing country information
Logic Flow:
IF Importer N4 city/state segment is available
AND Processing country information
THEN:
• Country code should be extracted from D4-COUNTRY-CODE field and stored in customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n4 city/state segment is not found.
Trigger Criteria:
Context: Importer N4 city/state segment is not found
Applied to: Clear N4 Data
Action: City/state information processing is required
Logic Flow:
IF Importer N4 city/state segment is not found
AND City/state information processing is required
THEN:
• The N4 data section in customs record should be cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer address processing is complete.
Trigger Criteria:
Context: Importer address processing is complete
Applied to: Clear Contact Information
Action: Finalizing importer record setup
Logic Flow:
IF Importer address processing is complete
AND Finalizing importer record setup
THEN:
• All contact information fields in customs record should be cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer record has been populated with available data.
Trigger Criteria:
Context: Importer record has been populated with available data
Applied to: Validate N1 Segment Data
Action: Validating the importer record for customs compliance
Logic Flow:
IF Importer record has been populated with available data
AND Validating the importer record for customs compliance
THEN:
• The system should perform N1 segment validation to ensure data integrity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer record has been validated successfully.
Trigger Criteria:
Context: Importer record has been validated successfully
Applied to: Insert Customs Record 55
Action: Storing importer information for customs processing
Logic Flow:
IF Importer record has been validated successfully
AND Storing importer information for customs processing
THEN:
• The system should insert the customs record type 55 for the importer
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer record has been processed.
Trigger Criteria:
Context: Importer record has been processed
Applied to: Update CSA Indicator Logic
Action: Evaluating CSA indicator requirements
Logic Flow:
IF Importer record has been processed
AND Evaluating CSA indicator requirements
THEN:
• The system should check if both AU table data and EDI data are found for CSA determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au table importer data is found and edi importer data is found and business number qualifier is 'bn' or spaces.
Trigger Criteria:
Context: AU table importer data is found AND EDI importer data is found AND business number qualifier is 'BN' or spaces
Applied to: Reset CSA Indicator
Action: Processing CSA indicator logic
Logic Flow:
IF AU table importer data is found AND EDI importer data is found AND business number qualifier is 'BN' or spaces
AND Processing CSA indicator logic
THEN:
• The CSA indicator should be set to off
R-GCCCCADD-cbl-01847 (+26)File: GCCCCADD.cblBusiness Rule: Corrector EDI Importer Data Backup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi transaction is being processed.
Trigger Criteria:
Context: A corrector EDI transaction is being processed
Applied to: Importer Data Present?
Action: The system checks for importer data in the input
Logic Flow:
IF A corrector EDI transaction is being processed
AND The system checks for importer data in the input
THEN:
• Processing continues only if importer data is present, otherwise the backup process is skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data is present in the corrector edi.
Trigger Criteria:
Context: Importer data is present in the corrector EDI
Applied to: Business Number Present?
Action: The system validates the business number field
Logic Flow:
IF Importer data is present in the corrector EDI
AND The system validates the business number field
THEN:
• Processing continues only if business number is not spaces, otherwise backup process is terminated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data and business number are present.
Trigger Criteria:
Context: Importer data and business number are present
Applied to: Business Number Qualifier Present?
Action: The system checks the business number qualifier field
Logic Flow:
IF Importer data and business number are present
AND The system checks the business number qualifier field
THEN:
• Processing continues only if business number qualifier is not spaces, otherwise backup process ends
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all importer validation checks have passed.
Trigger Criteria:
Context: All importer validation checks have passed
Applied to: Initialize Counter to 3
Action: The system begins searching for existing importer records
Logic Flow:
IF All importer validation checks have passed
AND The system begins searching for existing importer records
THEN:
• The search counter is set to 3 and the importer found flag is set to false
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when search counter is initialized and importer data validation passed.
Trigger Criteria:
Context: Search counter is initialized and importer data validation passed
Applied to: Search Existing Records
Action: The system searches customs records using CCN key, record type 55, and current sequence number
Logic Flow:
IF Search counter is initialized and importer data validation passed
AND The system searches customs records using CCN key, record type 55, and current sequence number
THEN:
• A customs record is retrieved if it exists for the specified sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when search for customs records has been executed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A search for customs records has been executed
Applied to: Record Found?
Action: The system checks the database call status
Logic Flow:
IF A search for customs records has been executed
AND The system checks the database call status
THEN:
• If status is spaces the record is found, otherwise increment counter and continue searching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when customs record has been successfully retrieved.
Trigger Criteria:
Context: A customs record has been successfully retrieved
Applied to: Is Importer Record?
Action: The system checks the entity ID code in the record
Logic Flow:
IF A customs record has been successfully retrieved
AND The system checks the entity ID code in the record
THEN:
• If entity ID code equals 'IM' then it is an importer record, otherwise increment counter and continue searching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer record has been found in the customs database.
Trigger Criteria:
Context: An importer record has been found in the customs database
Applied to: Store CHOP Code
Action: The system begins backing up importer data
Logic Flow:
IF An importer record has been found in the customs database
AND The system begins backing up importer data
THEN:
• The CHOP code from the customs record is stored in temporary importer CHOP field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer chop code has been backed up.
Trigger Criteria:
Context: Importer CHOP code has been backed up
Applied to: Store Importer Name
Action: The system continues the backup process
Logic Flow:
IF Importer CHOP code has been backed up
AND The system continues the backup process
THEN:
• The importer name from the customs record is stored in temporary importer name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer name has been backed up.
Trigger Criteria:
Context: Importer name has been backed up
Applied to: Store Business Number Qualifier
Action: The system continues preserving importer data
Logic Flow:
IF Importer name has been backed up
AND The system continues preserving importer data
THEN:
• The business number qualifier from the customs record is stored in temporary qualifier field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when business number qualifier has been backed up.
Trigger Criteria:
Context: Business number qualifier has been backed up
Applied to: Store Business Number
Action: The system continues the backup process
Logic Flow:
IF Business number qualifier has been backed up
AND The system continues the backup process
THEN:
• The business number from the customs record is stored in temporary business number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when business number has been backed up.
Trigger Criteria:
Context: Business number has been backed up
Applied to: Store CSA Indicator
Action: The system continues preserving importer data
Logic Flow:
IF Business number has been backed up
AND The system continues preserving importer data
THEN:
• The CSA indicator from the input data is stored in temporary CSA indicator field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when csa indicator has been backed up.
Trigger Criteria:
Context: CSA indicator has been backed up
Applied to: Store Address Line 1
Action: The system continues backing up address information
Logic Flow:
IF CSA indicator has been backed up
AND The system continues backing up address information
THEN:
• The first address line from the customs record is stored in temporary address field 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when primary address line has been backed up.
Trigger Criteria:
Context: Primary address line has been backed up
Applied to: Store Address Line 2
Action: The system continues preserving address data
Logic Flow:
IF Primary address line has been backed up
AND The system continues preserving address data
THEN:
• The second address line from the customs record is stored in temporary address field 2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when secondary address line has been backed up.
Trigger Criteria:
Context: Secondary address line has been backed up
Applied to: Store City Name
Action: The system continues backing up location data
Logic Flow:
IF Secondary address line has been backed up
AND The system continues backing up location data
THEN:
• The city name from the customs record is stored in temporary city field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when city name has been backed up.
Trigger Criteria:
Context: City name has been backed up
Applied to: Store Province/State Code
Action: The system continues preserving location information
Logic Flow:
IF City name has been backed up
AND The system continues preserving location information
THEN:
• The province/state code from the customs record is stored in temporary province field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when province/state code has been backed up.
Trigger Criteria:
Context: Province/state code has been backed up
Applied to: Store Postal Code
Action: The system continues backing up address details
Logic Flow:
IF Province/state code has been backed up
AND The system continues backing up address details
THEN:
• The postal code from the customs record is stored in temporary postal code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when postal code has been backed up.
Trigger Criteria:
Context: Postal code has been backed up
Applied to: Store Country Code
Action: The system continues preserving location data
Logic Flow:
IF Postal code has been backed up
AND The system continues preserving location data
THEN:
• The country code from the customs record is stored in temporary country field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when country code has been backed up.
Trigger Criteria:
Context: Country code has been backed up
Applied to: Store Contact Function Code
Action: The system continues backing up contact information
Logic Flow:
IF Country code has been backed up
AND The system continues backing up contact information
THEN:
• The contact function code from the customs record is stored in temporary contact function field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when contact function code has been backed up.
Trigger Criteria:
Context: Contact function code has been backed up
Applied to: Store Contact Person Name
Action: The system continues preserving contact details
Logic Flow:
IF Contact function code has been backed up
AND The system continues preserving contact details
THEN:
• The contact person name from the customs record is stored in temporary contact name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when contact person name has been backed up.
Trigger Criteria:
Context: Contact person name has been backed up
Applied to: Store Communication Qualifier
Action: The system continues backing up communication data
Logic Flow:
IF Contact person name has been backed up
AND The system continues backing up communication data
THEN:
• The communication number qualifier from the customs record is stored in temporary communication qualifier field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when communication qualifier has been backed up.
Trigger Criteria:
Context: Communication qualifier has been backed up
Applied to: Store Communication Number
Action: The system completes backing up contact information
Logic Flow:
IF Communication qualifier has been backed up
AND The system completes backing up contact information
THEN:
• The communication number from the customs record is stored in temporary communication number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all importer data fields have been backed up.
Trigger Criteria:
Context: All importer data fields have been backed up
Applied to: Set Backup Found Flag
Action: The system completes the backup process
Logic Flow:
IF All importer data fields have been backed up
AND The system completes the backup process
THEN:
• The importer found flag is set to true indicating successful backup completion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer backup completion flag has been set.
Trigger Criteria:
Context: Importer backup completion flag has been set
Applied to: Clear Current Importer Data
Action: The system finalizes the backup process
Logic Flow:
IF Importer backup completion flag has been set
AND The system finalizes the backup process
THEN:
• The current importer, business number, and business number qualifier fields are cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current record is not an importer record or no record was found.
Trigger Criteria:
Context: Current record is not an importer record or no record was found
Applied to: Increment Counter
Action: The system needs to continue searching
Logic Flow:
IF Current record is not an importer record or no record was found
AND The system needs to continue searching
THEN:
• The search counter is incremented by 1 to check the next sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when search counter has been incremented.
Trigger Criteria:
Context: Search counter has been incremented
Applied to: Counter > 24?
Action: The system checks if more searching is allowed
Logic Flow:
IF Search counter has been incremented
AND The system checks if more searching is allowed
THEN:
• If counter is greater than 24 then end the search process, otherwise continue searching for importer records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when either importer data has been successfully backed up or search limit has been reached or validation failed.
Trigger Criteria:
Context: Either importer data has been successfully backed up or search limit has been reached or validation failed
Applied to: End Backup Process
Action: The backup process reaches completion
Logic Flow:
IF Either importer data has been successfully backed up or search limit has been reached or validation failed
AND The backup process reaches completion
THEN:
• Control returns to the calling process with appropriate flags set indicating backup status
R-GCCCCADD-cbl-01874 (+1)File: GCCCCADD.cblBusiness Rule: CSA Indicator Reset for EDI Importer Data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when au table importer data has been found and edi bol importer data has been found.
Trigger Criteria:
Context: AU table importer data has been found AND EDI BOL importer data has been found
Applied to: Reset CSA Indicator to OFF
Action: The business number qualifier is 'BN' OR the business number qualifier is blank/spaces
Logic Flow:
IF AU table importer data has been found AND EDI BOL importer data has been found
AND The business number qualifier is 'BN' OR the business number qualifier is blank/spaces
THEN:
• The CSA indicator is set to OFF
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when processing csa indicator logic for importer data.
Trigger Criteria:
Context: Processing CSA indicator logic for importer data
Applied to: Keep CSA Indicator Current State
Action: AU table importer data is not found OR EDI BOL importer data is not found OR business number qualifier is neither 'BN' nor blank
Logic Flow:
IF Processing CSA indicator logic for importer data
AND AU table importer data is not found OR EDI BOL importer data is not found OR business number qualifier is neither 'BN' nor blank
THEN:
• The CSA indicator maintains its current state without modification
Business Justification: Establishes the required business protocol to be followed when importer record is being processed for address information.
Trigger Criteria:
Context: An importer record is being processed for address information
Applied to: EDI BOL N3 Segment Found?
Action: The system checks for EDI BOL N3 segment availability
Logic Flow:
IF An importer record is being processed for address information
AND The system checks for EDI BOL N3 segment availability
THEN:
• The system should identify whether address data is available from EDI source or requires fallback processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol n3 segment is available with address information.
Trigger Criteria:
Context: EDI BOL N3 segment is available with address information
Applied to: Address Line 1 Empty or Low Values?
Action: The first address line is empty or contains low values
Logic Flow:
IF EDI BOL N3 segment is available with address information
AND The first address line is empty or contains low values
THEN:
• The system should flag the address line as requiring default value assignment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi address line 1 is empty or contains low values.
Trigger Criteria:
Context: EDI address line 1 is empty or contains low values
Applied to: Set Address Line 1 to 'NA'
Action: The system processes the importer address information
Logic Flow:
IF EDI address line 1 is empty or contains low values
AND The system processes the importer address information
THEN:
• The system should set address line 1 to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol n3 segment contains valid address line 1 data.
Trigger Criteria:
Context: EDI BOL N3 segment contains valid address line 1 data
Applied to: Use EDI Address Line 1
Action: The address line 1 is not empty and does not contain low values
Logic Flow:
IF EDI BOL N3 segment contains valid address line 1 data
AND The address line 1 is not empty and does not contain low values
THEN:
• The system should use the EDI address line 1 value directly for the importer record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol n3 segment is available and address line 1 has been processed.
Trigger Criteria:
Context: EDI BOL N3 segment is available and address line 1 has been processed
Applied to: Set Address Line 2 from EDI
Action: The system processes address line 2 information
Logic Flow:
IF EDI BOL N3 segment is available and address line 1 has been processed
AND The system processes address line 2 information
THEN:
• The system should assign address line 2 from the EDI data to the importer record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer record requires address information.
Trigger Criteria:
Context: An importer record requires address information
Applied to: No EDI N3 Segment Available?
Action: No EDI BOL N3 segment is available
Logic Flow:
IF An importer record requires address information
AND No EDI BOL N3 segment is available
THEN:
• The system should initiate fallback address processing procedures
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when no edi bol n3 segment is available for address information.
Trigger Criteria:
Context: No EDI BOL N3 segment is available for address information
Applied to: Clear All N3 Address Data
Action: The system processes importer address data
Logic Flow:
IF No EDI BOL N3 segment is available for address information
AND The system processes importer address data
THEN:
• The system should clear all N3 address data fields to ensure clean initialization
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no edi address segment is available and address data has been cleared.
Trigger Criteria:
Context: No EDI address segment is available and address data has been cleared
Applied to: Set Address Line 1 to 'NA'
Action: The system requires a value for address line 1
Logic Flow:
IF No EDI address segment is available and address data has been cleared
AND The system requires a value for address line 1
THEN:
• The system should set address line 1 to 'NA' as the fallback default value
R-GCCCCADD-cbl-01884 (+4)File: GCCCCADD.cblBusiness Rule: Importer Contact Information Clearing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer record is being processed and contact information needs to be cleared.
Trigger Criteria:
Context: An importer record is being processed and contact information needs to be cleared
Applied to: Clear All PER Segment Data
Action: The system processes the importer contact clearing operation
Logic Flow:
IF An importer record is being processed and contact information needs to be cleared
AND The system processes the importer contact clearing operation
THEN:
• All PER segment contact fields are set to spaces including contact function code, contact name, communication number qualifier, and communication number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer contact information is being cleared.
Trigger Criteria:
Context: Importer contact information is being cleared
Applied to: Set Contact Function Code to Spaces
Action: The contact function code field is processed
Logic Flow:
IF Importer contact information is being cleared
AND The contact function code field is processed
THEN:
• The contact function code is set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer contact information is being cleared.
Trigger Criteria:
Context: Importer contact information is being cleared
Applied to: Set Contact Name to Spaces
Action: The contact name field is processed
Logic Flow:
IF Importer contact information is being cleared
AND The contact name field is processed
THEN:
• The contact name is set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer contact information is being cleared.
Trigger Criteria:
Context: Importer contact information is being cleared
Applied to: Set Communication Number Qualifier to Spaces
Action: The communication number qualifier field is processed
Logic Flow:
IF Importer contact information is being cleared
AND The communication number qualifier field is processed
THEN:
• The communication number qualifier is set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer contact information is being cleared.
Trigger Criteria:
Context: Importer contact information is being cleared
Applied to: Set Communication Number to Spaces
Action: The communication number field is processed
Logic Flow:
IF Importer contact information is being cleared
AND The communication number field is processed
THEN:
• The communication number is set to spaces
R-GCCCCADD-cbl-01889 (+4)File: GCCCCADD.cblBusiness Rule: Importer Data Deletion Handling by Corrector
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer record exists in the system with complete business information including name, business number, qualifier, csa indicator, address details, and contact information.
Trigger Criteria:
Context: An importer record exists in the system with complete business information including name, business number, qualifier, CSA indicator, address details, and contact information
Applied to: Backup Original Importer Data
Action: The system processes an importer data correction request
Logic Flow:
IF An importer record exists in the system with complete business information including name, business number, qualifier, CSA indicator, address details, and contact information
AND The system processes an importer data correction request
THEN:
• The system creates a backup of all original importer data including chop code, name, business number qualifier, business number, CSA indicator, address lines, city, province, postal code, country, contact function code, person name, communication qualifier, and communication number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system is processing importer data corrections.
Trigger Criteria:
Context: The system is processing importer data corrections
Applied to: EDI BOL Importer Segment Found?
Action: The system checks for the presence of an importer segment in the EDI BOL data
Logic Flow:
IF The system is processing importer data corrections
AND The system checks for the presence of an importer segment in the EDI BOL data
THEN:
• If the importer segment is found, continue with normal processing, otherwise proceed with deletion handling logic
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi deletion request is processed and backup importer data is available in temporary storage.
Trigger Criteria:
Context: An EDI deletion request is processed and backup importer data is available in temporary storage
Applied to: Restore from Backup Data
Action: The system needs to handle the deletion while preserving original data
Logic Flow:
IF An EDI deletion request is processed and backup importer data is available in temporary storage
AND The system needs to handle the deletion while preserving original data
THEN:
• The system restores all importer information from backup including chop code, entity ID, name, business number qualifier, business number, CSA indicator, address information, city, province, postal code, country, and contact details, and sets the importer found flag to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi deletion request is processed and no backup importer data is available.
Trigger Criteria:
Context: An EDI deletion request is processed and no backup importer data is available
Applied to: Clear Current Importer Data
Action: The system processes the deletion request
Logic Flow:
IF An EDI deletion request is processed and no backup importer data is available
AND The system processes the deletion request
THEN:
• If the importer was not found in record 55, the system clears the importer name field and sets the entity ID code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer data exists in record 55 and backup importer data is available from previous processing.
Trigger Criteria:
Context: Importer data exists in record 55 and backup importer data is available from previous processing
Applied to: Check for Existing Importer Data
Action: The system processes importer information
Logic Flow:
IF Importer data exists in record 55 and backup importer data is available from previous processing
AND The system processes importer information
THEN:
• The system uses the backup importer data and sets the CSA indicator to off if both AU importer and record 55 importer are found and the business number qualifier is 'BN' or spaces
R-GCCCCADD-cbl-01894 (+2)File: GCCCCADD.cblBusiness Rule: EDI BOL Segment Type Initialization
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol segment retrieval is required for ebsnrsc type.
Trigger Criteria:
Context: EDI BOL segment retrieval is required for EBSNRSC type
Applied to: Initialize EBSNRSC Parameters
Action: System initializes EBSNRSC segment parameters
Logic Flow:
IF EDI BOL segment retrieval is required for EBSNRSC type
AND System initializes EBSNRSC segment parameters
THEN:
• EBWLGIO structure is cleared, segment type is set to 'EBSNRSC', function code is set to 'GU', operator is set to '=', sequence number is set to '01', and accept status is set to 'GE'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol segment retrieval is required for ebsnrsa type.
Trigger Criteria:
Context: EDI BOL segment retrieval is required for EBSNRSA type
Applied to: Initialize EBSNRSA Parameters
Action: System initializes EBSNRSA segment parameters
Logic Flow:
IF EDI BOL segment retrieval is required for EBSNRSA type
AND System initializes EBSNRSA segment parameters
THEN:
• EBWLGIO structure is cleared, segment type is set to 'EBSNRSA', function code is set to 'GU', operator is set to '=', EDI BOL key is assigned to root key, sequence numbers are set to '01', and accept status is set to 'GE'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ebwlgio parameters are properly initialized for segment retrieval.
Trigger Criteria:
Context: EBWLGIO parameters are properly initialized for segment retrieval
Applied to: Parameters Ready for Segment Retrieval
Action: System calls EBCLGIO to retrieve EDI BOL segment data
Logic Flow:
IF EBWLGIO parameters are properly initialized for segment retrieval
AND System calls EBCLGIO to retrieve EDI BOL segment data
THEN:
• EDI BOL segment data is retrieved and stored in the working storage segment structure
R-GCCCCADD-cbl-01897 (+2)File: GCCCCADD.cblBusiness Rule: System Timestamp Capture
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system is ready to begin processing.
Trigger Criteria:
Context: The system is ready to begin processing
Applied to: Accept Current Date from System
Action: Processing initialization starts
Logic Flow:
IF The system is ready to begin processing
AND Processing initialization starts
THEN:
• The current system date is captured and stored in TS-SYSTEM-DATE field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system is ready to begin processing.
Trigger Criteria:
Context: The system is ready to begin processing
Applied to: Accept Current Time from System
Action: Processing initialization starts after date capture
Logic Flow:
IF The system is ready to begin processing
AND Processing initialization starts after date capture
THEN:
• The current system time is captured and stored in TS-SYSTEM-TIME field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system date and time have been captured and key business identifiers are available.
Trigger Criteria:
Context: System date and time have been captured and key business identifiers are available
Applied to: Display Timestamp with Process Info
Action: The initialization process displays status information
Logic Flow:
IF System date and time have been captured and key business identifiers are available
AND The initialization process displays status information
THEN:
• A formatted message is displayed to system error output containing the date, time, process name, and key business identifiers including CCN key, equipment ID, importer, business number, and business number qualifier
Business Justification: Governs the functional prerequisites and system routing when shipment is being processed with action code iis-a6 or multi-manifest indicator is 'y'.
Trigger Criteria:
Context: A shipment is being processed with action code IIS-A6 or multi-manifest indicator is 'Y'
Applied to: Set Default Manifest-From Port to 'IIS-A6'
Action: The manifest-from port in the shipment root is empty or spaces
Logic Flow:
IF A shipment is being processed with action code IIS-A6 or multi-manifest indicator is 'Y'
AND The manifest-from port in the shipment root is empty or spaces
THEN:
• The manifest-from port should be automatically set to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest-from port value is available from the shipment root.
Trigger Criteria:
Context: A manifest-from port value is available from the shipment root
Applied to: Lookup Manifest-From Port in MC Table
Action: The system needs to validate and get details for the manifest-from port
Logic Flow:
IF A manifest-from port value is available from the shipment root
AND The system needs to validate and get details for the manifest-from port
THEN:
• The system should lookup the port in the MC table using the port code as the search key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup was successful and returned a canadian customs code.
Trigger Criteria:
Context: The MC table lookup was successful and returned a Canadian customs code
Applied to: Is Canadian Customs Code '00000'?
Action: The Canadian customs code equals '00000'
Logic Flow:
IF The MC table lookup was successful and returned a Canadian customs code
AND The Canadian customs code equals '00000'
THEN:
• The system should clear the MC table data and generate an error message for invalid Canadian customs code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest-from port code is provided for lookup.
Trigger Criteria:
Context: A manifest-from port code is provided for lookup
Applied to: Generate MC Table Not Found Error
Action: The MC table lookup fails to find a matching record
Logic Flow:
IF A manifest-from port code is provided for lookup
AND The MC table lookup fails to find a matching record
THEN:
• The system should clear MC table data and generate an error message indicating the manifest port was not found in MC table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup was successful and returned a valid canadian customs code (not '00000').
Trigger Criteria:
Context: The MC table lookup was successful and returned a valid Canadian customs code (not '00000')
Applied to: Set Manifest-From Station Code
Action: The system processes the MC table record
Logic Flow:
IF The MC table lookup was successful and returned a valid Canadian customs code (not '00000')
AND The system processes the MC table record
THEN:
• The manifest-from station code should be set to the Canadian customs code and the US port of exit code should be set from the MC record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment is being processed with either iis-a6 action code or multi-manifest indicator set to 'y'.
Trigger Criteria:
Context: A shipment is being processed with either IIS-A6 action code or multi-manifest indicator set to 'Y'
Applied to: Set Default IIS-A6 for Multi-Manifest
Action: The manifest-to port (MANI-UPON-PORT) in the shipment root is empty or spaces
Logic Flow:
IF A shipment is being processed with either IIS-A6 action code or multi-manifest indicator set to 'Y'
AND The manifest-to port (MANI-UPON-PORT) in the shipment root is empty or spaces
THEN:
• The system should automatically set the manifest-to port to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment is being processed for customs manifest creation
Applied to: Manifest-To Port from Shiproot Empty?
Action: The manifest-to port (MANI-UPON-PORT) from shipment root is empty or spaces
Logic Flow:
IF A shipment is being processed for customs manifest creation
AND The manifest-to port (MANI-UPON-PORT) from shipment root is empty or spaces
THEN:
• The system should set error flag 1 to indicate missing manifest-to port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest-to port value is available from the shipment root.
Trigger Criteria:
Context: A manifest-to port value is available from the shipment root
Applied to: Lookup Manifest-To Port in MC Table
Action: The system needs to validate and get details for the manifest-to port
Logic Flow:
IF A manifest-to port value is available from the shipment root
AND The system needs to validate and get details for the manifest-to port
THEN:
• The system should lookup the port in the MC table using table ID 'MC' and the port name as the sequence ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest-to port lookup is attempted in the mc reference table.
Trigger Criteria:
Context: A manifest-to port lookup is attempted in the MC reference table
Applied to: Generate MC Table Not Found Error
Action: The MC table lookup is not successful (port not found)
Logic Flow:
IF A manifest-to port lookup is attempted in the MC reference table
AND The MC table lookup is not successful (port not found)
THEN:
• The system should clear the MC table data, set error flag 3, save the port name for error messaging, and continue processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when successful mc table lookup has returned manifest code details.
Trigger Criteria:
Context: A successful MC table lookup has returned manifest code details
Applied to: Canadian Customs Code = '00000'?
Action: The Canadian customs code from the MC record equals '00000'
Logic Flow:
IF A successful MC table lookup has returned manifest code details
AND The Canadian customs code from the MC record equals '00000'
THEN:
• The system should treat this as invalid, clear the MC table data, set error flag 2, and save the port name for error messaging
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when successful mc table lookup with a valid canadian customs code (not '00000'). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A successful MC table lookup with a valid Canadian customs code (not '00000')
Applied to: Set Manifest-To Station Code
Action: The manifest-to port validation is complete
Logic Flow:
IF A successful MC table lookup with a valid Canadian customs code (not '00000')
AND The manifest-to port validation is complete
THEN:
• The system should set the manifest-to station code from the Canadian customs code, set the destination station number from the MC station number, and set the batch print call letters from the MC call letters
R-GCCCCADD-cbl-01911 (+4)File: GCCCCADD.cblBusiness Rule: Apply special CCN type 9 manifest port override rules
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo control number is being processed.
Trigger Criteria:
Context: A cargo control number is being processed
Applied to: Check CCN Type and Port Conditions
Action: The CCN type is '9'
Logic Flow:
IF A cargo control number is being processed
AND The CCN type is '9'
THEN:
• The system evaluates port conditions for potential override
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo control number is being processed.
Trigger Criteria:
Context: A cargo control number is being processed
Applied to: Continue with Original Ports
Action: The CCN type is not '9' OR the port conditions for override are not met
Logic Flow:
IF A cargo control number is being processed
AND The CCN type is not '9' OR the port conditions for override are not met
THEN:
• The original manifest from and to station names are preserved without override
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ccn type is '9'.
Trigger Criteria:
Context: A CCN type is '9'
Applied to: Are Port Conditions Met?
Action: The US station exit code is not '00000' OR the manifest from station name is not 'IIS-A6' OR the manifest to station name is not 'IIS-A6' OR the manifest to station name does not equal the manifest from station name
Logic Flow:
IF A CCN type is '9'
AND The US station exit code is not '00000' OR the manifest from station name is not 'IIS-A6' OR the manifest to station name is not 'IIS-A6' OR the manifest to station name does not equal the manifest from station name
THEN:
• The port conditions are considered met for override application
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ccn type is '9' and port conditions are met for override.
Trigger Criteria:
Context: A CCN type is '9' and port conditions are met for override
Applied to: Set Manifest From Port to IIS-A6 & Set Manifest To Port to IIS-A6
Action: The override rules are applied
Logic Flow:
IF A CCN type is '9' and port conditions are met for override
AND The override rules are applied
THEN:
• The manifest from station name is set to 'IIS-A6'
• The manifest to station name is set to 'IIS-A6'
R-GCCCCADD-cbl-01916 (+8)File: GCCCCADD.cblBusiness Rule: Validate Canadian customs code from MC table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with manifest from port data.
Trigger Criteria:
Context: A shipment with manifest from port data
Applied to: Manifest From Port Available?
Action: The system validates Canadian customs code requirements
Logic Flow:
IF A shipment with manifest from port data
AND The system validates Canadian customs code requirements
THEN:
• The system should proceed with MC table lookup if manifest from port is available, otherwise generate manifest port not found error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid manifest from port identifier.
Trigger Criteria:
Context: A valid manifest from port identifier
Applied to: Lookup MC Table with Manifest From Port
Action: The system needs to validate Canadian customs requirements
Logic Flow:
IF A valid manifest from port identifier
AND The system needs to validate Canadian customs requirements
THEN:
• The system should lookup the MC table to retrieve Canadian customs code and US port exit code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when mc table lookup operation has been performed.
Trigger Criteria:
Context: An MC table lookup operation has been performed
Applied to: MC Table Lookup Successful?
Action: The system evaluates the lookup result
Logic Flow:
IF An MC table lookup operation has been performed
AND The system evaluates the lookup result
THEN:
• The system should proceed with customs code validation if successful, otherwise generate manifest port not found error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when canadian customs code retrieved from mc table lookup.
Trigger Criteria:
Context: A Canadian customs code retrieved from MC table lookup
Applied to: Canadian Customs Code = '00000'?
Action: The system validates the customs code value
Logic Flow:
IF A Canadian customs code retrieved from MC table lookup
AND The system validates the customs code value
THEN:
• The system should accept the code if it is not '00000', otherwise generate invalid Canadian customs code error and clear MC table data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid canadian customs code that is not '00000'.
Trigger Criteria:
Context: A valid Canadian customs code that is not '00000'
Applied to: Set Canadian Customs Code to Manifest From Station Code
Action: The system processes manifest from station information
Logic Flow:
IF A valid Canadian customs code that is not '00000'
AND The system processes manifest from station information
THEN:
• The system should assign the Canadian customs code to the manifest from station code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when canadian customs code equal to '00000' from mc table lookup.
Trigger Criteria:
Context: A Canadian customs code equal to '00000' from MC table lookup
Applied to: Generate Invalid Canadian Customs Code Error Message
Action: The system validates customs code requirements
Logic Flow:
IF A Canadian customs code equal to '00000' from MC table lookup
AND The system validates customs code requirements
THEN:
• The system should generate an error message indicating invalid Canadian customs code for the manifest port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest from port that is either missing or not found in mc table.
Trigger Criteria:
Context: A manifest from port that is either missing or not found in MC table
Applied to: Generate Manifest Port Not Found Error Message
Action: The system attempts to validate manifest port information
Logic Flow:
IF A manifest from port that is either missing or not found in MC table
AND The system attempts to validate manifest port information
THEN:
• The system should generate an error message indicating the manifest port was not found in the manifest code table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when error condition in canadian customs code validation or mc table lookup failure.
Trigger Criteria:
Context: An error condition in Canadian customs code validation or MC table lookup failure
Applied to: Clear MC Table Data
Action: The system encounters validation errors
Logic Flow:
IF An error condition in Canadian customs code validation or MC table lookup failure
AND The system encounters validation errors
THEN:
• The system should clear all MC table data to ensure invalid information is not used
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid mc table data with us port exit information.
Trigger Criteria:
Context: Valid MC table data with US port exit information
Applied to: Set US Port of Exit Code from MC Table
Action: The system processes customs border crossing requirements
Logic Flow:
IF Valid MC table data with US port exit information
AND The system processes customs border crossing requirements
THEN:
• The system should assign the US port of exit code from MC table to the customs record
R-GCCCCADD-cbl-01925 (+3)File: GCCCCADD.cblBusiness Rule: Validate US port of exit code from MC table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest from port exists in the shipment root data and the mc table lookup was successful and the mc table contains port configuration data.
Trigger Criteria:
Context: A manifest from port exists in the shipment root data AND the MC table lookup was successful AND the MC table contains port configuration data
Applied to: Extract US Port Exit Code from MC Table
Action: The system processes the MC table lookup results
Logic Flow:
IF A manifest from port exists in the shipment root data AND the MC table lookup was successful AND the MC table contains port configuration data
AND The system processes the MC table lookup results
THEN:
• The US port of exit code from the MC table is extracted and assigned to the customs record US port of exit code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when us port of exit code has been successfully extracted from the mc table and the customs record structure is available for update.
Trigger Criteria:
Context: The US port of exit code has been successfully extracted from the MC table AND the customs record structure is available for update
Applied to: Set US Port Exit Code in Customs Record
Action: The system assigns port exit information to the customs record
Logic Flow:
IF The US port of exit code has been successfully extracted from the MC table AND the customs record structure is available for update
AND The system assigns port exit information to the customs record
THEN:
• The US port of exit code is set in the customs cargo manifest record US port of exit code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest from port lookup has been attempted in the mc table.
Trigger Criteria:
Context: A manifest from port lookup has been attempted in the MC table
Applied to: MC Table Lookup Successful?
Action: The system evaluates the lookup result status
Logic Flow:
IF A manifest from port lookup has been attempted in the MC table
AND The system evaluates the lookup result status
THEN:
• If the lookup was successful, proceed to extract US port exit code, otherwise handle the lookup failure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mc table lookup for manifest from port has failed and the customs record requires a us port of exit code value.
Trigger Criteria:
Context: The MC table lookup for manifest from port has failed AND the customs record requires a US port of exit code value
Applied to: Set Empty US Port Exit Code
Action: The system handles the failed lookup scenario
Logic Flow:
IF The MC table lookup for manifest from port has failed AND the customs record requires a US port of exit code value
AND The system handles the failed lookup scenario
THEN:
• An empty or default US port of exit code is assigned to the customs record
R-GCCCCADD-cbl-01929 (+5)File: GCCCCADD.cblBusiness Rule: Determine sub
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed with manifest-to-station-name and destination country information available.
Trigger Criteria:
Context: A manifest is being processed with manifest-to-station-name and destination country information available
Applied to: Check if IIS-A6 Manifest and Non-US Destination
Action: The manifest-to-station-name equals 'IIS-A6' AND the destination is not in the United States
Logic Flow:
IF A manifest is being processed with manifest-to-station-name and destination country information available
AND The manifest-to-station-name equals 'IIS-A6' AND the destination is not in the United States
THEN:
• The system should initiate sub-location code determination process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest qualifies for sub-location code determination and destination station number is available from shipment root.
Trigger Criteria:
Context: The manifest qualifies for sub-location code determination and destination station number is available from shipment root
Applied to: Lookup Destination Station in CM Table
Action: The system performs a lookup in the CM table using the destination station number
Logic Flow:
IF The manifest qualifies for sub-location code determination and destination station number is available from shipment root
AND The system performs a lookup in the CM table using the destination station number
THEN:
• The system should attempt to retrieve the corresponding CM table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when successful cm table lookup has been performed for the destination station.
Trigger Criteria:
Context: A successful CM table lookup has been performed for the destination station
Applied to: Get Port Manifest Upon from CM Table
Action: The CM table record is retrieved successfully
Logic Flow:
IF A successful CM table lookup has been performed for the destination station
AND The CM table record is retrieved successfully
THEN:
• The system should extract the port-manifest-upon field from the CM table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when port manifest upon information has been extracted from the cm table record.
Trigger Criteria:
Context: Port manifest upon information has been extracted from the CM table record
Applied to: Lookup Port in MC Table
Action: The system performs a lookup in the MC table using the port manifest upon value
Logic Flow:
IF Port manifest upon information has been extracted from the CM table record
AND The system performs a lookup in the MC table using the port manifest upon value
THEN:
• The system should attempt to retrieve the corresponding MC table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when successful mc table lookup has been performed using the port manifest upon value.
Trigger Criteria:
Context: A successful MC table lookup has been performed using the port manifest upon value
Applied to: Set Sub-location Code from MC Table
Action: The MC table record is retrieved successfully
Logic Flow:
IF A successful MC table lookup has been performed using the port manifest upon value
AND The MC table record is retrieved successfully
THEN:
• The system should set the sub-location code from the MC table sub-location-code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when sub-location code determination process has been initiated.
Trigger Criteria:
Context: Sub-location code determination process has been initiated
Applied to: Set Sub-location Code to Spaces
Action: Either the CM table lookup fails OR the MC table lookup fails
Logic Flow:
IF Sub-location code determination process has been initiated
AND Either the CM table lookup fails OR the MC table lookup fails
THEN:
• The system should set the sub-location code to spaces (empty)
R-GCCCCADD-cbl-01935 (+6)File: GCCCCADD.cblBusiness Rule: Apply complex sub
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when customs control record is being processed for sub-location code requirements.
Trigger Criteria:
Context: A customs control record is being processed for sub-location code requirements
Applied to: Sub-location Code Already Set?
Action: The sub-location code field contains a value (not spaces)
Logic Flow:
IF A customs control record is being processed for sub-location code requirements
AND The sub-location code field contains a value (not spaces)
THEN:
• The system should continue processing without setting any error flags
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when customs control record has no sub-location code set.
Trigger Criteria:
Context: A customs control record has no sub-location code set
Applied to: CSA Indicator On?
Action: The CSA indicator is turned on
Logic Flow:
IF A customs control record has no sub-location code set
AND The CSA indicator is turned on
THEN:
• The system should waive the sub-location code requirement and continue processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when customs control record has no sub-location code set and csa indicator is off.
Trigger Criteria:
Context: A customs control record has no sub-location code set and CSA indicator is off
Applied to: Manifest From/To Stations Same AND Not IIS-A6?
Action: The manifest from station name equals the manifest to station name AND the manifest to station name is not 'IIS-A6'
Logic Flow:
IF A customs control record has no sub-location code set and CSA indicator is off
AND The manifest from station name equals the manifest to station name AND the manifest to station name is not 'IIS-A6'
THEN:
• The system should waive the sub-location code requirement and continue processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs control record has no sub-location code set, csa indicator is off, and manifest stations are different or one is iis-a6.
Trigger Criteria:
Context: A customs control record has no sub-location code set, CSA indicator is off, and manifest stations are different or one is IIS-A6
Applied to: Destination is US?
Action: The destination state code corresponds to a US state in the state-country lookup table
Logic Flow:
IF A customs control record has no sub-location code set, CSA indicator is off, and manifest stations are different or one is IIS-A6
AND The destination state code corresponds to a US state in the state-country lookup table
THEN:
• The system should waive the sub-location code requirement and continue processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs control record has no sub-location code set, csa indicator is off, manifest stations don't qualify for exemption, and destination is not us.
Trigger Criteria:
Context: A customs control record has no sub-location code set, CSA indicator is off, manifest stations don't qualify for exemption, and destination is not US
Applied to: Arrival Indicator = 'Y'?
Action: The arrival indicator equals 'Y'
Logic Flow:
IF A customs control record has no sub-location code set, CSA indicator is off, manifest stations don't qualify for exemption, and destination is not US
AND The arrival indicator equals 'Y'
THEN:
• The system should waive the sub-location code requirement and continue processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs control record has no sub-location code set, csa indicator is off, manifest stations don't qualify for exemption, destination is not us, and arrival indicator is not 'y'.
Trigger Criteria:
Context: A customs control record has no sub-location code set, CSA indicator is off, manifest stations don't qualify for exemption, destination is not US, and arrival indicator is not 'Y'
Applied to: Set Sub-location Error Flag
Action: All exemption conditions fail to be met
Logic Flow:
IF A customs control record has no sub-location code set, CSA indicator is off, manifest stations don't qualify for exemption, destination is not US, and arrival indicator is not 'Y'
AND All exemption conditions fail to be met
THEN:
• The system should set the sub-location error flag to indicate a validation failure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when sub-location error flag has been set due to missing sub-location code.
Trigger Criteria:
Context: The sub-location error flag has been set due to missing sub-location code
Applied to: Invalid Destination Station Sub-location Code
Action: The system processes the error condition
Logic Flow:
IF The sub-location error flag has been set due to missing sub-location code
AND The system processes the error condition
THEN:
• The system should generate an error message indicating invalid destination station sub-location code and add it to the message collection
R-GCCCCADD-cbl-01942 (+19)File: GCCCCADD.cblBusiness Rule: Process EDI BOL commodity segments for weight and quantity extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when waybill key is provided for processing.
Trigger Criteria:
Context: A waybill key is provided for processing
Applied to: Check for Valid EDI BOL
Action: The system checks for EDI BOL availability by verifying origin road number is not zero and retrieving SHIPMIN segment with type 'E' and number '1'
Logic Flow:
IF A waybill key is provided for processing
AND The system checks for EDI BOL availability by verifying origin road number is not zero and retrieving SHIPMIN segment with type 'E' and number '1'
THEN:
• If EDI BOL data is found, set valid EDI BOL flag and extract EDI BOL key, otherwise set invalid EDI BOL flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid edi bol data is available.
Trigger Criteria:
Context: Valid EDI BOL data is available
Applied to: Initialize Weight and Quantity Counters
Action: Starting weight and quantity processing
Logic Flow:
IF Valid EDI BOL data is available
AND Starting weight and quantity processing
THEN:
• Set commodity weight counter to zero and number of units counter to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid edi bol key and commodity sequence number. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Valid EDI BOL key and commodity sequence number
Applied to: Get EBSBCCM Commodity Segment
Action: Retrieving EBSBCCM segment with type 'CM' and current sequence number
Logic Flow:
IF Valid EDI BOL key and commodity sequence number
AND Retrieving EBSBCCM segment with type 'CM' and current sequence number
THEN:
• If invalid EDI BOL flag is set, mark segment as not found, otherwise call EBCLGIO and set found flag based on status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when commodity segment is found with lading quantity data.
Trigger Criteria:
Context: A commodity segment is found with lading quantity data
Applied to: Add Lading Quantity to Total
Action: Processing the commodity segment
Logic Flow:
IF A commodity segment is found with lading quantity data
AND Processing the commodity segment
THEN:
• Add the lading quantity from the segment to the total number of units counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when processing the first commodity segment (sequence = 1). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Processing the first commodity segment (sequence = 1)
Applied to: Get EBSBCCR Weight Segment
Action: Retrieving EBSBCCR weight segment with type 'CR' and dependent key 'CR001'
Logic Flow:
IF Processing the first commodity segment (sequence = 1)
AND Retrieving EBSBCCR weight segment with type 'CR' and dependent key 'CR001'
THEN:
• If invalid EDI BOL flag is set, mark weight segment as not found, otherwise call EBCLGIO and set found flag based on status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when weight segment is found for the first commodity.
Trigger Criteria:
Context: Weight segment is found for the first commodity
Applied to: Extract Total Weight
Action: Processing weight information
Logic Flow:
IF Weight segment is found for the first commodity
AND Processing weight information
THEN:
• Move the N7 weight value to the commodity weight counter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when weight segment is not found for the first commodity.
Trigger Criteria:
Context: Weight segment is not found for the first commodity
Applied to: Set Weight to Zero
Action: Processing weight information
Logic Flow:
IF Weight segment is not found for the first commodity
AND Processing weight information
THEN:
• Set commodity weight counter to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when weight has been processed for the first commodity segment.
Trigger Criteria:
Context: Weight has been processed for the first commodity segment
Applied to: Determine Weight Unit from Metric Indicator
Action: Determining weight unit from shipment root metric indicator
Logic Flow:
IF Weight has been processed for the first commodity segment
AND Determining weight unit from shipment root metric indicator
THEN:
• If metric indicator is 'M' or 'L', set weight unit to kilograms, otherwise set weight unit to pounds
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when processing the first commodity segment with lading quantity qualifier.
Trigger Criteria:
Context: Processing the first commodity segment with lading quantity qualifier
Applied to: Set Quantity Qualifier from Segment
Action: Setting quantity qualifier for the shipment
Logic Flow:
IF Processing the first commodity segment with lading quantity qualifier
AND Setting quantity qualifier for the shipment
THEN:
• Move the lading quantity qualifier from the commodity segment to the customs quantity qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when both commodity weight and number of units are zero after edi processing.
Trigger Criteria:
Context: Both commodity weight and number of units are zero after EDI processing
Applied to: Fall Back to Fastway SHIPCOMM Data
Action: Falling back to Fastway data processing
Logic Flow:
IF Both commodity weight and number of units are zero after EDI processing
AND Falling back to Fastway data processing
THEN:
• Set SHIPCOMM found flag and set get function to 'GU' for first segment retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when fallback to fastway data is required. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Fallback to Fastway data is required
Applied to: Get First SHIPCOMM Segment
Action: Retrieving SHIPCOMM segment with 'GU' function
Logic Flow:
IF Fallback to Fastway data is required
AND Retrieving SHIPCOMM segment with 'GU' function
THEN:
• Call FWCWBIO with shipment root key and SHIPCOMM segment type, set found flag based on status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipcomm segment is found.
Trigger Criteria:
Context: SHIPCOMM segment is found
Applied to: Add SHIPCOMM Quantities and Weights
Action: Processing Fastway commodity data
Logic Flow:
IF SHIPCOMM segment is found
AND Processing Fastway commodity data
THEN:
• Add number of units from SHIPCOMM to total units, andif metric indicator is 'M' or 'L', add metric weight and set unit to kilograms, otherwise add standard weight and set unit to pounds
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when processing fastway shipcomm data.
Trigger Criteria:
Context: Processing Fastway SHIPCOMM data
Applied to: Set Quantity Qualifier to PCS
Action: Setting quantity qualifier
Logic Flow:
IF Processing Fastway SHIPCOMM data
AND Setting quantity qualifier
THEN:
• Set quantity qualifier to 'PCS' (pieces)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when first shipcomm segment has been processed.
Trigger Criteria:
Context: First SHIPCOMM segment has been processed
Applied to: Get Next SHIPCOMM Segments
Action: Retrieving additional SHIPCOMM segments
Logic Flow:
IF First SHIPCOMM segment has been processed
AND Retrieving additional SHIPCOMM segments
THEN:
• Set get function to 'GN' and continue processing until no more segments are found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when additional shipcomm segments are found.
Trigger Criteria:
Context: Additional SHIPCOMM segments are found
Applied to: Add Additional SHIPCOMM Data
Action: Processing additional Fastway data
Logic Flow:
IF Additional SHIPCOMM segments are found
AND Processing additional Fastway data
THEN:
• Add number of units to total, set quantity qualifier to 'PCS', and add appropriate weight based on metric indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when final number of units is greater than zero.
Trigger Criteria:
Context: Final number of units is greater than zero
Applied to: Use Calculated Quantity
Action: Finalizing quantity assignment
Logic Flow:
IF Final number of units is greater than zero
AND Finalizing quantity assignment
THEN:
• Move the calculated number of units to the customs lading quantity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when final number of units is zero or less.
Trigger Criteria:
Context: Final number of units is zero or less
Applied to: Set Default Quantity to 1
Action: Finalizing quantity assignment
Logic Flow:
IF Final number of units is zero or less
AND Finalizing quantity assignment
THEN:
• Set number of units to 1 and move to customs lading quantity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when final commodity weight is greater than zero.
Trigger Criteria:
Context: Final commodity weight is greater than zero
Applied to: Use Calculated Weight
Action: Finalizing weight assignment
Logic Flow:
IF Final commodity weight is greater than zero
AND Finalizing weight assignment
THEN:
• Move the calculated commodity weight to the customs weight field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when final commodity weight is zero or less.
Trigger Criteria:
Context: Final commodity weight is zero or less
Applied to: Set Default Weight to 1
Action: Finalizing weight assignment
Logic Flow:
IF Final commodity weight is zero or less
AND Finalizing weight assignment
THEN:
• Set customs weight to '00000001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when quantity qualifier is empty after all processing.
Trigger Criteria:
Context: Quantity qualifier is empty after all processing
Applied to: Set Default Qualifier to PCS
Action: Finalizing quantity qualifier assignment
Logic Flow:
IF Quantity qualifier is empty after all processing
AND Finalizing quantity qualifier assignment
THEN:
• Set quantity qualifier to 'PCS' (pieces)
R-GCCCCADD-cbl-01962 (+5)File: GCCCCADD.cblBusiness Rule: Fall back to Fastway SHIPCOMM data when EDI BOL unavailable
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when waybill processing request is initiated.
Trigger Criteria:
Context: A waybill processing request is initiated
Applied to: Check for Valid EDI BOL
Action: The system checks for EDI BOL availability by verifying origin road number is not zero
Logic Flow:
IF A waybill processing request is initiated
AND The system checks for EDI BOL availability by verifying origin road number is not zero
THEN:
• The system sets EDI BOL availability flag and extracts EDI BOL key if valid data exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol data is available and valid.
Trigger Criteria:
Context: EDI BOL data is available and valid
Applied to: Process EBSBCCM Commodity Segments
Action: The system processes commodity segments from sequence 1 to 98 until no more segments found
Logic Flow:
IF EDI BOL data is available and valid
AND The system processes commodity segments from sequence 1 to 98 until no more segments found
THEN:
• The system accumulates lading quantity from each segment and captures quantity qualifier from first segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol commodity segments are being processed and first sequence is identified.
Trigger Criteria:
Context: EDI BOL commodity segments are being processed and first sequence is identified
Applied to: Process EBSBCCR Weight Segments
Action: The system retrieves weight segment for the first commodity sequence
Logic Flow:
IF EDI BOL commodity segments are being processed and first sequence is identified
AND The system retrieves weight segment for the first commodity sequence
THEN:
• The system captures weight value and sets weight unit based on metric indicator from shipment root
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol data is not available or weight and quantity values are zero after edi processing.
Trigger Criteria:
Context: EDI BOL data is not available or weight and quantity values are zero after EDI processing
Applied to: Fall Back to Fastway SHIPCOMM Data
Action: The system retrieves first SHIPCOMM record and processes all subsequent SHIPCOMM records
Logic Flow:
IF EDI BOL data is not available or weight and quantity values are zero after EDI processing
AND The system retrieves first SHIPCOMM record and processes all subsequent SHIPCOMM records
THEN:
• The system accumulates units and weight from all SHIPCOMM records and sets quantity qualifier to 'PCS'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when weight data has been processed from either edi bol or fastway shipcomm.
Trigger Criteria:
Context: Weight data has been processed from either EDI BOL or Fastway SHIPCOMM
Applied to: Set Weight Units Based on Metric Indicator
Action: The system checks the metric indicator from shipment root data
Logic Flow:
IF Weight data has been processed from either EDI BOL or Fastway SHIPCOMM
AND The system checks the metric indicator from shipment root data
THEN:
• The system sets weight unit to kilograms if metric indicator is 'M' or 'L', otherwise sets to pounds
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when weight and quantity processing is complete from all available data sources.
Trigger Criteria:
Context: Weight and quantity processing is complete from all available data sources
Applied to: Set Default Values if Zero
Action: The system finds quantity is zero or weight is zero
Logic Flow:
IF Weight and quantity processing is complete from all available data sources
AND The system finds quantity is zero or weight is zero
THEN:
• The system sets quantity to 1 if zero and weight to '00000001' if zero, and ensures quantity qualifier is set to 'PCS' if blank
R-GCCCCADD-cbl-01968 (+10)File: GCCCCADD.cblBusiness Rule: Validate and set final weight and quantity values with defaults
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when waybill processing request with origin road number.
Trigger Criteria:
Context: A waybill processing request with origin road number
Applied to: Check for Valid EDI BOL Data
Action: The system checks for valid EDI BOL data by verifying origin road number is not zero and retrieving shipment mining data
Logic Flow:
IF A waybill processing request with origin road number
AND The system checks for valid EDI BOL data by verifying origin road number is not zero and retrieving shipment mining data
THEN:
• The system sets EDI BOL availability flag and extracts EDI BOL key if data is found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when weight and quantity processing is starting.
Trigger Criteria:
Context: Weight and quantity processing is starting
Applied to: Initialize Weight and Quantity Counters
Action: The system begins commodity data processing
Logic Flow:
IF Weight and quantity processing is starting
AND The system begins commodity data processing
THEN:
• Weight and quantity counters are initialized to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid edi bol data is available with commodity segments.
Trigger Criteria:
Context: Valid EDI BOL data is available with commodity segments
Applied to: Process EDI BOL Commodity Segments
Action: The system processes each commodity segment sequentially from 1 to 98
Logic Flow:
IF Valid EDI BOL data is available with commodity segments
AND The system processes each commodity segment sequentially from 1 to 98
THEN:
• Each found commodity segment contributes its quantity to the total and the first segment provides weight and unit information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when first edi bol commodity segment is being processed.
Trigger Criteria:
Context: The first EDI BOL commodity segment is being processed
Applied to: Get Weight from EDI BOL
Action: Weight data is extracted from the commodity segment
Logic Flow:
IF The first EDI BOL commodity segment is being processed
AND Weight data is extracted from the commodity segment
THEN:
• The weight value is set from the segment and weight unit is determined as kilograms if metric indicator is M or L, otherwise pounds
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol data is not available or both weight and quantity are zero after edi processing.
Trigger Criteria:
Context: EDI BOL data is not available or both weight and quantity are zero after EDI processing
Applied to: Fall Back to Fastway SHIPCOMM Data
Action: The system retrieves Fastway SHIPCOMM data using GU and GN functions
Logic Flow:
IF EDI BOL data is not available or both weight and quantity are zero after EDI processing
AND The system retrieves Fastway SHIPCOMM data using GU and GN functions
THEN:
• Weight and quantity are accumulated from all SHIPCOMM records with quantity qualifier set to PCS and weight unit determined by metric indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when weight and quantity processing has completed from all data sources.
Trigger Criteria:
Context: Weight and quantity processing has completed from all data sources
Applied to: Set Default Quantity to 1
Action: The final quantity value is zero or not greater than zero
Logic Flow:
IF Weight and quantity processing has completed from all data sources
AND The final quantity value is zero or not greater than zero
THEN:
• The system sets the default quantity to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when weight processing has completed from all data sources.
Trigger Criteria:
Context: Weight processing has completed from all data sources
Applied to: Set Default Weight to 1
Action: The final weight value is zero or not greater than zero
Logic Flow:
IF Weight processing has completed from all data sources
AND The final weight value is zero or not greater than zero
THEN:
• The system sets the default weight to 00000001
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when weight and quantity processing is finalizing.
Trigger Criteria:
Context: Weight and quantity processing is finalizing
Applied to: Set Default Qualifier to PCS
Action: The quantity qualifier field is empty or spaces
Logic Flow:
IF Weight and quantity processing is finalizing
AND The quantity qualifier field is empty or spaces
THEN:
• The system sets the default quantity qualifier to PCS (pieces)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when quantity qualifier has been determined for the shipment.
Trigger Criteria:
Context: A quantity qualifier has been determined for the shipment
Applied to: Validate Quantity Qualifier
Action: The system validates the qualifier against the MU (Measurement Unit) table
Logic Flow:
IF A quantity qualifier has been determined for the shipment
AND The system validates the qualifier against the MU (Measurement Unit) table
THEN:
• If the qualifier is not found in the table, an error message is generated for invalid measurement unit
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment with load/empty status indicator.
Trigger Criteria:
Context: A shipment with load/empty status indicator
Applied to: Set Quantity Qualifier to UNT
Action: The equipment load/empty status is E (Empty)
Logic Flow:
IF A shipment with load/empty status indicator
AND The equipment load/empty status is E (Empty)
THEN:
• The system overrides the quantity qualifier to UNT (units) regardless of previous qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when non-empty shipment with a quantity qualifier.
Trigger Criteria:
Context: A non-empty shipment with a quantity qualifier
Applied to: Change Qualifier to PCS
Action: The quantity qualifier is C/L, CLD, CL, or space-CL (carload indicators)
Logic Flow:
IF A non-empty shipment with a quantity qualifier
AND The quantity qualifier is C/L, CLD, CL, or space-CL (carload indicators)
THEN:
• The system changes the quantity qualifier to PCS (pieces)
R-GCCCCADD-cbl-01979 (+10)File: GCCCCADD.cblBusiness Rule: Build commodity description from multiple data sources
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to build commodity descriptions.
Trigger Criteria:
Context: The system needs to build commodity descriptions
Applied to: Initialize Description Work Areas
Action: Description building process starts
Logic Flow:
IF The system needs to build commodity descriptions
AND Description building process starts
THEN:
• All description work areas are cleared and initialized to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipcomm contains commodity description data in fields 01-10.
Trigger Criteria:
Context: SHIPCOMM contains commodity description data in fields 01-10
Applied to: Extract Commodity Descriptions from SHIPCOMM
Action: Building commodity descriptions
Logic Flow:
IF SHIPCOMM contains commodity description data in fields 01-10
AND Building commodity descriptions
THEN:
• All 10 commodity description fields from SHIPCOMM are copied to description work areas
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shiproot contains free form description data in fields 1-2.
Trigger Criteria:
Context: SHIPROOT contains free form description data in fields 1-2
Applied to: Extract Free Form Descriptions from SHIPROOT
Action: Building commodity descriptions
Logic Flow:
IF SHIPROOT contains free form description data in fields 1-2
AND Building commodity descriptions
THEN:
• Both free form description fields from SHIPROOT are copied to description work areas
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when special handling codes exist in the shipment data.
Trigger Criteria:
Context: Special handling codes exist in the shipment data
Applied to: Process Special Handling Codes
Action: Processing special handling codes from counter 1 to 7
Logic Flow:
IF Special handling codes exist in the shipment data
AND Processing special handling codes from counter 1 to 7
THEN:
• Each special handling code and instruction is evaluated for inclusion in descriptions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when special handling code is being processed.
Trigger Criteria:
Context: A special handling code is being processed
Applied to: Special Handling Code = VA, EV, or VS?
Action: The special handling code equals 'VA' or 'EV' or 'VS'
Logic Flow:
IF A special handling code is being processed
AND The special handling code equals 'VA' or 'EV' or 'VS'
THEN:
• The code is identified as relevant for description enhancement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling code is identified as relevant (va, ev, or vs).
Trigger Criteria:
Context: A special handling code is identified as relevant (VA, EV, or VS)
Applied to: Add Special Handling Description
Action: Adding the special handling information to descriptions
Logic Flow:
IF A special handling code is identified as relevant (VA, EV, or VS)
AND Adding the special handling information to descriptions
THEN:
• The code and instruction are added to the first available special handling description slot (1, 2, or 3)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when description data has been collected from shipcomm, shiproot, and special handling sources.
Trigger Criteria:
Context: Description data has been collected from SHIPCOMM, SHIPROOT, and special handling sources
Applied to: Combine All Description Sources
Action: Combining all description sources
Logic Flow:
IF Description data has been collected from SHIPCOMM, SHIPROOT, and special handling sources
AND Combining all description sources
THEN:
• All description components are merged into a single comprehensive description work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when combined description data is ready for processing.
Trigger Criteria:
Context: Combined description data is ready for processing
Applied to: Prepare Description for Compression
Action: Preparing for compression
Logic Flow:
IF Combined description data is ready for processing
AND Preparing for compression
THEN:
• Description length is set to 45000 characters and secondary length to 22500 characters for compression processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when description data is prepared with proper length parameters. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description data is prepared with proper length parameters
Applied to: Call GCCCOMP Utility for Compression
Action: Calling GCCCOMP utility
Logic Flow:
IF Description data is prepared with proper length parameters
AND Calling GCCCOMP utility
THEN:
• The utility compresses the description data using CCCOM, source description, target description, and length parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description data has been compressed by gcccomp utility.
Trigger Criteria:
Context: Description data has been compressed by GCCCOMP utility
Applied to: Store Compressed Description in GCCC-LADING-DESCRIPTION
Action: Storing the final description
Logic Flow:
IF Description data has been compressed by GCCCOMP utility
AND Storing the final description
THEN:
• The compressed description is moved to GCCC-LADING-DESCRIPTION field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when compressed description data is available in work areas.
Trigger Criteria:
Context: Compressed description data is available in work areas
Applied to: Distribute Description Data to GCSCCS53 Array
Action: Distributing description data to array structure
Logic Flow:
IF Compressed description data is available in work areas
AND Distributing description data to array structure
THEN:
• All 46 description segments are moved from work area to GCSCCS53 cargo data array
R-GCCCCADD-cbl-01990 (+5)File: GCCCCADD.cblBusiness Rule: Process special handling codes and instructions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has special handling codes and instructions in up to 7 positions.
Trigger Criteria:
Context: A shipment has special handling codes and instructions in up to 7 positions
Applied to: Loop Through 7 Special Handling Code Positions
Action: The system processes special handling codes
Logic Flow:
IF A shipment has special handling codes and instructions in up to 7 positions
AND The system processes special handling codes
THEN:
• The system should iterate through all 7 special handling code positions to identify valid codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when special handling code exists at a specific position.
Trigger Criteria:
Context: A special handling code exists at a specific position
Applied to: Special Handling Code = 'VA', 'EV', or 'VS'?
Action: The special handling code is 'VA' or 'EV' or 'VS'
Logic Flow:
IF A special handling code exists at a specific position
AND The special handling code is 'VA' or 'EV' or 'VS'
THEN:
• The system should process this code and its associated instruction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid special handling code ('va', 'ev', or 'vs') is found.
Trigger Criteria:
Context: A valid special handling code ('VA', 'EV', or 'VS') is found
Applied to: Extract Special Handling Code
Action: The system processes the special handling entry
Logic Flow:
IF A valid special handling code ('VA', 'EV', or 'VS') is found
AND The system processes the special handling entry
THEN:
• The system should extract both the special handling code and its associated instruction into work fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when special handling description information needs to be stored.
Trigger Criteria:
Context: Special handling description information needs to be stored
Applied to: First Special Handling Slot Available?
Action: The first special handling description slot is empty
Logic Flow:
IF Special handling description information needs to be stored
AND The first special handling description slot is empty
THEN:
• The system should store the description information in the first slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling description information needs to be stored and the first slot is occupied.
Trigger Criteria:
Context: Special handling description information needs to be stored and the first slot is occupied
Applied to: Second Special Handling Slot Available?
Action: The second special handling description slot is empty
Logic Flow:
IF Special handling description information needs to be stored and the first slot is occupied
AND The second special handling description slot is empty
THEN:
• The system should store the description information in the second slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when special handling description information needs to be stored and both first and second slots are occupied.
Trigger Criteria:
Context: Special handling description information needs to be stored and both first and second slots are occupied
Applied to: Store in Third Special Handling Description Slot
Action: The system needs to store additional special handling information
Logic Flow:
IF Special handling description information needs to be stored and both first and second slots are occupied
AND The system needs to store additional special handling information
THEN:
• The system should store the description information in the third slot
R-GCCCCADD-cbl-01996 (+9)File: GCCCCADD.cblBusiness Rule: Extract hazmat information from EDI BOL segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo manifest requires hazmat information processing.
Trigger Criteria:
Context: A cargo manifest requires hazmat information processing
Applied to: Start Hazmat EDI Extraction
Action: The hazmat extraction process begins
Logic Flow:
IF A cargo manifest requires hazmat information processing
AND The hazmat extraction process begins
THEN:
• The commodity description danger field and UN number field are cleared, and hazmat not found flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when hazmat processing is being initialized. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Hazmat processing is being initialized
Applied to: Initialize Hazmat Sequence Counter
Action: The system prepares to read hazmat segments
Logic Flow:
IF Hazmat processing is being initialized
AND The system prepares to read hazmat segments
THEN:
• The hazmat sequence counter is set to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when hazmat sequence counter is set and edi bol data exists.
Trigger Criteria:
Context: A hazmat sequence counter is set and EDI BOL data exists
Applied to: Get Next EBSBCCM-CH Segment
Action: The system attempts to retrieve a hazmat segment
Logic Flow:
IF A hazmat sequence counter is set and EDI BOL data exists
AND The system attempts to retrieve a hazmat segment
THEN:
• The EBSBCCM CH segment is retrieved using the current sequence number, and hazmat found flag is updated based on retrieval success
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when hazmat segment has been retrieved from edi bol.
Trigger Criteria:
Context: A hazmat segment has been retrieved from EDI BOL
Applied to: Check UN Number Format
Action: The system examines the UN/NA identification code
Logic Flow:
IF A hazmat segment has been retrieved from EDI BOL
AND The system examines the UN/NA identification code
THEN:
• If the first two characters are 'UN', the identifier is considered a valid UN number format
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when hazmat segment contains a valid un number format.
Trigger Criteria:
Context: A hazmat segment contains a valid UN number format
Applied to: Extract UN Number from LH1 Segment
Action: The UN/NA identification code starts with 'UN'
Logic Flow:
IF A hazmat segment contains a valid UN number format
AND The UN/NA identification code starts with 'UN'
THEN:
• The complete UN/NA identification code is extracted and stored as the commodity UN number, and hazmat found flag is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid un number has been extracted from hazmat data.
Trigger Criteria:
Context: A valid UN number has been extracted from hazmat data
Applied to: Initialize Hazmat Sequence Counter
Action: The system prepares to retrieve proper shipping name details
Logic Flow:
IF A valid UN number has been extracted from hazmat data
AND The system prepares to retrieve proper shipping name details
THEN:
• The CHI HS sequence counter is set to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid un number exists and proper shipping name sequence is initialized.
Trigger Criteria:
Context: A valid UN number exists and proper shipping name sequence is initialized
Applied to: Retrieve LH3 Proper Shipping Name
Action: The system attempts to retrieve hazmat shipping details
Logic Flow:
IF A valid UN number exists and proper shipping name sequence is initialized
AND The system attempts to retrieve hazmat shipping details
THEN:
• The EBSBCHI HS segment is retrieved using the current sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when hazmat detail segment has been successfully retrieved.
Trigger Criteria:
Context: A hazmat detail segment has been successfully retrieved
Applied to: Extract Proper Shipping Name
Action: The EBSBCHI HS segment contains proper shipping name data
Logic Flow:
IF A hazmat detail segment has been successfully retrieved
AND The EBSBCHI HS segment contains proper shipping name data
THEN:
• The proper shipping name is extracted and stored as the commodity description danger field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when hazmat segment has been processed.
Trigger Criteria:
Context: A hazmat segment has been processed
Applied to: More Hazmat Segments?
Action: The system evaluates continuation criteria
Logic Flow:
IF A hazmat segment has been processed
AND The system evaluates continuation criteria
THEN:
• If hazmat has not been found and sequence counter is 98 or less, increment the counter and continue processing, otherwise end the extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when current hazmat segment does not contain valid un number and more segments may exist.
Trigger Criteria:
Context: Current hazmat segment does not contain valid UN number and more segments may exist
Applied to: Increment Sequence Counter
Action: The sequence counter is less than or equal to 98 and hazmat is not found
Logic Flow:
IF Current hazmat segment does not contain valid UN number and more segments may exist
AND The sequence counter is less than or equal to 98 and hazmat is not found
THEN:
• The hazmat sequence counter is incremented by 1
R-GCCCCADD-cbl-02006 (+7)File: GCCCCADD.cblBusiness Rule: Fall back to Fastway hazmat data when EDI unavailable
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when hazmat processing is initiated for a shipment.
Trigger Criteria:
Context: Hazmat processing is initiated for a shipment
Applied to: EDI Hazmat Data Found?
Action: The system searches for hazmat data sources
Logic Flow:
IF Hazmat processing is initiated for a shipment
AND The system searches for hazmat data sources
THEN:
• EDI hazmat data is checked first and used if available, otherwise system falls back to Fastway data sources
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi hazmat data is not found for the shipment.
Trigger Criteria:
Context: EDI hazmat data is not found for the shipment
Applied to: SHIPCOMM Data Available?
Action: System attempts to access Fastway SHIPCOMM data
Logic Flow:
IF EDI hazmat data is not found for the shipment
AND System attempts to access Fastway SHIPCOMM data
THEN:
• If SHIPCOMM data is found, proceed to SHIPERP segment access, otherwise mark no Fastway hazmat data available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipcomm data is available in fastway system.
Trigger Criteria:
Context: SHIPCOMM data is available in Fastway system
Applied to: SHIPERP Data Found?
Action: System accesses SHIPERP segment for emergency response data
Logic Flow:
IF SHIPCOMM data is available in Fastway system
AND System accesses SHIPERP segment for emergency response data
THEN:
• If SHIPERP data is found, validate UN code format, otherwise mark no Fastway hazmat data available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shiperp emergency response data is found.
Trigger Criteria:
Context: SHIPERP emergency response data is found
Applied to: UN Code Format Valid?
Action: System validates the UN code format in ERP-UN-NA-CODE field
Logic Flow:
IF SHIPERP emergency response data is found
AND System validates the UN code format in ERP-UN-NA-CODE field
THEN:
• If the first two characters equal 'UN', proceed to extract UN number, otherwise mark no Fastway hazmat data available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when un code format is validated as correct in shiperp data.
Trigger Criteria:
Context: UN code format is validated as correct in SHIPERP data
Applied to: Extract UN Number from SHIPERP
Action: System extracts the UN number
Logic Flow:
IF UN code format is validated as correct in SHIPERP data
AND System extracts the UN number
THEN:
• The ERP-UN-NA-CODE value is moved to GCCC-UN-NUMBER field and hazmat found flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when un number has been extracted from shiperp data.
Trigger Criteria:
Context: UN number has been extracted from SHIPERP data
Applied to: SHIPERPD Description Found?
Action: System accesses SHIPERPD segment for hazmat description
Logic Flow:
IF UN number has been extracted from SHIPERP data
AND System accesses SHIPERPD segment for hazmat description
THEN:
• If SHIPERPD data is found, use the hazmat description, otherwise proceed with hazmat found flag set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shiperpd description data is found.
Trigger Criteria:
Context: SHIPERPD description data is found
Applied to: Use SHIPERPD Hazmat Description
Action: System processes the hazmat description
Logic Flow:
IF SHIPERPD description data is found
AND System processes the hazmat description
THEN:
• The first 15 characters of ERPD-HAZ-DESC are moved to GCCC-COMODITY-DESC-DANGER field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when hazmat processing from edi or fastway sources is completed.
Trigger Criteria:
Context: Hazmat processing from EDI or Fastway sources is completed
Applied to: Continue to Commodity Table Lookup
Action: System has processed all available hazmat data sources
Logic Flow:
IF Hazmat processing from EDI or Fastway sources is completed
AND System has processed all available hazmat data sources
THEN:
• System continues to commodity table lookup for additional hazmat information if needed
R-GCCCCADD-cbl-02014 (+8)File: GCCCCADD.cblBusiness Rule: Use commodity table for hazmat description and UN numbers
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment record exists with commodity information.
Trigger Criteria:
Context: A shipment record exists with commodity information
Applied to: Get Commodity Code from Shipment
Action: The system needs to process hazmat information
Logic Flow:
IF A shipment record exists with commodity information
AND The system needs to process hazmat information
THEN:
• The commodity code is extracted from the shipment commodity data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid commodity stcc code is available.
Trigger Criteria:
Context: A valid commodity STCC code is available
Applied to: Access Commodity Table with STCC Code
Action: The system accesses the commodity table
Logic Flow:
IF A valid commodity STCC code is available
AND The system accesses the commodity table
THEN:
• The commodity record is retrieved using the STCC code as the lookup key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when commodity table lookup has been performed.
Trigger Criteria:
Context: A commodity table lookup has been performed
Applied to: Commodity Record Found?
Action: The system checks the lookup result status
Logic Flow:
IF A commodity table lookup has been performed
AND The system checks the lookup result status
THEN:
• The system determines whether a valid commodity record was found or not
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid commodity record has been found in the commodity table.
Trigger Criteria:
Context: A valid commodity record has been found in the commodity table
Applied to: Extract Commodity Description
Action: The system processes the commodity record
Logic Flow:
IF A valid commodity record has been found in the commodity table
AND The system processes the commodity record
THEN:
• The commodity description is extracted and assigned to the hazmat commodity description field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid commodity record exists and commodity description has been extracted.
Trigger Criteria:
Context: A valid commodity record exists and commodity description has been extracted
Applied to: Access ISSCD Table for UN Numbers
Action: The system needs to find UN number information
Logic Flow:
IF A valid commodity record exists and commodity description has been extracted
AND The system needs to find UN number information
THEN:
• The ISSCD table is accessed to lookup UN number data for the commodity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when isscd table lookup has been performed for the commodity.
Trigger Criteria:
Context: An ISSCD table lookup has been performed for the commodity
Applied to: UN Number Found in ISSCD?
Action: The system checks the ISSCD lookup result
Logic Flow:
IF An ISSCD table lookup has been performed for the commodity
AND The system checks the ISSCD lookup result
THEN:
• The system determines whether a valid UN number record was found in ISSCD
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid un number record has been found in the isscd table.
Trigger Criteria:
Context: A valid UN number record has been found in the ISSCD table
Applied to: Set UN Number from CMDOTID
Action: The system processes the ISSCD record
Logic Flow:
IF A valid UN number record has been found in the ISSCD table
AND The system processes the ISSCD record
THEN:
• The CMDOTID value is assigned to the UN number field for hazmat information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid un number has been found and assigned from isscd table.
Trigger Criteria:
Context: A valid UN number has been found and assigned from ISSCD table
Applied to: Set Hazmat Description from Commodity
Action: The system completes hazmat information processing
Logic Flow:
IF A valid UN number has been found and assigned from ISSCD table
AND The system completes hazmat information processing
THEN:
• The commodity description is assigned to the hazmat commodity description field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when no valid un number record was found in the isscd table.
Trigger Criteria:
Context: No valid UN number record was found in the ISSCD table
Applied to: Clear UN Number and Description
Action: The system processes the failed ISSCD lookup
Logic Flow:
IF No valid UN number record was found in the ISSCD table
AND The system processes the failed ISSCD lookup
THEN:
• Both the UN number field and hazmat commodity description field are cleared to spaces
R-GCCCCADD-cbl-02023 (+22)File: GCCCCADD.cblBusiness Rule: Process EDI BOL segments for entity and address information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to process entity records for customs database creation.
Trigger Criteria:
Context: The system needs to process entity records for customs database creation
Applied to: Initialize Record 55 Processing
Action: Record 55 processing is initiated
Logic Flow:
IF The system needs to process entity records for customs database creation
AND Record 55 processing is initiated
THEN:
• The sequence index is set to 3 and the working storage array for Record 55 data is cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol exists with shipper data in hn segment.
Trigger Criteria:
Context: An EDI BOL exists with shipper data in HN segment
Applied to: Extract Shipper Name and CHOP from HN Segment
Action: The system processes shipper record building
Logic Flow:
IF An EDI BOL exists with shipper data in HN segment
AND The system processes shipper record building
THEN:
• The entity ID is set to 'SH', shipper name is extracted from consignor name field, and CHOP code is extracted from shipper CHOP field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol contains shipper address data in ha segment.
Trigger Criteria:
Context: EDI BOL contains shipper address data in HA segment
Applied to: Get Shipper Address from HA Segment
Action: The system processes shipper address information
Logic Flow:
IF EDI BOL contains shipper address data in HA segment
AND The system processes shipper address information
THEN:
• Address line 1 and address line 2 are populated from additional name/address fields, with 'NA' as default if address line 1 is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol contains shipper location data in hc segment.
Trigger Criteria:
Context: EDI BOL contains shipper location data in HC segment
Applied to: Get Shipper City/State/Postal from HC Segment
Action: The system processes shipper location information
Logic Flow:
IF EDI BOL contains shipper location data in HC segment
AND The system processes shipper location information
THEN:
• City name, state/province code, postal code, and country code are extracted from the corresponding HC segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol contains shipper contact data in gp segment.
Trigger Criteria:
Context: EDI BOL contains shipper contact data in GP segment
Applied to: Get Shipper Contact Info from GP Segment
Action: The system processes shipper contact information
Logic Flow:
IF EDI BOL contains shipper contact data in GP segment
AND The system processes shipper contact information
THEN:
• Contact function code, contact name, communication number qualifier, and communication number are extracted from the GP segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol shipper data is not available.
Trigger Criteria:
Context: EDI BOL shipper data is not available
Applied to: Use Fastway Shipper Data as Fallback
Action: The system builds shipper record
Logic Flow:
IF EDI BOL shipper data is not available
AND The system builds shipper record
THEN:
• Shipper CHOP, entity ID 'SH', and shipper name are populated from Fastway shipment root data, with address defaulting to 'NA' if blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol exists with consignee data in cn segment.
Trigger Criteria:
Context: An EDI BOL exists with consignee data in CN segment
Applied to: Extract Consignee Name and CHOP from CN Segment
Action: The system processes consignee record building
Logic Flow:
IF An EDI BOL exists with consignee data in CN segment
AND The system processes consignee record building
THEN:
• The entity ID is set to 'CN', consignee name is extracted from shipper name field, and CHOP code is extracted from consignee CHOP field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol contains consignee address data in ca segment.
Trigger Criteria:
Context: EDI BOL contains consignee address data in CA segment
Applied to: Get Consignee Address from CA Segment
Action: The system processes consignee address information
Logic Flow:
IF EDI BOL contains consignee address data in CA segment
AND The system processes consignee address information
THEN:
• Address line 1 and address line 2 are populated from additional name/address fields, with 'NA' as default if address line 1 is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol contains consignee location data in cc segment.
Trigger Criteria:
Context: EDI BOL contains consignee location data in CC segment
Applied to: Get Consignee City/State/Postal from CC Segment
Action: The system processes consignee location information
Logic Flow:
IF EDI BOL contains consignee location data in CC segment
AND The system processes consignee location information
THEN:
• City name, state/province code, postal code, and country code are extracted from the corresponding CC segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol consignee data is not available.
Trigger Criteria:
Context: EDI BOL consignee data is not available
Applied to: Use Fastway Consignee Data as Fallback
Action: The system builds consignee record
Logic Flow:
IF EDI BOL consignee data is not available
AND The system builds consignee record
THEN:
• Consignee CHOP, entity ID 'CN', and consignee name are populated from Fastway shipment root data, with address defaulting to 'NA' if blank and country lookup from state/province table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol contains stuffer data in pn segment.
Trigger Criteria:
Context: EDI BOL contains stuffer data in PN segment
Applied to: Build Stuffer Entity from PN Segment
Action: The system processes stuffer entity building
Logic Flow:
IF EDI BOL contains stuffer data in PN segment
AND The system processes stuffer entity building
THEN:
• Entity ID is set to 'SF', name is extracted from PN segment, and associated address information is retrieved from PA and PC segments with 'NA' default for missing address
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol contains ultimate consignee data in un segment.
Trigger Criteria:
Context: EDI BOL contains ultimate consignee data in UN segment
Applied to: Build Ultimate Consignee from UN Segment
Action: The system processes ultimate consignee entity building
Logic Flow:
IF EDI BOL contains ultimate consignee data in UN segment
AND The system processes ultimate consignee entity building
THEN:
• Entity ID is set to 'UC', name is extracted from UN segment, and associated address information is retrieved from UA and UC segments with 'NA' default for missing address
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol contains beneficial owner data in bn segment.
Trigger Criteria:
Context: EDI BOL contains beneficial owner data in BN segment
Applied to: Build Beneficial Owner from BN Segment
Action: The system processes beneficial owner entity building
Logic Flow:
IF EDI BOL contains beneficial owner data in BN segment
AND The system processes beneficial owner entity building
THEN:
• Entity ID is set to 'BN', name and CHOP are extracted from BN segment, and associated address information is retrieved from BT and BY segments with 'NA' default for missing address
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol contains transportation data in tn segment with specific organization id.
Trigger Criteria:
Context: EDI BOL contains transportation data in TN segment with specific organization ID
Applied to: Build Carrier Entity from TN Segment
Action: The system processes transportation entity building for organization IDs C1, N1, 11, MC, OO, or FW
Logic Flow:
IF EDI BOL contains transportation data in TN segment with specific organization ID
AND The system processes transportation entity building for organization IDs C1, N1, 11, MC, OO, or FW
THEN:
• Entity record is created with the organization ID as entity type, name extracted from TN segment, and associated address information retrieved from T2 and TA segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol contains mcoa data in ot segment with organization id 'pf' or 'ss'.
Trigger Criteria:
Context: EDI BOL contains MCOA data in OT segment with organization ID 'PF' or 'SS'
Applied to: Build MCOA Entities from OT Segments
Action: The system processes MCOA entity building
Logic Flow:
IF EDI BOL contains MCOA data in OT segment with organization ID 'PF' or 'SS'
AND The system processes MCOA entity building
THEN:
• Entity record is created with PF or SS as entity type, name and ID codes extracted from OT segment, and associated address information retrieved from ON and OC segments with 'NA' default for missing address
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol contains named entity data in nn segments.
Trigger Criteria:
Context: EDI BOL contains named entity data in NN segments
Applied to: Process NN Segments for Various Entity Types
Action: The system processes NN segments sequentially
Logic Flow:
IF EDI BOL contains named entity data in NN segments
AND The system processes NN segments sequentially
THEN:
• For each valid entity ID found, entity name and CHOP are extracted, and associated address information is retrieved from GC and GA segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity id is extracted from nn segment.
Trigger Criteria:
Context: An entity ID is extracted from NN segment
Applied to: Valid Entity ID Found?
Action: The system validates the entity ID
Logic Flow:
IF An entity ID is extracted from NN segment
AND The system validates the entity ID
THEN:
• If the entity ID matches valid entity ID values, processing continues; otherwise, the entity ID is cleared and processing moves to next entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol contains entity address data in gc segment for a named entity.
Trigger Criteria:
Context: EDI BOL contains entity address data in GC segment for a named entity
Applied to: Get Entity Address from GC Segment
Action: The system processes entity address information
Logic Flow:
IF EDI BOL contains entity address data in GC segment for a named entity
AND The system processes entity address information
THEN:
• Address line 1 and address line 2 are populated from additional name/address fields, with 'NA' as default if address line 1 is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol contains entity location data in ga segment for a named entity.
Trigger Criteria:
Context: EDI BOL contains entity location data in GA segment for a named entity
Applied to: Get Entity City/State/Postal from GA Segment
Action: The system processes entity location information
Logic Flow:
IF EDI BOL contains entity location data in GA segment for a named entity
AND The system processes entity location information
THEN:
• City name, state/province code, postal code, and country code are extracted from the corresponding GA segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity record has been populated with data from edi bol or fastway.
Trigger Criteria:
Context: An entity record has been populated with data from EDI BOL or Fastway
Applied to: Validate Entity Data Requirements
Action: The system validates entity data requirements
Logic Flow:
IF An entity record has been populated with data from EDI BOL or Fastway
AND The system validates entity data requirements
THEN:
• Required fields are checked including entity ID, name, address line 1, city, state/province, postal code, and country code with appropriate error messages for missing data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when validated entity record exists with all required data.
Trigger Criteria:
Context: A validated entity record exists with all required data
Applied to: Store Entity Record in Customs Database
Action: The system stores the entity record
Logic Flow:
IF A validated entity record exists with all required data
AND The system stores the entity record
THEN:
• The record is added to the working storage array at the current sequence index, CCN key and record type '55' are set, and the sequence index is incremented
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to process importer entity information.
Trigger Criteria:
Context: The system needs to process importer entity information
Applied to: Build Additional Entities
Action: Importer data is found in EDI BOL IM segment
Logic Flow:
IF The system needs to process importer entity information
AND Importer data is found in EDI BOL IM segment
THEN:
• Entity ID is set to 'IM', importer name and business number details are extracted, CSA indicator is managed, and address information is populated from associated segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol importer data is not available but backup importer data exists from earlier processing.
Trigger Criteria:
Context: EDI BOL importer data is not available but backup importer data exists from earlier processing
Applied to: Build Additional Entities
Action: The system builds importer record
Logic Flow:
IF EDI BOL importer data is not available but backup importer data exists from earlier processing
AND The system builds importer record
THEN:
• Importer information is populated from backup data including CHOP, name, business number qualifier, business number, CSA indicator, address, city, state, postal code, country, and contact information
R-GCCCCADD-cbl-02046 (+10)File: GCCCCADD.cblBusiness Rule: Extract multiple CCN array and spawn related manifest creation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ccn array is retrieved from edi bol processing.
Trigger Criteria:
Context: A CCN array is retrieved from EDI BOL processing
Applied to: Check CCN Array from EDI BOL
Action: The system checks if the CCN array contains data
Logic Flow:
IF A CCN array is retrieved from EDI BOL processing
AND The system checks if the CCN array contains data
THEN:
• The system determines whether to proceed with CCN processing or continue with normal processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ccn array has been checked for data content.
Trigger Criteria:
Context: The CCN array has been checked for data content
Applied to: CCN Array Contains Data?
Action: The CCN array is not spaces and not low-values
Logic Flow:
IF The CCN array has been checked for data content
AND The CCN array is not spaces and not low-values
THEN:
• Initialize CCN processing loop, otherwise continue with normal processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ccn array contains valid data for processing.
Trigger Criteria:
Context: The CCN array contains valid data for processing
Applied to: Initialize CCN Index Counter
Action: CCN processing is initiated
Logic Flow:
IF The CCN array contains valid data for processing
AND CCN processing is initiated
THEN:
• Initialize the CCN index counter to 1 for array iteration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ccn processing loop is active with current index position.
Trigger Criteria:
Context: CCN processing loop is active with current index position
Applied to: More CCNs Available?
Action: The CCN index is less than or equal to 99 and the current CCN entry is not spaces
Logic Flow:
IF CCN processing loop is active with current index position
AND The CCN index is less than or equal to 99 and the current CCN entry is not spaces
THEN:
• Continue processing the current CCN entry, otherwise end CCN processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid ccn exists at the current array index position.
Trigger Criteria:
Context: A valid CCN exists at the current array index position
Applied to: Extract Current CCN
Action: The system processes the current CCN array element
Logic Flow:
IF A valid CCN exists at the current array index position
AND The system processes the current CCN array element
THEN:
• Extract the CCN value from the array position for spawn processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ccn has been extracted from the array for processing.
Trigger Criteria:
Context: A CCN has been extracted from the array for processing
Applied to: Set Waybill Key for Spawn
Action: Setting up spawn parameters for manifest creation
Logic Flow:
IF A CCN has been extracted from the array for processing
AND Setting up spawn parameters for manifest creation
THEN:
• Assign the original waybill key to the spawn waybill field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when spawn waybill key has been set for the current ccn.
Trigger Criteria:
Context: Spawn waybill key has been set for the current CCN
Applied to: Set Waybill Date for Spawn
Action: Continuing spawn parameter setup
Logic Flow:
IF Spawn waybill key has been set for the current CCN
AND Continuing spawn parameter setup
THEN:
• Assign the waybill date to the spawn waybill date field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when spawn waybill parameters have been set.
Trigger Criteria:
Context: Spawn waybill parameters have been set
Applied to: Set CCN for Spawn
Action: Finalizing spawn message parameters
Logic Flow:
IF Spawn waybill parameters have been set
AND Finalizing spawn message parameters
THEN:
• Assign the current CCN from the array to the spawn CCN field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all spawn parameters have been assigned for the current ccn.
Trigger Criteria:
Context: All spawn parameters have been assigned for the current CCN
Applied to: Set Action Code to 'AM'
Action: Preparing the final spawn message
Logic Flow:
IF All spawn parameters have been assigned for the current CCN
AND Preparing the final spawn message
THEN:
• Set the spawn action code to 'AM' for automated manifest processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when all spawn parameters are properly set including waybill key, date, ccn, and action code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All spawn parameters are properly set including waybill key, date, CCN, and action code
Applied to: Spawn GCT0111E for Manifest Creation
Action: The spawn message is ready for execution
Logic Flow:
IF All spawn parameters are properly set including waybill key, date, CCN, and action code
AND The spawn message is ready for execution
THEN:
• Call the spawn process GCT0111E to create a separate manifest for the current CCN
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when current ccn has been processed and spawn executed.
Trigger Criteria:
Context: The current CCN has been processed and spawn executed
Applied to: Increment CCN Index
Action: Continuing the CCN array iteration
Logic Flow:
IF The current CCN has been processed and spawn executed
AND Continuing the CCN array iteration
THEN:
• Increment the CCN index counter by 1 to move to the next array position
R-GCCCCADD-cbl-02057 (+6)File: GCCCCADD.cblBusiness Rule: Lookup AU table for importer data and set CSA indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment is being processed for customs manifest creation.
Trigger Criteria:
Context: A shipment is being processed for customs manifest creation
Applied to: Check CSA Indicator and Importer Status
Action: The CSA indicator is already ON OR the AU table is empty OR an importer is already set in the system
Logic Flow:
IF A shipment is being processed for customs manifest creation
AND The CSA indicator is already ON OR the AU table is empty OR an importer is already set in the system
THEN:
• The system skips the AU table lookup process and continues with existing data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when csa indicator is off and au table has data and no importer is currently set.
Trigger Criteria:
Context: CSA indicator is OFF AND AU table has data AND no importer is currently set
Applied to: Lookup AU Table with Consignee CHOP and Commodity Code
Action: The system performs AU table lookup using consignee CHOP code and commodity code
Logic Flow:
IF CSA indicator is OFF AND AU table has data AND no importer is currently set
AND The system performs AU table lookup using consignee CHOP code and commodity code
THEN:
• The system retrieves authorized user record if it exists in the AU table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au table lookup has been performed.
Trigger Criteria:
Context: An AU table lookup has been performed
Applied to: Clear AU Table Data
Action: No matching authorized user record is found in the AU table
Logic Flow:
IF An AU table lookup has been performed
AND No matching authorized user record is found in the AU table
THEN:
• The system clears all AU table data fields to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid au table record has been found.
Trigger Criteria:
Context: A valid AU table record has been found
Applied to: Extract Importer Name from AU Table
Action: The system processes the AU table data
Logic Flow:
IF A valid AU table record has been found
AND The system processes the AU table data
THEN:
• The system extracts importer name and business number from the AU table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer data has been extracted from au table.
Trigger Criteria:
Context: Importer data has been extracted from AU table
Applied to: Set Business Number Qualifier to 'M5'
Action: The system processes the importer business number
Logic Flow:
IF Importer data has been extracted from AU table
AND The system processes the importer business number
THEN:
• The system sets the business number qualifier to 'M5' and activates CSA indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when au importer data has been found and no existing s55 importer record exists.
Trigger Criteria:
Context: AU importer data has been found AND no existing S55 importer record exists
Applied to: Create Importer Record from AU Data
Action: The system needs to create importer customs record
Logic Flow:
IF AU importer data has been found AND no existing S55 importer record exists
AND The system needs to create importer customs record
THEN:
• The system creates a new customs record with importer name, business number, qualifier 'M5', default address 'NA', and activates CSA indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when new importer customs record is being created from au table data.
Trigger Criteria:
Context: A new importer customs record is being created from AU table data
Applied to: Set Default Address as 'NA'
Action: Address information is not available in AU table
Logic Flow:
IF A new importer customs record is being created from AU table data
AND Address information is not available in AU table
THEN:
• The system sets the address field to 'NA' and clears all city, state, postal, and contact data fields
R-GCCCCADD-cbl-02064 (+6)File: GCCCCADD.cblBusiness Rule: Manage CSA indicator based on multiple data sources
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment record exists with csa indicator already set to on.
Trigger Criteria:
Context: A shipment record exists with CSA indicator already set to ON
Applied to: Check if CSA Indicator Already On?
Action: The system processes CSA indicator management
Logic Flow:
IF A shipment record exists with CSA indicator already set to ON
AND The system processes CSA indicator management
THEN:
• The CSA indicator should remain ON and no further CSA processing should occur
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with consignee chop code and commodity code.
Trigger Criteria:
Context: A shipment with consignee CHOP code and commodity code
Applied to: Check if AU Table Data Available?
Action: The system checks AU table availability using consignee CHOP and commodity code as lookup keys
Logic Flow:
IF A shipment with consignee CHOP code and commodity code
AND The system checks AU table availability using consignee CHOP and commodity code as lookup keys
THEN:
• The system should determine if AU table data is available for further CSA processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when input parameters containing importer name, business number, and business number qualifier fields.
Trigger Criteria:
Context: Input parameters containing importer name, business number, and business number qualifier fields
Applied to: Check if Importer Data from Input?
Action: The system validates importer data presence
Logic Flow:
IF Input parameters containing importer name, business number, and business number qualifier fields
AND The system validates importer data presence
THEN:
• The system should confirm if all required importer fields (name, business number, and qualifier) contain valid data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when au table contains importer name and business number for the consignee and commodity combination.
Trigger Criteria:
Context: AU table contains importer name and business number for the consignee and commodity combination
Applied to: Check if AU Table Has Importer Data?
Action: The system finds valid importer data in AU table
Logic Flow:
IF AU table contains importer name and business number for the consignee and commodity combination
AND The system finds valid importer data in AU table
THEN:
• The system should extract importer name and business number, set CSA indicator to ON, and mark AU importer as found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with in-transit status set to transit or return and csa indicator currently on.
Trigger Criteria:
Context: A shipment with in-transit status set to TRANSIT or RETURN and CSA indicator currently ON
Applied to: Check Transit/Return Status?
Action: The system processes CSA indicator for transit/return shipments
Logic Flow:
IF A shipment with in-transit status set to TRANSIT or RETURN and CSA indicator currently ON
AND The system processes CSA indicator for transit/return shipments
THEN:
• The system should set CSA indicator to OFF, clear importer name, business number qualifier, and business number fields, and reset AU importer found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when au table contains importer data and edi bol contains importer segment data.
Trigger Criteria:
Context: AU table contains importer data and EDI BOL contains importer segment data
Applied to: Check AU and EDI BOL Importer Data?
Action: The system finds both AU importer data and EDI BOL importer data are present
Logic Flow:
IF AU table contains importer data and EDI BOL contains importer segment data
AND The system finds both AU importer data and EDI BOL importer data are present
THEN:
• The system should proceed to validate business number qualifier for CSA indicator adjustment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when both au table importer data and edi bol importer data are found with business number qualifier.
Trigger Criteria:
Context: Both AU table importer data and EDI BOL importer data are found with business number qualifier
Applied to: Check Business Number Qualifier?
Action: The business number qualifier is 'BN' or contains spaces
Logic Flow:
IF Both AU table importer data and EDI BOL importer data are found with business number qualifier
AND The business number qualifier is 'BN' or contains spaces
THEN:
• The system should set CSA indicator to OFF
R-GCCCCADD-cbl-02071 (+6)File: GCCCCADD.cblBusiness Rule: Execute multiple broker search attempts with different criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment has shipper chop, consignee chop, origin station number, destination station number, and commodity code available.
Trigger Criteria:
Context: A shipment has shipper CHOP, consignee CHOP, origin station number, destination station number, and commodity code available
Applied to: Full Criteria Match
Action: The system performs the first broker search attempt with all available criteria
Logic Flow:
IF A shipment has shipper CHOP, consignee CHOP, origin station number, destination station number, and commodity code available
AND The system performs the first broker search attempt with all available criteria
THEN:
• The system searches the crossing table using shipper CHOP, consignee CHOP, origin station, destination SPLC (ROAD + road number), and commodity code as search parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when first broker search with full criteria has been executed.
Trigger Criteria:
Context: The first broker search with full criteria has been executed
Applied to: Broker Data Found?
Action: The crossing table lookup returns a result status
Logic Flow:
IF The first broker search with full criteria has been executed
AND The crossing table lookup returns a result status
THEN:
• If broker data is found, mark search as complete, otherwise proceed to second search attempt
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when first broker search with full criteria did not find matching broker data.
Trigger Criteria:
Context: The first broker search with full criteria did not find matching broker data
Applied to: Consignee + Station + Commodity
Action: The system performs the second broker search attempt
Logic Flow:
IF The first broker search with full criteria did not find matching broker data
AND The system performs the second broker search attempt
THEN:
• The system searches using wildcard for shipper CHOP, wildcard for origin station, original consignee CHOP, destination SPLC, and commodity code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when second broker search with reduced criteria has been executed.
Trigger Criteria:
Context: The second broker search with reduced criteria has been executed
Applied to: Broker Data Found?
Action: The crossing table lookup returns a result status
Logic Flow:
IF The second broker search with reduced criteria has been executed
AND The crossing table lookup returns a result status
THEN:
• If broker data is found, mark search as complete, otherwise proceed to third search attempt
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when second broker search with reduced criteria did not find matching broker data.
Trigger Criteria:
Context: The second broker search with reduced criteria did not find matching broker data
Applied to: Wildcard + Commodity Only
Action: The system performs the third broker search attempt
Logic Flow:
IF The second broker search with reduced criteria did not find matching broker data
AND The system performs the third broker search attempt
THEN:
• The system searches using wildcard for shipper CHOP, wildcard for consignee CHOP, wildcard for origin station, original destination SPLC, and wildcard for commodity code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when third broker search with minimal criteria has been executed.
Trigger Criteria:
Context: The third broker search with minimal criteria has been executed
Applied to: Broker Data Found?
Action: The crossing table lookup returns a result status
Logic Flow:
IF The third broker search with minimal criteria has been executed
AND The crossing table lookup returns a result status
THEN:
• If broker data is found, mark search as complete, otherwise mark search as unsuccessful with no broker found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment root data and commodity data are available for processing.
Trigger Criteria:
Context: Shipment root data and commodity data are available for processing
Applied to: Set Initial Search Criteria
Action: The broker search process is initiated
Logic Flow:
IF Shipment root data and commodity data are available for processing
AND The broker search process is initiated
THEN:
• The system extracts shipper CHOP, consignee CHOP, origin station number, destination station number, destination road number, and commodity code from the shipment data
R-GCCCCADD-cbl-02078 (+11)File: GCCCCADD.cblBusiness Rule: Validate and override broker data based on crossing table flags
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when crossing table lookup has been performed for broker information.
Trigger Criteria:
Context: A crossing table lookup has been performed for broker information
Applied to: Crossing Table Data Found?
Action: The system checks if crossing table data was found
Logic Flow:
IF A crossing table lookup has been performed for broker information
AND The system checks if crossing table data was found
THEN:
• If crossing table data is found, proceed with broker validation process, otherwise skip broker override processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when crossing table data is available with an override flag.
Trigger Criteria:
Context: Crossing table data is available with an override flag
Applied to: Override Flag = 'Y'?
Action: The override flag equals 'Y'
Logic Flow:
IF Crossing table data is available with an override flag
AND The override flag equals 'Y'
THEN:
• Move broker name from crossing table regardless of current broker status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when crossing table data is available and override flag is not 'y'.
Trigger Criteria:
Context: Crossing table data is available and override flag is not 'Y'
Applied to: Current Broker Name is Empty, UNKNOWN, or NOT-REQ?
Action: Current broker name is spaces, 'UNKNOWN', or 'NOT-REQ'
Logic Flow:
IF Crossing table data is available and override flag is not 'Y'
AND Current broker name is spaces, 'UNKNOWN', or 'NOT-REQ'
THEN:
• Move broker name from crossing table, otherwise keep existing broker name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when crossing table contains broker information and override conditions are satisfied.
Trigger Criteria:
Context: Crossing table contains broker information and override conditions are satisfied
Applied to: Move Broker Name from Crossing Table
Action: Broker name assignment is required
Logic Flow:
IF Crossing table contains broker information and override conditions are satisfied
AND Broker name assignment is required
THEN:
• Set broker name to the value from crossing table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when broker data has been processed from crossing table.
Trigger Criteria:
Context: Broker data has been processed from crossing table
Applied to: Manifest-To Station Provided in Crossing Table?
Action: Crossing table contains manifest-to station information (CDN-MANIFEST-TO is not spaces)
Logic Flow:
IF Broker data has been processed from crossing table
AND Crossing table contains manifest-to station information (CDN-MANIFEST-TO is not spaces)
THEN:
• Proceed with manifest-to station validation and update process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when crossing table provides manifest-to station information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Crossing table provides manifest-to station information
Applied to: Validate Manifest-To Station in MC Table
Action: Manifest-to station validation is required
Logic Flow:
IF Crossing table provides manifest-to station information
AND Manifest-to station validation is required
THEN:
• Perform GU function call to MC table using manifest-to station as key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup has been performed for manifest-to station.
Trigger Criteria:
Context: MC table lookup has been performed for manifest-to station
Applied to: MC Table Lookup Successful?
Action: The lookup operation completes
Logic Flow:
IF MC table lookup has been performed for manifest-to station
AND The lookup operation completes
THEN:
• If lookup is successful, validate Canadian customs code, otherwise set error flag 3 for invalid manifest port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mc table lookup was successful for manifest-to station.
Trigger Criteria:
Context: MC table lookup was successful for manifest-to station
Applied to: Canadian Customs Code = '00000'?
Action: Canadian customs code equals '00000'
Logic Flow:
IF MC table lookup was successful for manifest-to station
AND Canadian customs code equals '00000'
THEN:
• Set error flag 2 for invalid Canadian customs code, otherwise proceed with station code update
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest-to station lookup was successful but canadian customs code is '00000'.
Trigger Criteria:
Context: Manifest-to station lookup was successful but Canadian customs code is '00000'
Applied to: Set Error Flag 2 - Invalid Canadian Customs Code
Action: Invalid Canadian customs code is detected
Logic Flow:
IF Manifest-to station lookup was successful but Canadian customs code is '00000'
AND Invalid Canadian customs code is detected
THEN:
• Set error flag 2 and save station name for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest-to station validation was attempted in mc table.
Trigger Criteria:
Context: Manifest-to station validation was attempted in MC table
Applied to: Set Error Flag 3 - Invalid Manifest Port
Action: MC table lookup fails
Logic Flow:
IF Manifest-to station validation was attempted in MC table
AND MC table lookup fails
THEN:
• Set error flag 3 and save station name for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when mc table lookup was successful and canadian customs code is valid.
Trigger Criteria:
Context: MC table lookup was successful and Canadian customs code is valid
Applied to: Update Manifest-To Station Code
Action: Manifest-to station code update is required
Logic Flow:
IF MC table lookup was successful and Canadian customs code is valid
AND Manifest-to station code update is required
THEN:
• Set manifest-to station code to Canadian customs code from MC table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest-to station code has been successfully updated. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Manifest-to station code has been successfully updated
Applied to: Update Station Number and Call Letters
Action: Additional station information update is required
Logic Flow:
IF Manifest-to station code has been successfully updated
AND Additional station information update is required
THEN:
• Set destination station number for index and batch print call letters from MC table station data
R-GCCCCADD-cbl-02090 (+14)File: GCCCCADD.cblBusiness Rule: Build entity segments from EDI BOL data with address validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol with potential pn segment data for stuffer entity.
Trigger Criteria:
Context: An EDI BOL with potential PN segment data for stuffer entity
Applied to: Build SF - Stuffer Entity
Action: The system processes the PN segment for stuffer information
Logic Flow:
IF An EDI BOL with potential PN segment data for stuffer entity
AND The system processes the PN segment for stuffer information
THEN:
• If PN segment is found, extract stuffer name and create SF entity record with address from PA and PC segments and contact from GP segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol with potential un segment data for ultimate consignee entity.
Trigger Criteria:
Context: An EDI BOL with potential UN segment data for ultimate consignee entity
Applied to: Build UC - Ultimate Consignee
Action: The system processes the UN segment for ultimate consignee information
Logic Flow:
IF An EDI BOL with potential UN segment data for ultimate consignee entity
AND The system processes the UN segment for ultimate consignee information
THEN:
• If UN segment is found, extract ultimate consignee name and create UC entity record with address from UA and UC segments and contact from GP segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol with potential bn segment data for beneficial owner entity.
Trigger Criteria:
Context: An EDI BOL with potential BN segment data for beneficial owner entity
Applied to: Build BN - Beneficial Owner
Action: The system processes the BN segment for beneficial owner information
Logic Flow:
IF An EDI BOL with potential BN segment data for beneficial owner entity
AND The system processes the BN segment for beneficial owner information
THEN:
• If BN segment is found, extract beneficial owner name and create BN entity record with address from BT and BY segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol with potential tn segment containing c1 organization id or fastway shipment data with consignee code c.
Trigger Criteria:
Context: An EDI BOL with potential TN segment containing C1 organization ID or Fastway shipment data with consignee code C
Applied to: Build C1 - Carrier Entity
Action: The system processes carrier entity information
Logic Flow:
IF An EDI BOL with potential TN segment containing C1 organization ID or Fastway shipment data with consignee code C
AND The system processes carrier entity information
THEN:
• If TN segment with C1 is found, extract carrier information with address from T2 and TA segments and contact from T3 segment, otherwiseif consignee data code is C, use Fastway consignee data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol with potential tn segment containing n1 organization id.
Trigger Criteria:
Context: An EDI BOL with potential TN segment containing N1 organization ID
Applied to: Build N1 - Notify Party
Action: The system processes the TN segment for notify party information
Logic Flow:
IF An EDI BOL with potential TN segment containing N1 organization ID
AND The system processes the TN segment for notify party information
THEN:
• If TN segment with N1 is found, extract notify party information and create N1 entity record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol with potential mcoa segment data for payment entities.
Trigger Criteria:
Context: An EDI BOL with potential MCOA segment data for payment entities
Applied to: Build PF/SS - Payment/Service
Action: The system processes MCOA segment with organization ID PF or SS
Logic Flow:
IF An EDI BOL with potential MCOA segment data for payment entities
AND The system processes MCOA segment with organization ID PF or SS
THEN:
• If MCOA segment is found with PF or SS organization ID, extract entity information with address from ON and OC segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol with tn segments containing organization ids 11, mc, oo, or fw.
Trigger Criteria:
Context: An EDI BOL with TN segments containing organization IDs 11, MC, OO, or FW
Applied to: Build Additional Entities
Action: The system processes TN segments for these entity types
Logic Flow:
IF An EDI BOL with TN segments containing organization IDs 11, MC, OO, or FW
AND The system processes TN segments for these entity types
THEN:
• Extract entity information and create corresponding entity records with address and contact details
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol with nn segments containing various entity ids.
Trigger Criteria:
Context: An EDI BOL with NN segments containing various entity IDs
Applied to: Build NN Entity Segments
Action: The system processes NN segments for named entities
Logic Flow:
IF An EDI BOL with NN segments containing various entity IDs
AND The system processes NN segments for named entities
THEN:
• If NN segment is found with valid entity ID, extract entity information with address from GC and GA segments, otherwise reset variables if not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record with sequence number greater than 2 and entity id code.
Trigger Criteria:
Context: An entity record with sequence number greater than 2 and entity ID code
Applied to: Entity ID Valid?
Action: The system validates the entity ID code
Logic Flow:
IF An entity record with sequence number greater than 2 and entity ID code
AND The system validates the entity ID code
THEN:
• If entity ID is not empty and not in valid values list or is shipper, consignee, or customs broker, add invalid entity ID error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record with entity id code specified.
Trigger Criteria:
Context: An entity record with entity ID code specified
Applied to: Name Required?
Action: The system validates the entity name field
Logic Flow:
IF An entity record with entity ID code specified
AND The system validates the entity name field
THEN:
• If entity ID is not empty and name is empty, add required name field error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record with entity id specified.
Trigger Criteria:
Context: An entity record with entity ID specified
Applied to: Set Default Address to NA
Action: The system validates the address field
Logic Flow:
IF An entity record with entity ID specified
AND The system validates the address field
THEN:
• If entity ID is not empty and address line 1 is empty, add required address error message and set default address to NA if address is empty
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity record with city name provided.
Trigger Criteria:
Context: An entity record with city name provided
Applied to: Validate City Length >= 2
Action: The system validates the city name length
Logic Flow:
IF An entity record with city name provided
AND The system validates the city name length
THEN:
• If city name is empty, add required city error message, otherwiseif city name length is less than 2 characters, add minimum length error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record with postal code provided.
Trigger Criteria:
Context: An entity record with postal code provided
Applied to: Validate Postal Code Length >= 3
Action: The system validates the postal code length
Logic Flow:
IF An entity record with postal code provided
AND The system validates the postal code length
THEN:
• If postal code is not empty and length is less than 3 characters, add minimum length error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record with country code canada, usa, or mexico and state/province code.
Trigger Criteria:
Context: An entity record with country code Canada, USA, or Mexico and state/province code
Applied to: Validate State/Country Combination
Action: The system validates the state/country combination
Logic Flow:
IF An entity record with country code Canada, USA, or Mexico and state/province code
AND The system validates the state/country combination
THEN:
• If country is Canada, USA, or Mexico and state/province is empty, add required state error message, otherwiseif state/province does not match country in lookup table, add invalid state error message, andif country is empty, derive country from state lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record with contact information including communication qualifier and number.
Trigger Criteria:
Context: An entity record with contact information including communication qualifier and number
Applied to: Validate Entity Data
Action: The system validates the communication data
Logic Flow:
IF An entity record with contact information including communication qualifier and number
AND The system validates the communication data
THEN:
• If communication qualifier is empty and contact name or communication number is provided, add required qualifier error message, andif qualifier is not empty, FX, or TE, add invalid qualifier error message, andif qualifier or contact name is provided but communication number is empty, add required communication number error message
R-GCCCCADD-cbl-02105 (+7)File: GCCCCADD.cblBusiness Rule: Fall back to Fastway data when EDI BOL entities unavailable
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment requires shipper information for customs manifest creation.
Trigger Criteria:
Context: A shipment requires shipper information for customs manifest creation
Applied to: EDI BOL Shipper Data Available?
Action: The system checks for EDI BOL shipper data in HN segment
Logic Flow:
IF A shipment requires shipper information for customs manifest creation
AND The system checks for EDI BOL shipper data in HN segment
THEN:
• If EDI BOL shipper data is found, extract shipper name and CHOP code from HN segment, otherwise extract shipper name and CHOP code from Fastway SHIPROOT
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment requires consignee information for customs manifest creation.
Trigger Criteria:
Context: A shipment requires consignee information for customs manifest creation
Applied to: EDI BOL Consignee Data Available?
Action: The system checks for EDI BOL consignee data in CN segment
Logic Flow:
IF A shipment requires consignee information for customs manifest creation
AND The system checks for EDI BOL consignee data in CN segment
THEN:
• If EDI BOL consignee data is found, extract consignee name and CHOP code from CN segment, otherwise extract consignee name and CHOP code from Fastway SHIPROOT
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment requires address information for shipper or consignee.
Trigger Criteria:
Context: A shipment requires address information for shipper or consignee
Applied to: EDI BOL Address Data Available?
Action: The system checks for EDI BOL address data in HA/CA segments
Logic Flow:
IF A shipment requires address information for shipper or consignee
AND The system checks for EDI BOL address data in HA/CA segments
THEN:
• If EDI BOL address data is found, extract address lines from HA/CA segments, otherwise extract address from Fastway SHIPROOT address fields and set default 'NA' if address is blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment requires city and state information for address completion.
Trigger Criteria:
Context: A shipment requires city and state information for address completion
Applied to: EDI BOL City/State Data Available?
Action: The system checks for EDI BOL city/state data in HC/CC segments
Logic Flow:
IF A shipment requires city and state information for address completion
AND The system checks for EDI BOL city/state data in HC/CC segments
THEN:
• If EDI BOL city/state data is found, extract city, state, postal code and country from HC/CC segments, otherwise parse city, state and postal code from Fastway address field and lookup country code from state-country table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment may have contact information for shipper or consignee.
Trigger Criteria:
Context: A shipment may have contact information for shipper or consignee
Applied to: EDI BOL Contact Data Available?
Action: The system checks for EDI BOL contact data in GP segment
Logic Flow:
IF A shipment may have contact information for shipper or consignee
AND The system checks for EDI BOL contact data in GP segment
THEN:
• If EDI BOL contact data is found, extract contact function code, name, communication number qualifier and communication number from GP segment, otherwise set all contact fields to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment requires carrier or entity information for customs processing.
Trigger Criteria:
Context: A shipment requires carrier or entity information for customs processing
Applied to: EDI BOL Carrier Data Available?
Action: The system checks for EDI BOL carrier data in TN segment
Logic Flow:
IF A shipment requires carrier or entity information for customs processing
AND The system checks for EDI BOL carrier data in TN segment
THEN:
• If EDI BOL carrier data is found, extract organization ID and name from TN segment, otherwise extract entity information from Fastway CONS-DATA fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address information is being extracted from fastway shiproot.
Trigger Criteria:
Context: Address information is being extracted from Fastway SHIPROOT
Applied to: Extract Address from Fastway SHIPROOT
Action: The address field is blank or spaces
Logic Flow:
IF Address information is being extracted from Fastway SHIPROOT
AND The address field is blank or spaces
THEN:
• Set the address field to 'NA' to ensure required address information is present
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when address information is being parsed from fastway address field.
Trigger Criteria:
Context: Address information is being parsed from Fastway address field
Applied to: Parse City/State from Fastway Address Field
Action: State or province code is available
Logic Flow:
IF Address information is being parsed from Fastway address field
AND State or province code is available
THEN:
• Search the state-country table to find matching country code for the state or province code, and set country code to the found value or spaces if not found
Business Justification: Dictates the expected operational logic and validation steps when party record contains address data (n3), location data (n4), or contact data (per) but the entity id is missing or blank.
Trigger Criteria:
Context: A party record contains address data (N3), location data (N4), or contact data (PER) but the entity ID is missing or blank
Applied to: Generate Entity ID Required Error
Action: The system validates the party information
Logic Flow:
IF A party record contains address data (N3), location data (N4), or contact data (PER) but the entity ID is missing or blank
AND The system validates the party information
THEN:
• Generate an error message indicating that entity ID is required when address information is present
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when party record contains address data (n3), location data (n4), or contact data (per) but the party name is missing or blank.
Trigger Criteria:
Context: A party record contains address data (N3), location data (N4), or contact data (PER) but the party name is missing or blank
Applied to: Generate Name Required Error
Action: The system validates the party information
Logic Flow:
IF A party record contains address data (N3), location data (N4), or contact data (PER) but the party name is missing or blank
AND The system validates the party information
THEN:
• Generate an error message indicating that name is required when address information is present
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when party record has an entity id specified but the name field is missing or blank.
Trigger Criteria:
Context: A party record has an entity ID specified but the name field is missing or blank
Applied to: Generate Name Required Error Message
Action: The system validates the party information
Logic Flow:
IF A party record has an entity ID specified but the name field is missing or blank
AND The system validates the party information
THEN:
• Generate an error message indicating that name is required when entity ID is present
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when party record has sequence number greater than 2 and the entity id is 'sh' (shipper), 'cn' (consignee), or 'cb' (customs broker).
Trigger Criteria:
Context: A party record has sequence number greater than 2 and the entity ID is 'SH' (Shipper), 'CN' (Consignee), or 'CB' (Customs Broker)
Applied to: Generate Invalid Entity ID Error
Action: The system validates the entity ID
Logic Flow:
IF A party record has sequence number greater than 2 and the entity ID is 'SH' (Shipper), 'CN' (Consignee), or 'CB' (Customs Broker)
AND The system validates the entity ID
THEN:
• Generate an error message indicating that the entity ID value is invalid for this party position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when party record has an entity id specified but the address information is missing or blank.
Trigger Criteria:
Context: A party record has an entity ID specified but the address information is missing or blank
Applied to: Generate Address Required Error
Action: The system validates the party information
Logic Flow:
IF A party record has an entity ID specified but the address information is missing or blank
AND The system validates the party information
THEN:
• Generate an error message indicating that address is required when entity ID is present
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when party record is for sequence 1 (shipper) or sequence 2 (consignee) and contains address, location, or contact data.
Trigger Criteria:
Context: A party record is for sequence 1 (shipper) or sequence 2 (consignee) and contains address, location, or contact data
Applied to: Is Entity ID or Name Missing?
Action: The system validates required party information
Logic Flow:
IF A party record is for sequence 1 (shipper) or sequence 2 (consignee) and contains address, location, or contact data
AND The system validates required party information
THEN:
• Both entity ID and name must be present, and all required address fields must be populated with appropriate error messages for missing data
R-GCCCCADD-cbl-02119 (+7)File: GCCCCADD.cblBusiness Rule: Validate city, state, postal code, and country requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n4 address segment is being processed for validation.
Trigger Criteria:
Context: An N4 address segment is being processed for validation
Applied to: N4 Address Data Present?
Action: The system checks if the N4 address data fields contain any information
Logic Flow:
IF An N4 address segment is being processed for validation
AND The system checks if the N4 address data fields contain any information
THEN:
• If N4 address data is empty, skip all address validations and complete processing, otherwise proceed with address field validations
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n4 address data is present and being validated.
Trigger Criteria:
Context: N4 address data is present and being validated
Applied to: City Name Empty?
Action: The city name field is empty or contains only spaces
Logic Flow:
IF N4 address data is present and being validated
AND The city name field is empty or contains only spaces
THEN:
• Generate a required field error message for city name (GCCS-E-GEN-REQUIRED-N401)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when city name is provided in the address data.
Trigger Criteria:
Context: A city name is provided in the address data
Applied to: City Length < 2 Characters?
Action: The city name contains fewer than 2 non-space characters
Logic Flow:
IF A city name is provided in the address data
AND The city name contains fewer than 2 non-space characters
THEN:
• Generate a minimum length error message requiring at least 2 characters (GCCS-E-GEN-MIN-LEN2-REQ)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when postal code is provided in the address data.
Trigger Criteria:
Context: A postal code is provided in the address data
Applied to: Postal Code Length < 3 Characters?
Action: The postal code contains fewer than 3 non-space characters
Logic Flow:
IF A postal code is provided in the address data
AND The postal code contains fewer than 3 non-space characters
THEN:
• Generate a minimum length error message requiring at least 3 characters (GCCS-E-GEN-MIN-LEN3-REQ)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when country code indicates canada, usa, or mexico.
Trigger Criteria:
Context: The country code indicates Canada, USA, or Mexico
Applied to: State/Province Code Empty?
Action: The state or province code field is empty or contains only spaces
Logic Flow:
IF The country code indicates Canada, USA, or Mexico
AND The state or province code field is empty or contains only spaces
THEN:
• Generate a required field error message for state/province code (GCCS-E-GEN-REQUIRED-N402)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when both state/province code and country code are provided for canada, usa, or mexico.
Trigger Criteria:
Context: Both state/province code and country code are provided for Canada, USA, or Mexico
Applied to: Valid State-Country Match?
Action: The state/province code does not exist in the state-country lookup table for the specified country
Logic Flow:
IF Both state/province code and country code are provided for Canada, USA, or Mexico
AND The state/province code does not exist in the state-country lookup table for the specified country
THEN:
• Generate an invalid state/province code error message (GCCS-E-INVALID-N402)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when state/province code is provided but country code is empty.
Trigger Criteria:
Context: A state/province code is provided but country code is empty
Applied to: Auto-Assign Country from State
Action: The state/province code exists in the state-country lookup table
Logic Flow:
IF A state/province code is provided but country code is empty
AND The state/province code exists in the state-country lookup table
THEN:
• Automatically assign the corresponding country code from the lookup table to the country field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when address validation is being performed.
Trigger Criteria:
Context: Address validation is being performed
Applied to: Country Code Empty?
Action: The country code field is empty and cannot be auto-assigned from state/province code
Logic Flow:
IF Address validation is being performed
AND The country code field is empty and cannot be auto-assigned from state/province code
THEN:
• Generate a required field error message for country code (GCCS-E-GEN-REQUIRED-N404)
R-GCCCCADD-cbl-02127 (+3)File: GCCCCADD.cblBusiness Rule: Validate contact information and communication requirements
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when contact record with communication number qualifier is being processed.
Trigger Criteria:
Context: A contact record with communication number qualifier is being processed
Applied to: Validate Communication Number Qualifier
Action: The communication number qualifier is provided and is not blank, 'FX' (fax), or 'TE' (telephone)
Logic Flow:
IF A contact record with communication number qualifier is being processed
AND The communication number qualifier is provided and is not blank, 'FX' (fax), or 'TE' (telephone)
THEN:
• Generate an error message indicating invalid communication qualifier value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when contact record is being processed with a contact name provided.
Trigger Criteria:
Context: A contact record is being processed with a contact name provided
Applied to: Communication Qualifier Required
Action: The communication number qualifier is blank or spaces
Logic Flow:
IF A contact record is being processed with a contact name provided
AND The communication number qualifier is blank or spaces
THEN:
• Generate an error message requiring communication qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when contact record is being processed with a communication number provided.
Trigger Criteria:
Context: A contact record is being processed with a communication number provided
Applied to: Communication Qualifier Required
Action: The communication number qualifier is blank or spaces
Logic Flow:
IF A contact record is being processed with a communication number provided
AND The communication number qualifier is blank or spaces
THEN:
• Generate an error message requiring communication qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when contact record is being processed with either communication number qualifier or contact name provided.
Trigger Criteria:
Context: A contact record is being processed with either communication number qualifier or contact name provided
Applied to: Communication Number Required
Action: The communication number is blank or spaces
Logic Flow:
IF A contact record is being processed with either communication number qualifier or contact name provided
AND The communication number is blank or spaces
THEN:
• Generate an error message requiring communication number
R-GCCCCADD-cbl-02131 (+29)File: GCCCCADD.cblBusiness Rule: Build and validate shipper and consignee records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when new shipper record needs to be created.
Trigger Criteria:
Context: A new shipper record needs to be created
Applied to: Initialize Shipper Record
Action: The system initializes the shipper record
Logic Flow:
IF A new shipper record needs to be created
AND The system initializes the shipper record
THEN:
• The record is cleared, CCN key is set, record type is set to '55', and sequence is set to '0001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment requires shipper information.
Trigger Criteria:
Context: A shipment requires shipper information
Applied to: EDI BOL Shipper Data Available?
Action: The system checks for EDI BOL shipper data availability
Logic Flow:
IF A shipment requires shipper information
AND The system checks for EDI BOL shipper data availability
THEN:
• If HN segment is found in EDI BOL, use EDI data; otherwise use Fastway data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol shipper data is available.
Trigger Criteria:
Context: EDI BOL shipper data is available
Applied to: Extract Shipper Name from EDI BOL
Action: The system extracts shipper information from EDI BOL
Logic Flow:
IF EDI BOL shipper data is available
AND The system extracts shipper information from EDI BOL
THEN:
• Entity ID is set to 'SH', shipper name is extracted from F1-CONSIGNOR-NAME, and CHOP code is extracted from F1-SHPR-CHOP
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol shipper data is not available.
Trigger Criteria:
Context: EDI BOL shipper data is not available
Applied to: Use Fastway Shipper Data
Action: The system needs shipper information
Logic Flow:
IF EDI BOL shipper data is not available
AND The system needs shipper information
THEN:
• Entity ID is set to 'SH', shipper name is extracted from SHPR-NM, and CHOP code is extracted from SHPR-CHOP
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper record requires address information.
Trigger Criteria:
Context: Shipper record requires address information
Applied to: EDI BOL Address Available?
Action: The system checks for EDI BOL address data
Logic Flow:
IF Shipper record requires address information
AND The system checks for EDI BOL address data
THEN:
• If HA segment is found, extract address from EDI BOL; otherwise use Fastway address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol address data is available.
Trigger Criteria:
Context: EDI BOL address data is available
Applied to: Extract Address from EDI BOL
Action: The system extracts address information
Logic Flow:
IF EDI BOL address data is available
AND The system extracts address information
THEN:
• Address line 1 is set from F2-ADDL-NAME-ADDR-1and address line 2 is set from F2-ADDL-NAME-ADDR-2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol address data is not available.
Trigger Criteria:
Context: EDI BOL address data is not available
Applied to: Use Fastway Address Data
Action: The system needs address information
Logic Flow:
IF EDI BOL address data is not available
AND The system needs address information
THEN:
• Address line 1 is set from SHPR-ADDR(1) and address line 2 is cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address line 1 is missing or blank.
Trigger Criteria:
Context: Address line 1 is missing or blank
Applied to: Set Default Address to 'NA' if Missing
Action: The system processes address information
Logic Flow:
IF Address line 1 is missing or blank
AND The system processes address information
THEN:
• Address line 1 is set to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper record requires city and state information.
Trigger Criteria:
Context: Shipper record requires city and state information
Applied to: EDI BOL City/State Available?
Action: The system checks for EDI BOL city/state data
Logic Flow:
IF Shipper record requires city and state information
AND The system checks for EDI BOL city/state data
THEN:
• If HC segment is found, extract city/state from EDI BOL; otherwise parse from Fastway data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol city/state data is available.
Trigger Criteria:
Context: EDI BOL city/state data is available
Applied to: Extract City/State from EDI BOL
Action: The system extracts location information
Logic Flow:
IF EDI BOL city/state data is available
AND The system extracts location information
THEN:
• City is set from F4-CITY-NAME, state from F4-STATE-PROV-CODE, postal code from F4-POSTAL-CODE, and country from F4-COUNTRY-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol city/state data is not available.
Trigger Criteria:
Context: EDI BOL city/state data is not available
Applied to: Parse City/State from Fastway Data
Action: The system needs location information
Logic Flow:
IF EDI BOL city/state data is not available
AND The system needs location information
THEN:
• Address line 2 is parsed to extract city name, state/province code, and postal code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state or province code is available.
Trigger Criteria:
Context: A state or province code is available
Applied to: Lookup Country Code from State
Action: The system needs to determine the country
Logic Flow:
IF A state or province code is available
AND The system needs to determine the country
THEN:
• The state-country lookup table is searched to find the corresponding country code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper record may include contact information.
Trigger Criteria:
Context: Shipper record may include contact information
Applied to: EDI BOL Contact Available?
Action: The system checks for EDI BOL contact data
Logic Flow:
IF Shipper record may include contact information
AND The system checks for EDI BOL contact data
THEN:
• If GP segment is found, extract contact information; otherwise skip contact processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol contact data is available.
Trigger Criteria:
Context: EDI BOL contact data is available
Applied to: Extract Contact Information
Action: The system extracts contact information
Logic Flow:
IF EDI BOL contact data is available
AND The system extracts contact information
THEN:
• Contact function code, name, communication number qualifier, and communication number are extracted from the GP segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper record has been populated with data.
Trigger Criteria:
Context: A shipper record has been populated with data
Applied to: Validate Shipper Record
Action: The system validates the shipper record
Logic Flow:
IF A shipper record has been populated with data
AND The system validates the shipper record
THEN:
• All required fields are checked and validation errors are generated for missing or invalid data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when validated shipper record is ready for storage.
Trigger Criteria:
Context: A validated shipper record is ready for storage
Applied to: Store Shipper Record
Action: The system stores the shipper record
Logic Flow:
IF A validated shipper record is ready for storage
AND The system stores the shipper record
THEN:
• The record is moved to the first position in the record array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when new consignee record needs to be created.
Trigger Criteria:
Context: A new consignee record needs to be created
Applied to: Initialize Consignee Record
Action: The system initializes the consignee record
Logic Flow:
IF A new consignee record needs to be created
AND The system initializes the consignee record
THEN:
• The record is cleared, CCN key is set, record type is set to '55', and sequence is set to '0002'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment requires consignee information.
Trigger Criteria:
Context: A shipment requires consignee information
Applied to: EDI BOL Consignee Data Available?
Action: The system checks for EDI BOL consignee data availability
Logic Flow:
IF A shipment requires consignee information
AND The system checks for EDI BOL consignee data availability
THEN:
• If CN segment is found in EDI BOL, use EDI data; otherwise use Fastway data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol consignee data is available.
Trigger Criteria:
Context: EDI BOL consignee data is available
Applied to: Extract Consignee Name from EDI BOL
Action: The system extracts consignee information from EDI BOL
Logic Flow:
IF EDI BOL consignee data is available
AND The system extracts consignee information from EDI BOL
THEN:
• Entity ID is set to 'CN', consignee name is extracted from D1-SHIPPER-NAME, and CHOP code is extracted from D1-CONS-CHOP
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol consignee data is not available.
Trigger Criteria:
Context: EDI BOL consignee data is not available
Applied to: Use Fastway Consignee Data
Action: The system needs consignee information
Logic Flow:
IF EDI BOL consignee data is not available
AND The system needs consignee information
THEN:
• Entity ID is set to 'CN', consignee name is extracted from CONS-DATA(1), and CHOP code is extracted from CONS-CHOP
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record has been populated with data.
Trigger Criteria:
Context: A consignee record has been populated with data
Applied to: Validate Consignee Record
Action: The system validates the consignee record
Logic Flow:
IF A consignee record has been populated with data
AND The system validates the consignee record
THEN:
• All required fields are checked and validation errors are generated for missing or invalid data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when validated consignee record is ready for storage.
Trigger Criteria:
Context: A validated consignee record is ready for storage
Applied to: Store Consignee Record
Action: The system stores the consignee record
Logic Flow:
IF A validated consignee record is ready for storage
AND The system stores the consignee record
THEN:
• The record is moved to the second position in the record array
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when record contains address, city/state, or contact information.
Trigger Criteria:
Context: A record contains address, city/state, or contact information
Applied to: Validate Entity ID and Name Required
Action: The system validates the record structure
Logic Flow:
IF A record contains address, city/state, or contact information
AND The system validates the record structure
THEN:
• If entity ID is missing, generate required entity ID error; if name is missing, generate required name error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when record has entity id and name populated.
Trigger Criteria:
Context: A record has entity ID and name populated
Applied to: Validate Address Information Required
Action: The system validates address requirements
Logic Flow:
IF A record has entity ID and name populated
AND The system validates address requirements
THEN:
• If address line 1 is missing, generate required address error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when record contains city information.
Trigger Criteria:
Context: A record contains city information
Applied to: Validate City Name Minimum Length
Action: The system validates city name length
Logic Flow:
IF A record contains city information
AND The system validates city name length
THEN:
• If city name is present but less than 2 characters, generate minimum length error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when record contains postal code information.
Trigger Criteria:
Context: A record contains postal code information
Applied to: Validate Postal Code Minimum Length
Action: The system validates postal code length
Logic Flow:
IF A record contains postal code information
AND The system validates postal code length
THEN:
• If postal code is present but less than 3 characters, generate minimum length error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when record has country code of ca, us, or mx.
Trigger Criteria:
Context: A record has country code of CA, US, or MX
Applied to: Validate State/Province for US/CA/MX
Action: The system validates geographic information
Logic Flow:
IF A record has country code of CA, US, or MX
AND The system validates geographic information
THEN:
• If state/province code is missing, generate required state/province error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when record has both state/province code and country code.
Trigger Criteria:
Context: A record has both state/province code and country code
Applied to: Validate State/Country Combination
Action: The system validates the geographic combination
Logic Flow:
IF A record has both state/province code and country code
AND The system validates the geographic combination
THEN:
• If the state/province code does not belong to the specified country, generate invalid state/province error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when record contains contact information.
Trigger Criteria:
Context: A record contains contact information
Applied to: Validate Contact Information Format
Action: The system validates contact format
Logic Flow:
IF A record contains contact information
AND The system validates contact format
THEN:
• If communication qualifier is provided without communication number, orif invalid qualifier is used, generate appropriate validation errors
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when validation errors have been identified.
Trigger Criteria:
Context: Validation errors have been identified
Applied to: Generate Validation Error Messages
Action: The system processes validation results
Logic Flow:
IF Validation errors have been identified
AND The system processes validation results
THEN:
• Error messages are retrieved from the message table and added to the error collection
R-GCCCCADD-cbl-02161 (+14)File: GCCCCADD.cblBusiness Rule: Build additional entity records with address and contact validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bill of lading exists with sf entity data.
Trigger Criteria:
Context: An EDI bill of lading exists with SF entity data
Applied to: Build SF - Stuffer Entity
Action: Building SF entity record and SF entity is found in EDI data
Logic Flow:
IF An EDI bill of lading exists with SF entity data
AND Building SF entity record and SF entity is found in EDI data
THEN:
• Extract SF entity name, set entity ID to 'SF', clear ID code qualifier and ID code, and retrieve address information from EDI segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bill of lading exists with uc entity data.
Trigger Criteria:
Context: An EDI bill of lading exists with UC entity data
Applied to: Build UC - Ultimate Consignee Entity
Action: Building UC entity record and UC entity is found in EDI data
Logic Flow:
IF An EDI bill of lading exists with UC entity data
AND Building UC entity record and UC entity is found in EDI data
THEN:
• Extract UC entity name, set entity ID to 'UC', clear ID code qualifier and ID code, and retrieve address information from EDI segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bill of lading exists with bn entity data.
Trigger Criteria:
Context: An EDI bill of lading exists with BN entity data
Applied to: Build BN - Beneficial Owner Entity
Action: Building BN entity record and BN entity is found in EDI data
Logic Flow:
IF An EDI bill of lading exists with BN entity data
AND Building BN entity record and BN entity is found in EDI data
THEN:
• Extract BN entity name, set entity ID to 'BN', clear ID code qualifier and ID code, set consignee chop code, and retrieve address information from EDI segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when transportation data exists in either edi or fastway system.
Trigger Criteria:
Context: Transportation data exists in either EDI or FastWay system
Applied to: Build C1 - Carrier Entity
Action: Building C1 entity record and C1 entity is found in EDI transportation data
Logic Flow:
IF Transportation data exists in either EDI or FastWay system
AND Building C1 entity record and C1 entity is found in EDI transportation data
THEN:
• Extract C1 organization ID, name, and address information from EDI transportation segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when c1 entity is not found in edi transportation data and fastway system contains carrier data.
Trigger Criteria:
Context: C1 entity is not found in EDI transportation data and FastWay system contains carrier data
Applied to: Use Fastway Carrier Data
Action: Building C1 entity record and consignee data code equals 'C'
Logic Flow:
IF C1 entity is not found in EDI transportation data and FastWay system contains carrier data
AND Building C1 entity record and consignee data code equals 'C'
THEN:
• Extract carrier information from FastWay consignee data and build C1 entity record with name and address
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bill of lading exists with n1 entity transportation data.
Trigger Criteria:
Context: An EDI bill of lading exists with N1 entity transportation data
Applied to: Build N1 - Notify Party Entity
Action: Building N1 entity record and N1 entity is found in EDI transportation data
Logic Flow:
IF An EDI bill of lading exists with N1 entity transportation data
AND Building N1 entity record and N1 entity is found in EDI transportation data
THEN:
• Extract N1 organization ID, name, and address information from EDI transportation segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bill of lading contains mcoa segments with pf or ss entity data.
Trigger Criteria:
Context: EDI bill of lading contains MCOA segments with PF or SS entity data
Applied to: Build PF/SS - Payment/Service Entities
Action: Building PF/SS entity records and MCOA segments are found with organization ID of 'PF' or 'SS'
Logic Flow:
IF EDI bill of lading contains MCOA segments with PF or SS entity data
AND Building PF/SS entity records and MCOA segments are found with organization ID of 'PF' or 'SS'
THEN:
• Extract entity ID, name, ID code qualifier, ID code, and address information from MCOA segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bill of lading contains transportation data for additional entity types.
Trigger Criteria:
Context: EDI bill of lading contains transportation data for additional entity types
Action: Building additional entity records and entities with IDs '11', 'NN', 'MC', 'OO', or 'FW' are found
Logic Flow:
IF EDI bill of lading contains transportation data for additional entity types
AND Building additional entity records and entities with IDs '11', 'NN', 'MC', 'OO', or 'FW' are found
THEN:
• Extract organization ID, name, and address information for each additional entity type from EDI transportation segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when business entity record is being processed with sequence number greater than 2.
Trigger Criteria:
Context: A business entity record is being processed with sequence number greater than 2
Applied to: Entity ID Valid?
Action: Validating entity ID and entity ID is not empty and is not a shipper, consignee, or customs broker entity
Logic Flow:
IF A business entity record is being processed with sequence number greater than 2
AND Validating entity ID and entity ID is not empty and is not a shipper, consignee, or customs broker entity
THEN:
• Generate validation error for invalid entity ID value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when business entity record has a valid entity id.
Trigger Criteria:
Context: A business entity record has a valid entity ID
Applied to: Name Required?
Action: Validating entity name and entity ID is not empty but entity name is empty
Logic Flow:
IF A business entity record has a valid entity ID
AND Validating entity name and entity ID is not empty but entity name is empty
THEN:
• Generate validation error for required entity name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when business entity record has a valid entity id.
Trigger Criteria:
Context: A business entity record has a valid entity ID
Applied to: Address Required?
Action: Validating address and entity ID is not empty but primary address line is empty
Logic Flow:
IF A business entity record has a valid entity ID
AND Validating address and entity ID is not empty but primary address line is empty
THEN:
• Generate validation error for required address information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when business entity record requires address information.
Trigger Criteria:
Context: A business entity record requires address information
Applied to: Set Default Address to 'NA'
Action: Validating address and primary address line is empty or spaces
Logic Flow:
IF A business entity record requires address information
AND Validating address and primary address line is empty or spaces
THEN:
• Set primary address line to 'NA' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when business entity record has both state/province code and country code specified.
Trigger Criteria:
Context: A business entity record has both state/province code and country code specified
Applied to: Validate State/Country Combination
Action: Validating address and state/province code does not match the country code in the state-country lookup table
Logic Flow:
IF A business entity record has both state/province code and country code specified
AND Validating address and state/province code does not match the country code in the state-country lookup table
THEN:
• Generate validation error for invalid state/province code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when business entity record contains contact information.
Trigger Criteria:
Context: A business entity record contains contact information
Applied to: Contact Info Valid?
Action: Validating contact information and communication number qualifier is not empty, 'FX', or 'TE'
Logic Flow:
IF A business entity record contains contact information
AND Validating contact information and communication number qualifier is not empty, 'FX', or 'TE'
THEN:
• Generate validation error for invalid communication number qualifier value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when business entity record has passed all validation checks.
Trigger Criteria:
Context: A business entity record has passed all validation checks
Applied to: Store Entity Record
Action: Storing entity record and all validation criteria are met
Logic Flow:
IF A business entity record has passed all validation checks
AND Storing entity record and all validation criteria are met
THEN:
• Insert the entity record into the customs database with sequence number within maximum allowed range
R-GCCCCADD-cbl-02176 (+8)File: GCCCCADD.cblBusiness Rule: Process importer records with backup and deletion handling
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi transaction is being processed and the temporary importer name contains data from previous processing.
Trigger Criteria:
Context: A corrector EDI transaction is being processed AND the temporary importer name contains data from previous processing
Applied to: Backup Original Importer Data
Action: The system detects existing importer data in temporary variables
Logic Flow:
IF A corrector EDI transaction is being processed AND the temporary importer name contains data from previous processing
AND The system detects existing importer data in temporary variables
THEN:
• The system backs up all original importer details including name, business number, qualifier, address, city, province, postal code, country, and contact information to temporary storage variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bill of lading is being processed for customs manifest creation.
Trigger Criteria:
Context: An EDI Bill of Lading is being processed for customs manifest creation
Applied to: EDI BOL has Importer Segment?
Action: The system searches for importer segment data in the EDI BOL
Logic Flow:
IF An EDI Bill of Lading is being processed for customs manifest creation
AND The system searches for importer segment data in the EDI BOL
THEN:
• The system determines if an importer segment with entity ID 'IM' exists and sets the appropriate processing flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol contains an importer segment with entity id 'im'.
Trigger Criteria:
Context: EDI BOL contains an importer segment with entity ID 'IM'
Applied to: Process EDI BOL Importer Data
Action: The system processes the importer segment data
Logic Flow:
IF EDI BOL contains an importer segment with entity ID 'IM'
AND The system processes the importer segment data
THEN:
• The system extracts importer name, sets it as the customs importer, extracts business number qualifier and business number, sets importer found flag to true, and creates customs record with all importer details including address and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol does not contain importer segment data and au table lookup is performed using consignee chop and commodity code.
Trigger Criteria:
Context: EDI BOL does not contain importer segment data AND AU table lookup is performed using consignee chop and commodity code
Applied to: AU Table has Importer Data?
Action: The system queries the AU table for matching importer records
Logic Flow:
IF EDI BOL does not contain importer segment data AND AU table lookup is performed using consignee chop and commodity code
AND The system queries the AU table for matching importer records
THEN:
• The system determines if AU table contains valid importer data and sets the AU importer found flag accordingly
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when au table contains valid importer data for the consignee and commodity combination.
Trigger Criteria:
Context: AU table contains valid importer data for the consignee and commodity combination
Applied to: Use AU Table Importer Data
Action: The system processes AU table importer information
Logic Flow:
IF AU table contains valid importer data for the consignee and commodity combination
AND The system processes AU table importer information
THEN:
• The system sets importer name from AU table, sets business number from AU table, sets business number qualifier to 'M5', sets CSA indicator to ON, and marks AU importer as found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when corrector edi transaction is being processed and backed up importer data exists in temporary variables and current processing has not found importer data in edi bol.
Trigger Criteria:
Context: A corrector EDI transaction is being processed AND backed up importer data exists in temporary variables AND current processing has not found importer data in EDI BOL
Applied to: Corrector EDI Deletes Importer?
Action: The system evaluates whether to restore backed up importer data
Logic Flow:
IF A corrector EDI transaction is being processed AND backed up importer data exists in temporary variables AND current processing has not found importer data in EDI BOL
AND The system evaluates whether to restore backed up importer data
THEN:
• If backed up importer data exists and current processing found no importer data, the system restores the backed up importer information; otherwise it clears the importer data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi has deleted importer data and backed up importer data exists in temporary variables.
Trigger Criteria:
Context: Corrector EDI has deleted importer data AND backed up importer data exists in temporary variables
Applied to: Restore Backed Up Importer Data
Action: The system restores importer information
Logic Flow:
IF Corrector EDI has deleted importer data AND backed up importer data exists in temporary variables
AND The system restores importer information
THEN:
• The system restores all backed up importer details including chop code, entity ID, name, business number qualifier, business number, CSA indicator, address lines, city, province, postal code, country, and contact information from temporary storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when both au table importer data and edi bol importer data have been found and processed.
Trigger Criteria:
Context: Both AU table importer data and EDI BOL importer data have been found AND processed
Applied to: Both AU and EDI Importer Found?
Action: The system evaluates CSA indicator settings for dual importer sources
Logic Flow:
IF Both AU table importer data and EDI BOL importer data have been found AND processed
AND The system evaluates CSA indicator settings for dual importer sources
THEN:
• If EDI business number qualifier is 'BN' or spaces, the system turns off CSA indicator to prevent conflicts; otherwise CSA indicator remains as set by the respective data source
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when all importer data processing is complete including edi bol processing, au table lookup, and corrector edi handling.
Trigger Criteria:
Context: All importer data processing is complete including EDI BOL processing, AU table lookup, and corrector EDI handling
Applied to: Create Final Importer Record
Action: The system creates the final importer record
Logic Flow:
IF All importer data processing is complete including EDI BOL processing, AU table lookup, and corrector EDI handling
AND The system creates the final importer record
THEN:
• The system validates all importer segment data, creates customs record type 55 with entity ID 'IM', includes all importer details, and prepares the record for insertion into customs database
R-GCCCCADD-cbl-02185 (+10)File: GCCCCADD.cblBusiness Rule: Process importer data from EDI BOL with corrector handling
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Get Importer N1 Segment from EDI BOL
Action: The system searches for importer N1 segment data in the EDI BOL
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system searches for importer N1 segment data in the EDI BOL
THEN:
• The system retrieves the importer entity information if available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer data is found in edi bol and backup importer data exists from previous processing.
Trigger Criteria:
Context: Importer data is found in EDI BOL and backup importer data exists from previous processing
Applied to: Is Corrector EDI with Backup Data?
Action: The system evaluates if this is a corrector EDI transaction with existing backup data
Logic Flow:
IF Importer data is found in EDI BOL and backup importer data exists from previous processing
AND The system evaluates if this is a corrector EDI transaction with existing backup data
THEN:
• The system chooses to restore backup data if corrector EDI with backup exists, otherwise processes new importer data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when corrector edi transaction is being processed and backup importer data exists.
Trigger Criteria:
Context: A corrector EDI transaction is being processed and backup importer data exists
Applied to: Restore Backup Importer Data
Action: The system needs to preserve original importer information
Logic Flow:
IF A corrector EDI transaction is being processed and backup importer data exists
AND The system needs to preserve original importer information
THEN:
• The system restores all backup importer data including name, business number, qualifier, address, city, state, postal code, country, and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid importer n1 segment data is available from edi bol.
Trigger Criteria:
Context: Valid importer N1 segment data is available from EDI BOL
Applied to: Extract Importer Business Information
Action: The system processes the importer entity information
Logic Flow:
IF Valid importer N1 segment data is available from EDI BOL
AND The system processes the importer entity information
THEN:
• The system assigns importer name to customs importer field, business number qualifier to customs business number qualifier field, and business number to customs business number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer address information is being processed.
Trigger Criteria:
Context: Importer address information is being processed
Applied to: Set Default 'NA' Address
Action: The address field is spaces or contains low values
Logic Flow:
IF Importer address information is being processed
AND The address field is spaces or contains low values
THEN:
• The system sets the address field to 'NA' as the default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer n3 address segment data is available from edi bol.
Trigger Criteria:
Context: Importer N3 address segment data is available from EDI BOL
Applied to: Process Address Information
Action: The system processes the address information
Logic Flow:
IF Importer N3 address segment data is available from EDI BOL
AND The system processes the address information
THEN:
• The system assigns address line 1 and address line 2 to customs manifest fields, setting address line 1 to 'NA' if it is spaces or low values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer n4 city/state segment data is available from edi bol.
Trigger Criteria:
Context: Importer N4 city/state segment data is available from EDI BOL
Applied to: Process City/State/Postal Information
Action: The system processes the geographic information
Logic Flow:
IF Importer N4 city/state segment data is available from EDI BOL
AND The system processes the geographic information
THEN:
• The system assigns city name, state/province code, postal code, and country code to customs manifest fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer data exists in au table and edi bol importer data is found and processed.
Trigger Criteria:
Context: Importer data exists in AU table and EDI BOL importer data is found and processed
Applied to: Reset CSA Indicator if AU and EDI Both Found
Action: The business number qualifier is 'BN' or spaces
Logic Flow:
IF Importer data exists in AU table and EDI BOL importer data is found and processed
AND The business number qualifier is 'BN' or spaces
THEN:
• The system turns off the CSA indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when no importer data is found in the current edi bol transaction.
Trigger Criteria:
Context: No importer data is found in the current EDI BOL transaction
Applied to: Corrector EDI Deleting Importer?
Action: The system evaluates if this represents an importer deletion in a corrector EDI
Logic Flow:
IF No importer data is found in the current EDI BOL transaction
AND The system evaluates if this represents an importer deletion in a corrector EDI
THEN:
• The system checks for backup data to restore or clears importer information if no backup exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when no importer data found in current edi bol but backup importer data exists.
Trigger Criteria:
Context: No importer data found in current EDI BOL but backup importer data exists
Applied to: Restore Backup and Mark as Found
Action: The system processes a corrector EDI transaction
Logic Flow:
IF No importer data found in current EDI BOL but backup importer data exists
AND The system processes a corrector EDI transaction
THEN:
• The system restores the backup importer data and marks importer as found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when no importer data is found in edi bol and no backup importer data exists.
Trigger Criteria:
Context: No importer data is found in EDI BOL and no backup importer data exists
Applied to: Clear Importer Information
Action: The system processes the importer information
Logic Flow:
IF No importer data is found in EDI BOL and no backup importer data exists
AND The system processes the importer information
THEN:
• The system clears the importer field from customs manifest
R-GCCCCADD-cbl-02196 (+10)File: GCCCCADD.cblBusiness Rule: Backup and restore importer data for corrector EDI transactions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when corrector edi transaction is being processed.
Trigger Criteria:
Context: A corrector EDI transaction is being processed
Applied to: Importer Data Exists in Input Parameters?
Action: The system checks input parameters for importer data
Logic Flow:
IF A corrector EDI transaction is being processed
AND The system checks input parameters for importer data
THEN:
• If importer name, business number, and business number qualifier are all present, proceed to search existing records, otherwise skip backup processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer data exists in input parameters.
Trigger Criteria:
Context: Importer data exists in input parameters
Applied to: Search Existing Customs Records
Action: The system searches customs records from sequence 3 to 24 for entity ID 'IM'
Logic Flow:
IF Importer data exists in input parameters
AND The system searches customs records from sequence 3 to 24 for entity ID 'IM'
THEN:
• Continue searching until an importer record is found or all sequences are exhausted
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when search has been performed through customs records.
Trigger Criteria:
Context: A search has been performed through customs records
Applied to: Found Existing Importer Record?
Action: The system evaluates if a record with entity ID 'IM' was found
Logic Flow:
IF A search has been performed through customs records
AND The system evaluates if a record with entity ID 'IM' was found
THEN:
• If found, proceed to backup the data, otherwise end the backup process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when existing importer record has been found in the customs database.
Trigger Criteria:
Context: An existing importer record has been found in the customs database
Applied to: Backup Original Importer Data
Action: The system backs up the importer data
Logic Flow:
IF An existing importer record has been found in the customs database
AND The system backs up the importer data
THEN:
• Store all importer details including name, business number, qualifier, address, city, province, postal code, country, and contact information in backup variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when original importer data needs to be backed up.
Trigger Criteria:
Context: Original importer data needs to be backed up
Applied to: Name, Business Number, Qualifier, Address, Contact Info
Action: The system stores the backup values
Logic Flow:
IF Original importer data needs to be backed up
AND The system stores the backup values
THEN:
• Move importer name, business number, qualifier, addresses, city, province, postal code, country, contact code, person name, communication qualifier, and communication number to corresponding backup variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer data has been stored in backup variables.
Trigger Criteria:
Context: Importer data has been stored in backup variables
Applied to: Set Backup Found Flag
Action: The backup process completes successfully
Logic Flow:
IF Importer data has been stored in backup variables
AND The backup process completes successfully
THEN:
• Set the temporary importer found flag to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when original importer data has been backed up successfully.
Trigger Criteria:
Context: Original importer data has been backed up successfully
Applied to: Clear Input Importer Parameters
Action: The system clears input parameters
Logic Flow:
IF Original importer data has been backed up successfully
AND The system clears input parameters
THEN:
• Set importer name, business number, and business number qualifier to spaces in the input structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when corrector edi transaction has been processed and backup data exists.
Trigger Criteria:
Context: A corrector EDI transaction has been processed and backup data exists
Applied to: Corrector EDI Deletes Importer Data?
Action: The system checks if importer data was deleted by the corrector
Logic Flow:
IF A corrector EDI transaction has been processed and backup data exists
AND The system checks if importer data was deleted by the corrector
THEN:
• If backup data exists and no new importer data was found in EDI, restore the original data, otherwise process new importer data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi has deleted importer data and backup exists.
Trigger Criteria:
Context: Corrector EDI has deleted importer data and backup exists
Applied to: Restore Original Importer Data
Action: The system restores original importer data
Logic Flow:
IF Corrector EDI has deleted importer data and backup exists
AND The system restores original importer data
THEN:
• Move all backed up values including name, business number, qualifier, address, contact information, and CSA indicator back to the active importer record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when original importer data needs to be restored.
Trigger Criteria:
Context: Original importer data needs to be restored
Applied to: Rebuild Importer Record from Backup
Action: The system rebuilds the importer record
Logic Flow:
IF Original importer data needs to be restored
AND The system rebuilds the importer record
THEN:
• Create a complete importer record with entity ID 'IM', restore name, business number, qualifier, all address fields, and contact information from backup variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer record is being restored from backup.
Trigger Criteria:
Context: Importer record is being restored from backup
Applied to: Preserve CSA Indicator from Backup
Action: The system preserves the CSA indicator
Logic Flow:
IF Importer record is being restored from backup
AND The system preserves the CSA indicator
THEN:
• Set the CSA indicator to the value stored in the backup variables
R-GCCCCADD-cbl-02207 (+20)File: GCCCCADD.cblBusiness Rule: Apply sub
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cargo manifest is being processed with a manifest-to station name.
Trigger Criteria:
Context: A cargo manifest is being processed with a manifest-to station name
Applied to: Is Manifest-To Station IIS-A6?
Action: The system evaluates the manifest-to station name
Logic Flow:
IF A cargo manifest is being processed with a manifest-to station name
AND The system evaluates the manifest-to station name
THEN:
• If manifest-to station equals 'IIS-A6', proceed with IIS-A6 specific processing, otherwise proceed with standard RF table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest-to station is 'iis-a6' and destination state code is available.
Trigger Criteria:
Context: A manifest-to station is 'IIS-A6' and destination state code is available
Applied to: Is Destination NOT US?
Action: The system searches the state-country table for the destination state code
Logic Flow:
IF A manifest-to station is 'IIS-A6' and destination state code is available
AND The system searches the state-country table for the destination state code
THEN:
• If the destination country is not 'US', proceed with CM table lookup, otherwise proceed with RF table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest-to station is 'iis-a6' and destination is not us.
Trigger Criteria:
Context: Manifest-to station is 'IIS-A6' and destination is not US
Applied to: Lookup CM Table with Destination Station
Action: The system calls table lookup with table ID 'CM' and destination station number as key
Logic Flow:
IF Manifest-to station is 'IIS-A6' and destination is not US
AND The system calls table lookup with table ID 'CM' and destination station number as key
THEN:
• The system attempts to retrieve CM table data for the destination station
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cm table lookup has been performed with destination station number.
Trigger Criteria:
Context: A CM table lookup has been performed with destination station number
Applied to: CM Table Lookup Successful?
Action: The system evaluates the table lookup return flag
Logic Flow:
IF A CM table lookup has been performed with destination station number
AND The system evaluates the table lookup return flag
THEN:
• If return flag equals 'SUCCESSFUL', proceed with MC table lookup using CM port data, otherwise clear sub-location code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cm table lookup was successful and returned port manifest information.
Trigger Criteria:
Context: CM table lookup was successful and returned port manifest information
Applied to: Lookup MC Table with CM Port
Action: The system calls table lookup with table ID 'MC' and CM port manifest data as key
Logic Flow:
IF CM table lookup was successful and returned port manifest information
AND The system calls table lookup with table ID 'MC' and CM port manifest data as key
THEN:
• The system attempts to retrieve MC table data for the port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup has been performed with cm port information.
Trigger Criteria:
Context: An MC table lookup has been performed with CM port information
Applied to: MC Table Lookup Successful?
Action: The system evaluates the table lookup return flag
Logic Flow:
IF An MC table lookup has been performed with CM port information
AND The system evaluates the table lookup return flag
THEN:
• If return flag equals 'SUCCESSFUL', set sub-location code from MC table data, otherwise clear sub-location code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when mc table lookup was successful and returned valid port data.
Trigger Criteria:
Context: MC table lookup was successful and returned valid port data
Applied to: Set Sub-location Code from MC Table
Action: The system processes the MC table segment data
Logic Flow:
IF MC table lookup was successful and returned valid port data
AND The system processes the MC table segment data
THEN:
• The sub-location code is set to the MC sub-location code value from the table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when either cm table lookup or mc table lookup has failed.
Trigger Criteria:
Context: Either CM table lookup or MC table lookup has failed
Applied to: Clear Sub-location Code
Action: The system processes the failed lookup result
Logic Flow:
IF Either CM table lookup or MC table lookup has failed
AND The system processes the failed lookup result
THEN:
• The sub-location code is cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when consignee chop code and destination station number are available.
Trigger Criteria:
Context: Consignee CHOP code and destination station number are available
Applied to: Lookup RF Table with Consignee CHOP and Station
Action: The system calls table lookup with table ID 'RF', consignee CHOP, and destination station as keys
Logic Flow:
IF Consignee CHOP code and destination station number are available
AND The system calls table lookup with table ID 'RF', consignee CHOP, and destination station as keys
THEN:
• The system attempts to retrieve RF table data for bonded customer determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when rf table lookup has been performed with consignee and station information.
Trigger Criteria:
Context: An RF table lookup has been performed with consignee and station information
Applied to: RF Table Lookup Successful?
Action: The system evaluates the table lookup return flag
Logic Flow:
IF An RF table lookup has been performed with consignee and station information
AND The system evaluates the table lookup return flag
THEN:
• If return flag equals 'SUCCESSFUL', set sub-location code from RF data and mark customer as bonded, otherwise mark customer as not bonded
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when rf table lookup was successful and returned valid bonded customer data.
Trigger Criteria:
Context: RF table lookup was successful and returned valid bonded customer data
Applied to: Set Sub-location Code from RF Table
Action: The system processes the RF table segment data
Logic Flow:
IF RF table lookup was successful and returned valid bonded customer data
AND The system processes the RF table segment data
THEN:
• The sub-location code is set to RF sub-location code value and customer bonded indicator is set to TRUE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when rf table lookup found valid bonded customer data.
Trigger Criteria:
Context: RF table lookup found valid bonded customer data
Applied to: Set Customer Bonded Indicator ON
Action: The system processes the successful RF lookup result
Logic Flow:
IF RF table lookup found valid bonded customer data
AND The system processes the successful RF lookup result
THEN:
• The customer bonded indicator is set to TRUE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when rf table lookup failed to find bonded customer data.
Trigger Criteria:
Context: RF table lookup failed to find bonded customer data
Applied to: Set Customer Bonded Indicator OFF
Action: The system processes the failed RF lookup result
Logic Flow:
IF RF table lookup failed to find bonded customer data
AND The system processes the failed RF lookup result
THEN:
• The customer bonded indicator is set to FALSE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when sub-location code processing has been completed through table lookups.
Trigger Criteria:
Context: Sub-location code processing has been completed through table lookups
Applied to: Sub-location Code Present?
Action: The system evaluates the current sub-location code value
Logic Flow:
IF Sub-location code processing has been completed through table lookups
AND The system evaluates the current sub-location code value
THEN:
• If sub-location code is not spaces, requirements are met, otherwise check additional exemption conditions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when sub-location code is spaces and additional exemption checks are needed.
Trigger Criteria:
Context: Sub-location code is spaces and additional exemption checks are needed
Applied to: CSA Indicator ON?
Action: The system evaluates the CSA indicator status
Logic Flow:
IF Sub-location code is spaces and additional exemption checks are needed
AND The system evaluates the CSA indicator status
THEN:
• If CSA indicator is ON, sub-location requirements are met, otherwise check manifest station equality
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when sub-location code is spaces and csa indicator is off.
Trigger Criteria:
Context: Sub-location code is spaces and CSA indicator is OFF
Applied to: Manifest From equals Manifest To AND NOT IIS-A6?
Action: The system compares manifest from station name with manifest to station name
Logic Flow:
IF Sub-location code is spaces and CSA indicator is OFF
AND The system compares manifest from station name with manifest to station name
THEN:
• If both stations are equal and manifest to station is not 'IIS-A6', sub-location requirements are met, otherwise check destination country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when sub-location code is spaces, csa indicator is off, and manifest stations are not equal or are iis-a6.
Trigger Criteria:
Context: Sub-location code is spaces, CSA indicator is OFF, and manifest stations are not equal or are IIS-A6
Applied to: Destination is US?
Action: The system evaluates the destination country from state-country table lookup
Logic Flow:
IF Sub-location code is spaces, CSA indicator is OFF, and manifest stations are not equal or are IIS-A6
AND The system evaluates the destination country from state-country table lookup
THEN:
• If destination country is 'US', sub-location requirements are met, otherwise check arrival indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when sub-location code is spaces, csa indicator is off, manifest stations don't qualify for exemption, and destination is not us.
Trigger Criteria:
Context: Sub-location code is spaces, CSA indicator is OFF, manifest stations don't qualify for exemption, and destination is not US
Applied to: Arrival Indicator is Y?
Action: The system evaluates the arrival indicator value
Logic Flow:
IF Sub-location code is spaces, CSA indicator is OFF, manifest stations don't qualify for exemption, and destination is not US
AND The system evaluates the arrival indicator value
THEN:
• If arrival indicator equals 'Y', sub-location requirements are met, otherwise set sub-location error flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when either sub-location code is present or valid exemption conditions are met.
Trigger Criteria:
Context: Either sub-location code is present or valid exemption conditions are met
Applied to: Sub-location Code Requirements Met
Action: The system completes sub-location validation processing
Logic Flow:
IF Either sub-location code is present or valid exemption conditions are met
AND The system completes sub-location validation processing
THEN:
• Sub-location code requirements are considered satisfied and processing continues normally
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when sub-location code is spaces and no exemption conditions are met.
Trigger Criteria:
Context: Sub-location code is spaces and no exemption conditions are met
Applied to: Set Sub-location Error Flag
Action: The system completes all sub-location validation checks
Logic Flow:
IF Sub-location code is spaces and no exemption conditions are met
AND The system completes all sub-location validation checks
THEN:
• The sub-location error flag is set to indicate requirement violation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when sub-location error flag has been set due to requirement violation.
Trigger Criteria:
Context: Sub-location error flag has been set due to requirement violation
Applied to: Generate Sub-location Error Message
Action: The system processes the error condition
Logic Flow:
IF Sub-location error flag has been set due to requirement violation
AND The system processes the error condition
THEN:
• An error message for invalid destination station sub-location code is retrieved and added to the message list
R-GCCCCADD-cbl-02228 (+19)File: GCCCCADD.cblBusiness Rule: Process haulage rights validation and carrier lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with an ima code.
Trigger Criteria:
Context: A shipment with an IMA code
Applied to: IMA Code = 'HM'?
Action: The IMA code is evaluated
Logic Flow:
IF A shipment with an IMA code
AND The IMA code is evaluated
THEN:
• If IMA code equals 'HM' then haulage processing is required, otherwise haulage fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment in haulage mode.
Trigger Criteria:
Context: A shipment in haulage mode
Applied to: Haulage Right Carrier exists?
Action: The haulage right carrier field is checked
Logic Flow:
IF A shipment in haulage mode
AND The haulage right carrier field is checked
THEN:
• If haulage right carrier is spaces then set unknown haulage rights SCAC, reject haulage status, and unknown bill owner, otherwise lookup carrier code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid haulage right carrier code.
Trigger Criteria:
Context: A valid haulage right carrier code
Applied to: Lookup Carrier Code in CC Table
Action: CC table lookup is performed
Logic Flow:
IF A valid haulage right carrier code
AND CC table lookup is performed
THEN:
• Carrier code information is retrieved from CC table for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cc table lookup has been performed.
Trigger Criteria:
Context: A CC table lookup has been performed
Applied to: Carrier Code Found?
Action: The lookup result is evaluated
Logic Flow:
IF A CC table lookup has been performed
AND The lookup result is evaluated
THEN:
• If lookup successful then set haulage rights SCAC from CC table, otherwise set unknown haulage rights SCAC, reject haulage status, and unknown bill owner
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage mode shipment with carrier information.
Trigger Criteria:
Context: A haulage mode shipment with carrier information
Applied to: Called from GCX011 and CCN starts with '6105'?
Action: The calling program and CCN key are evaluated
Logic Flow:
IF A haulage mode shipment with carrier information
AND The calling program and CCN key are evaluated
THEN:
• If called from GCX011 and CCN key starts with '6105' then check bill-as SCAC validity, otherwise proceed to SS table processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when gcx011 call with ccn starting with '6105'. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A GCX011 call with CCN starting with '6105'
Applied to: Bill-As SCAC is valid?
Action: The bill-as SCAC is evaluated
Logic Flow:
IF A GCX011 call with CCN starting with '6105'
AND The bill-as SCAC is evaluated
THEN:
• If bill-as SCAC is not 'UNKN', not spaces, not low-values, and not '6105' then update CCN key with bill-as SCAC, otherwise proceed to SS table processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid bill-as scac for ccn update.
Trigger Criteria:
Context: A valid bill-as SCAC for CCN update
Applied to: Automated Haulage?
Action: The automated haulage flag is checked
Logic Flow:
IF A valid bill-as SCAC for CCN update
AND The automated haulage flag is checked
THEN:
• If automated haulage then set CCN key suffix to 'E' and bill owner to '6105', otherwise set CCN key suffix to 'P' and bill owner to bill-as SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with ima code not equal to 'hm'.
Trigger Criteria:
Context: A shipment with IMA code not equal to 'HM'
Applied to: Clear Haulage Rights SCAC
Action: Haulage processing is performed
Logic Flow:
IF A shipment with IMA code not equal to 'HM'
AND Haulage processing is performed
THEN:
• Clear haulage rights SCAC, haulage automated flag, and reject haulage indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment requiring ss table lookup.
Trigger Criteria:
Context: A shipment requiring SS table lookup
Applied to: Build SS Table Key with Port Code
Action: SS table key is constructed
Logic Flow:
IF A shipment requiring SS table lookup
AND SS table key is constructed
THEN:
• Build key with 'C' prefix plus 3-digit Canadian customs code from manifest station, and determine SCAC code for lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ss table lookup key being constructed.
Trigger Criteria:
Context: An SS table lookup key being constructed
Applied to: Haulage Rights SCAC exists?
Action: The haulage rights SCAC is evaluated
Logic Flow:
IF An SS table lookup key being constructed
AND The haulage rights SCAC is evaluated
THEN:
• If haulage rights SCAC is spaces then use '6105' as SCAC code, otherwise use haulage rights SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when constructed ss table key.
Trigger Criteria:
Context: A constructed SS table key
Applied to: Lookup SS Table Entry
Action: SS table lookup is performed
Logic Flow:
IF A constructed SS table key
AND SS table lookup is performed
THEN:
• Service schedule information is retrieved for haulage agreement validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ss table lookup has been performed.
Trigger Criteria:
Context: An SS table lookup has been performed
Applied to: SS Table Entry Found?
Action: The lookup result is evaluated
Logic Flow:
IF An SS table lookup has been performed
AND The lookup result is evaluated
THEN:
• If lookup successful then process haulage mode logic, otherwise handle lookup failure based on haulage mode
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when successful ss table lookup.
Trigger Criteria:
Context: A successful SS table lookup
Applied to: Haulage Mode?
Action: The shipment mode is evaluated
Logic Flow:
IF A successful SS table lookup
AND The shipment mode is evaluated
THEN:
• If haulage mode then set automated carrier flag, check haulage agreement, and set haulage bill SCAC, otherwise set line bill SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when haulage mode shipment with successful ss table lookup.
Trigger Criteria:
Context: A haulage mode shipment with successful SS table lookup
Applied to: Set Automated Carrier Flag
Action: Automated carrier processing is performed
Logic Flow:
IF A haulage mode shipment with successful SS table lookup
AND Automated carrier processing is performed
THEN:
• Set haulage automated flag from SS table automated carrier field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when haulage shipment with automated haulage flag set.
Trigger Criteria:
Context: A haulage shipment with automated haulage flag set
Applied to: Set Bill Owner to '6105'
Action: Bill owner is determined
Logic Flow:
IF A haulage shipment with automated haulage flag set
AND Bill owner is determined
THEN:
• Set bill owner to '6105' for automated haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage shipment with ss table data.
Trigger Criteria:
Context: A haulage shipment with SS table data
Applied to: Haulage Agreement = 'Y'?
Action: Haulage agreement status is checked
Logic Flow:
IF A haulage shipment with SS table data
AND Haulage agreement status is checked
THEN:
• If haulage agreement equals 'Y' then accept haulage, otherwise reject haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage shipment with ss table data.
Trigger Criteria:
Context: A haulage shipment with SS table data
Applied to: Set Bill-As SCAC from Haulage Bill Init
Action: Bill-as SCAC is assigned
Logic Flow:
IF A haulage shipment with SS table data
AND Bill-as SCAC is assigned
THEN:
• Set bill-as SCAC from SS table haulage bill initial field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when non-haulage shipment with ss table data.
Trigger Criteria:
Context: A non-haulage shipment with SS table data
Applied to: Set Bill-As SCAC from Line Bill Init
Action: Bill-as SCAC is assigned
Logic Flow:
IF A non-haulage shipment with SS table data
AND Bill-as SCAC is assigned
THEN:
• Set bill-as SCAC from SS table line bill initial field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when failed ss table lookup.
Trigger Criteria:
Context: A failed SS table lookup
Applied to: Haulage Mode?
Action: The shipment mode is evaluated
Logic Flow:
IF A failed SS table lookup
AND The shipment mode is evaluated
THEN:
• If haulage mode then clear haulage automated flag, set reject haulage status, set unknown bill owner and bill-as SCAC, otherwise set default bill owner and bill-as SCAC to '6105'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when non-haulage shipment with failed ss table lookup.
Trigger Criteria:
Context: A non-haulage shipment with failed SS table lookup
Applied to: Set Bill Owner to '6105'
Action: Bill owner is assigned
Logic Flow:
IF A non-haulage shipment with failed SS table lookup
Business Justification: Establishes the required business protocol to be followed when shipment record with an ima code.
Trigger Criteria:
Context: A shipment record with an IMA code
Applied to: Is IMA Code = 'HM'?
Action: The system evaluates the IMA code value
Logic Flow:
IF A shipment record with an IMA code
AND The system evaluates the IMA code value
THEN:
• If IMA code equals 'HM' then haulage processing is initiated, otherwise haulage flags are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment with ima code 'hm'.
Trigger Criteria:
Context: A shipment with IMA code 'HM'
Applied to: Haulage Right Carrier Present?
Action: The system checks for haulage right carrier information
Logic Flow:
IF A shipment with IMA code 'HM'
AND The system checks for haulage right carrier information
THEN:
• If haulage right carrier is spaces then set unknown haulage defaults, otherwise lookup carrier code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage shipment with missing haulage right carrier.
Trigger Criteria:
Context: A haulage shipment with missing haulage right carrier
Applied to: Set Unknown Haulage Rights SCAC
Action: The system processes haulage defaults
Logic Flow:
IF A haulage shipment with missing haulage right carrier
AND The system processes haulage defaults
THEN:
• Set haulage rights SCAC to 'UNKN', clear automated flag, set bill owner to 'UNKN', and set reject haulage status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid haulage right carrier code.
Trigger Criteria:
Context: A valid haulage right carrier code
Applied to: Lookup Carrier Code in CC Table
Action: The system performs CC table lookup
Logic Flow:
IF A valid haulage right carrier code
AND The system performs CC table lookup
THEN:
• Retrieve carrier code information for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cc table lookup operation has been performed.
Trigger Criteria:
Context: A CC table lookup operation has been performed
Applied to: CC Table Lookup Successful?
Action: The system evaluates the lookup results
Logic Flow:
IF A CC table lookup operation has been performed
AND The system evaluates the lookup results
THEN:
• If lookup successful then set haulage rights SCAC from CC table, otherwise set unknown haulage defaults
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when canadian customs code from manifest station lookup.
Trigger Criteria:
Context: Canadian customs code from manifest station lookup
Applied to: Build SS Table Key with Port Code
Action: The system builds SS table key
Logic Flow:
IF Canadian customs code from manifest station lookup
AND The system builds SS table key
THEN:
• Construct key with 'C' prefix and last 3 digits of Canadian customs code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ss table lookup key and haulage rights scac status.
Trigger Criteria:
Context: An SS table lookup key and haulage rights SCAC status
Applied to: Haulage Rights SCAC Available?
Action: The system determines which SCAC to use for lookup
Logic Flow:
IF An SS table lookup key and haulage rights SCAC status
AND The system determines which SCAC to use for lookup
THEN:
• If haulage rights SCAC is available then use it, otherwise use default '6105' SCAC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when constructed ss table key with port code and scac.
Trigger Criteria:
Context: A constructed SS table key with port code and SCAC
Applied to: Lookup SS Table Entry
Action: The system performs SS table lookup
Logic Flow:
IF A constructed SS table key with port code and SCAC
AND The system performs SS table lookup
THEN:
• Retrieve station/SCAC data for haulage processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ss table lookup operation has been performed for haulage processing.
Trigger Criteria:
Context: An SS table lookup operation has been performed for haulage processing
Applied to: SS Table Lookup Successful?
Action: The system evaluates the lookup results
Logic Flow:
IF An SS table lookup operation has been performed for haulage processing
AND The system evaluates the lookup results
THEN:
• If lookup successful then process automated carrier flags and haulage agreement, otherwise set reject haulage defaults
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when successful ss table lookup with automated carrier flag.
Trigger Criteria:
Context: Successful SS table lookup with automated carrier flag
Applied to: Automated Haulage?
Action: The system checks if haulage is automated
Logic Flow:
IF Successful SS table lookup with automated carrier flag
AND The system checks if haulage is automated
THEN:
• If automated haulage then set bill owner to '6105'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ss table data with haulage agreement indicator.
Trigger Criteria:
Context: SS table data with haulage agreement indicator
Applied to: Haulage Agreement = 'Y'?
Action: The system evaluates the haulage agreement flag
Logic Flow:
IF SS table data with haulage agreement indicator
AND The system evaluates the haulage agreement flag
THEN:
• If haulage agreement equals 'Y' then set accept haulage status, otherwise set reject haulage status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when successful ss table lookup for haulage processing.
Trigger Criteria:
Context: Successful SS table lookup for haulage processing
Applied to: Set Bill As SCAC from SS Haulage Bill Init
Action: The system sets billing SCAC
Logic Flow:
IF Successful SS table lookup for haulage processing
AND The system sets billing SCAC
THEN:
• If haulage processing then use SS haulage bill init, otherwise use SS line bill init
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when failed ss table lookup for haulage processing.
Trigger Criteria:
Context: A failed SS table lookup for haulage processing
Applied to: Set Reject Haulage Status
Action: The system handles the lookup failure
Logic Flow:
IF A failed SS table lookup for haulage processing
AND The system handles the lookup failure
THEN:
• If haulage processing then set reject status and unknown values, otherwise set default '6105' values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with ima code not equal to 'hm'.
Trigger Criteria:
Context: A shipment with IMA code not equal to 'HM'
Applied to: Clear Haulage Flags
Action: The system processes non-haulage shipment
Logic Flow:
IF A shipment with IMA code not equal to 'HM'
AND The system processes non-haulage shipment
THEN:
• Clear haulage rights SCAC, automated flag, and reject haulage indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when completed haulage processing with calling program and ccn information.
Trigger Criteria:
Context: Completed haulage processing with calling program and CCN information
Applied to: Called from GCX011 and CCN starts with '6105'?
Action: The system evaluates CCN modification eligibility
Logic Flow:
IF Completed haulage processing with calling program and CCN information
AND The system evaluates CCN modification eligibility
THEN:
• If called from GCX011 and CCN starts with '6105' then proceed with bill-as SCAC validation, otherwise end processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when bill-as scac code from haulage processing.
Trigger Criteria:
Context: A bill-as SCAC code from haulage processing
Applied to: Bill As SCAC Valid?
Action: The system validates the SCAC for CCN modification
Logic Flow:
IF A bill-as SCAC code from haulage processing
AND The system validates the SCAC for CCN modification
THEN:
• If bill-as SCAC is not 'UNKN', not spaces, not low-values, and not '6105' then proceed with CCN modification, otherwise end processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid bill-as scac code for ccn modification.
Trigger Criteria:
Context: A valid bill-as SCAC code for CCN modification
Applied to: Modify CCN Key with Bill As SCAC
Action: The system modifies the CCN key
Logic Flow:
IF A valid bill-as SCAC code for CCN modification
AND The system modifies the CCN key
THEN:
• Replace first 4 characters of CCN key with bill-as SCAC code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when modified ccn key with automated haulage status.
Trigger Criteria:
Context: A modified CCN key with automated haulage status
Applied to: Automated Haulage?
Action: The system finalizes CCN configuration
Logic Flow:
IF A modified CCN key with automated haulage status
AND The system finalizes CCN configuration
THEN:
• If automated haulage then set CCN type to 'E' and bill owner to '6105', otherwise set CCN type to 'P' and bill owner to bill-as SCAC
R-GCCCCADD-cbl-02266 (+20)File: GCCCCADD.cblBusiness Rule: Extract and validate importer information from EDI BOL segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system is ready to process importer information.
Trigger Criteria:
Context: The system is ready to process importer information
Applied to: Initialize Importer Segment
Action: Importer processing begins
Logic Flow:
IF The system is ready to process importer information
AND Importer processing begins
THEN:
• The importer segment workspace is cleared and initialized to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol key exists and importer entity type is defined.
Trigger Criteria:
Context: An EDI BOL key exists and importer entity type is defined
Applied to: Get EDI BOL N1 Segment for Importer
Action: The system searches for importer N1 segment in EDI BOL data
Logic Flow:
IF An EDI BOL key exists and importer entity type is defined
AND The system searches for importer N1 segment in EDI BOL data
THEN:
• The system retrieves the importer entity segment if it exists or sets not found status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer n1 segment is found in edi bol.
Trigger Criteria:
Context: Importer N1 segment is found in EDI BOL
Applied to: Check if Corrector EDI Has Backup Data
Action: The system checks for existing backup importer data
Logic Flow:
IF Importer N1 segment is found in EDI BOL
AND The system checks for existing backup importer data
THEN:
• The system identifies whether backup importer name data is available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when backup importer data exists from previous processing.
Trigger Criteria:
Context: Backup importer data exists from previous processing
Applied to: Restore Original Importer Data
Action: The system needs to preserve original importer information
Logic Flow:
IF Backup importer data exists from previous processing
AND The system needs to preserve original importer information
THEN:
• The system restores all original importer details including name, business number, qualifier, CSA indicator, address, city, province, postal code, country, and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer n1 segment is found and no backup data exists.
Trigger Criteria:
Context: Importer N1 segment is found and no backup data exists
Applied to: Extract Importer Entity Information
Action: The system processes the importer entity information
Logic Flow:
IF Importer N1 segment is found and no backup data exists
AND The system processes the importer entity information
THEN:
• The system extracts importer name, business number qualifier, business number, and sets the importer found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer information is being processed from edi bol.
Trigger Criteria:
Context: Importer information is being processed from EDI BOL
Applied to: Set Entity ID to 'IM'
Action: The system sets up the importer entity record
Logic Flow:
IF Importer information is being processed from EDI BOL
AND The system sets up the importer entity record
THEN:
• The entity ID is set to 'IM' to identify this as an importer record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer n1 segment contains business name information.
Trigger Criteria:
Context: Importer N1 segment contains business name information
Applied to: Extract Importer Name
Action: The system processes importer entity details
Logic Flow:
IF Importer N1 segment contains business name information
AND The system processes importer entity details
THEN:
• The importer business name is extracted and stored in both customs record and segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer n1 segment contains business number qualifier.
Trigger Criteria:
Context: Importer N1 segment contains business number qualifier
Applied to: Extract Business Number Qualifier
Action: The system processes importer identification details
Logic Flow:
IF Importer N1 segment contains business number qualifier
AND The system processes importer identification details
THEN:
• The business number qualifier is extracted and stored in both customs record and segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer n1 segment contains business number information.
Trigger Criteria:
Context: Importer N1 segment contains business number information
Applied to: Extract Business Number
Action: The system processes importer identification details
Logic Flow:
IF Importer N1 segment contains business number information
AND The system processes importer identification details
THEN:
• The business number is extracted and stored in both customs record and segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer entity information has been successfully extracted from edi bol.
Trigger Criteria:
Context: Importer entity information has been successfully extracted from EDI BOL
Applied to: Set CSA Indicator
Action: The system completes importer entity processing
Logic Flow:
IF Importer entity information has been successfully extracted from EDI BOL
AND The system completes importer entity processing
THEN:
• The importer found flag is set to indicate successful processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer entity has been processed and edi bol key exists.
Trigger Criteria:
Context: Importer entity has been processed and EDI BOL key exists
Applied to: Get EDI BOL N3 Address Segment
Action: The system searches for importer address information
Logic Flow:
IF Importer entity has been processed and EDI BOL key exists
AND The system searches for importer address information
THEN:
• The system retrieves the N3 address segment if it exists or sets not found status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n3 address segment is found in edi bol.
Trigger Criteria:
Context: Importer N3 address segment is found in EDI BOL
Applied to: Extract Address Line 1 and Extract Address Line 2
Action: The system processes importer address information
Logic Flow:
IF Importer N3 address segment is found in EDI BOL
AND The system processes importer address information
THEN:
• Address line 1 is extracted, andif it is blank or low-values then it is set to 'NA', and address line 2 is extracted
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when no importer n3 address segment is found in edi bol.
Trigger Criteria:
Context: No importer N3 address segment is found in EDI BOL
Applied to: Set Default Address to 'NA'
Action: The system needs to populate address information
Logic Flow:
IF No importer N3 address segment is found in EDI BOL
AND The system needs to populate address information
THEN:
• Address line 1 is set to 'NA' and all other address fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer address processing is in progress and edi bol key exists.
Trigger Criteria:
Context: Importer address processing is in progress and EDI BOL key exists
Applied to: Get EDI BOL N4 City/State Segment
Action: The system searches for importer city and state information
Logic Flow:
IF Importer address processing is in progress and EDI BOL key exists
AND The system searches for importer city and state information
THEN:
• The system retrieves the N4 city/state segment if it exists or sets not found status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer n4 city/state segment is found in edi bol.
Trigger Criteria:
Context: Importer N4 city/state segment is found in EDI BOL
Applied to: Extract City Name, Extract State/Province Code, Extract Postal Code, Extract Country Code
Action: The system processes importer geographic information
Logic Flow:
IF Importer N4 city/state segment is found in EDI BOL
AND The system processes importer geographic information
THEN:
• City name, state/province code, postal code, and country code are extracted from the segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when no importer n4 city/state segment is found in edi bol.
Trigger Criteria:
Context: No importer N4 city/state segment is found in EDI BOL
Applied to: Clear City/State Data
Action: The system needs to handle missing geographic information
Logic Flow:
IF No importer N4 city/state segment is found in EDI BOL
AND The system needs to handle missing geographic information
THEN:
• All city, state, postal code, and country fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer geographic information processing is complete.
Trigger Criteria:
Context: Importer geographic information processing is complete
Applied to: Clear Contact Information
Action: The system finalizes importer segment data
Logic Flow:
IF Importer geographic information processing is complete
AND The system finalizes importer segment data
THEN:
• All contact information fields including contact function code, name, communication qualifier, and communication number are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when all importer segment data has been populated.
Trigger Criteria:
Context: All importer segment data has been populated
Applied to: Validate Importer Segment Data
Action: The system validates the importer record
Logic Flow:
IF All importer segment data has been populated
AND The system validates the importer record
THEN:
• The system performs validation checks on entity ID, name, address, geographic, and contact information fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer segment data has been validated successfully.
Trigger Criteria:
Context: Importer segment data has been validated successfully
Applied to: Store Importer in Customs Record
Action: The system stores the importer information
Logic Flow:
IF Importer segment data has been validated successfully
AND The system stores the importer information
THEN:
• The importer segment is added to the customs record array for database storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when no importer n1 segment is found in edi bol and backup importer data exists and importer has not been found in segment 55.
Trigger Criteria:
Context: No importer N1 segment is found in EDI BOL and backup importer data exists and importer has not been found in segment 55
Applied to: Clear Importer Data but Keep Backup
Action: The system processes a corrector EDI that removes importer information
Logic Flow:
IF No importer N1 segment is found in EDI BOL and backup importer data exists and importer has not been found in segment 55
AND The system processes a corrector EDI that removes importer information
THEN:
• The system restores backup importer data and sets appropriate processing flags, but if no backup exists and no segment 55 importer found, then importer fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when au table importer is found and segment 55 importer is found and business number qualifier is 'bn' or spaces.
Trigger Criteria:
Context: AU table importer is found and segment 55 importer is found and business number qualifier is 'BN' or spaces
Applied to: Set CSA Indicator
Action: The system processes multiple importer data sources
Logic Flow:
IF AU table importer is found and segment 55 importer is found and business number qualifier is 'BN' or spaces
AND The system processes multiple importer data sources
THEN:
• The CSA indicator is turned off to prevent conflicts between importer sources
R-GCCCCADD-cbl-02287 (+11)File: GCCCCADD.cblBusiness Rule: Handle corrector EDI importer data backup and restoration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi processing is initiated and existing importer data is present in temporary storage (ws-temp-im-name > spaces). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Corrector EDI processing is initiated and existing importer data is present in temporary storage (WS-TEMP-IM-NAME > SPACES)
Applied to: Check if Corrector EDI with Existing Importer Data
Action: The system checks for existing importer data backup requirement
Logic Flow:
IF Corrector EDI processing is initiated and existing importer data is present in temporary storage (WS-TEMP-IM-NAME > SPACES)
AND The system checks for existing importer data backup requirement
THEN:
• The system should backup all original importer data including CHOP code, name, qualifiers, business number, CSA indicator, address information, city/state/postal data, and contact details to temporary storage variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer data backup process is active and temporary importer chop code exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Importer data backup process is active and temporary importer CHOP code exists
Applied to: Store Importer CHOP Code
Action: The system processes the CHOP code backup step
Logic Flow:
IF Importer data backup process is active and temporary importer CHOP code exists
AND The system processes the CHOP code backup step
THEN:
• The system should move the temporary importer CHOP code (WS-TEMP-IM-CHOP) to the customs record CHOP code field (GCCS-SC301-CHOP-CDE)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer data restoration is in progress and temporary importer name exists.
Trigger Criteria:
Context: Importer data restoration is in progress and temporary importer name exists
Applied to: Store Importer Name
Action: The system processes the importer name backup step
Logic Flow:
IF Importer data restoration is in progress and temporary importer name exists
AND The system processes the importer name backup step
THEN:
• The system should set entity ID to 'IM', move temporary importer name to both customs importer field and N102 name field, and set the entity ID validation field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when business qualifier backup is required and temporary qualifier data exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Business qualifier backup is required and temporary qualifier data exists
Applied to: Store Business Number Qualifier
Action: The system processes business qualifier restoration
Logic Flow:
IF Business qualifier backup is required and temporary qualifier data exists
AND The system processes business qualifier restoration
THEN:
• The system should move temporary business number qualifier (WS-TEMP-IM-QUAL) to both customs business number qualifier field (GCCC-BUSINESS-NBR-QUAL) and N1 segment qualifier field (GCCS-N103-ID-CDE-QUAL)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when business number backup is required and temporary business number exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Business number backup is required and temporary business number exists
Applied to: Store Business Number
Action: The system processes business number restoration
Logic Flow:
IF Business number backup is required and temporary business number exists
AND The system processes business number restoration
THEN:
• The system should move temporary business number (WS-TEMP-IM-CDE) to both customs business number field (GCCC-BUSINESS-NBR) and N1 segment ID code field (GCCS-N104-ID-CDE)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when csa indicator backup is required and temporary csa indicator exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: CSA indicator backup is required and temporary CSA indicator exists
Applied to: Store CSA Indicator
Action: The system processes CSA indicator restoration
Logic Flow:
IF CSA indicator backup is required and temporary CSA indicator exists
AND The system processes CSA indicator restoration
THEN:
• The system should move temporary CSA indicator (WS-TEMP-CSA-IND) to the customs CSA indicator field (GCCC-CSA-IND)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address backup is required and temporary address data exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Address backup is required and temporary address data exists
Applied to: Store Address Information
Action: The system processes address information restoration
Logic Flow:
IF Address backup is required and temporary address data exists
AND The system processes address information restoration
THEN:
• The system should move temporary address line 1 (WS-TEMP-IM-ADR1) to N301 address info field and temporary address line 2 (WS-TEMP-IM-ADR2) to N302 address info field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when geographic data backup is required and temporary location data exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Geographic data backup is required and temporary location data exists
Applied to: Store City/State/Postal Data
Action: The system processes city/state/postal restoration
Logic Flow:
IF Geographic data backup is required and temporary location data exists
AND The system processes city/state/postal restoration
THEN:
• The system should move temporary city (WS-TEMP-IM-CITY) to N401 city field, temporary province (WS-TEMP-IM-PROV) to N402 state field, temporary postal code (WS-TEMP-IM-POSTAL) to N403 postal field, and temporary country (WS-TEMP-IM-CTRY) to N404 country field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when contact information backup is required and temporary contact data exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Contact information backup is required and temporary contact data exists
Applied to: Store Contact Information
Action: The system processes contact information restoration
Logic Flow:
IF Contact information backup is required and temporary contact data exists
AND The system processes contact information restoration
THEN:
• The system should move temporary contact function code (WS-TEMP-IM-CONT-CDE) to PER01 contact function field, temporary person name (WS-TEMP-IM-PER-NAME) to PER02 name field, temporary communication qualifier (WS-TEMP-IM-COM-QUAL) to PER03 communication qualifier field, and temporary communication number (WS-TEMP-IM-COM-NUM) to PER04 communication number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer data has been successfully restored from backup storage. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Importer data has been successfully restored from backup storage
Applied to: Set Importer Found Flag
Action: The backup restoration process completes
Logic Flow:
IF Importer data has been successfully restored from backup storage
AND The backup restoration process completes
THEN:
• The system should set the importer found flag (WS-S55-IMP-FOUND) to TRUE to indicate successful importer data processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi importer processing is required and no existing importer data backup is needed.
Trigger Criteria:
Context: EDI importer processing is required and no existing importer data backup is needed
Applied to: Process New EDI Importer Data
Action: The system determines no backup restoration is required
Logic Flow:
IF EDI importer processing is required and no existing importer data backup is needed
AND The system determines no backup restoration is required
THEN:
• The system should process the new EDI importer data directly and continue with normal processing flow
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi importer processing has failed or resulted in deletion and no backup data is available for restoration and importer not found flag is set.
Trigger Criteria:
Context: EDI importer processing has failed or resulted in deletion and no backup data is available for restoration and importer not found flag is set
Applied to: Continue Processing
Action: The system processes the failure condition
Logic Flow:
IF EDI importer processing has failed or resulted in deletion and no backup data is available for restoration and importer not found flag is set
AND The system processes the failure condition
THEN:
• The system should clear the customs importer field (GCCC-IMPORTER) and entity ID code field (GCCS-N101-ENTITY-ID-CDE) to spaces
R-GCCCCADD-cbl-02299 (+11)File: GCCCCADD.cblBusiness Rule: Validate manifest port configuration and set default IIS
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment is being processed with either action code iis-a6 or multi-manifest indicator set to 'y'.
Trigger Criteria:
Context: A shipment is being processed with either action code IIS-A6 or multi-manifest indicator set to 'Y'
Applied to: Set Manifest From Port to 'IIS-A6'
Action: The manifest from port field is empty or spaces
Logic Flow:
IF A shipment is being processed with either action code IIS-A6 or multi-manifest indicator set to 'Y'
AND The manifest from port field is empty or spaces
THEN:
• The system sets the manifest from port to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment is being processed with either action code iis-a6 or multi-manifest indicator set to 'y'.
Trigger Criteria:
Context: A shipment is being processed with either action code IIS-A6 or multi-manifest indicator set to 'Y'
Applied to: Set Manifest To Port to 'IIS-A6'
Action: The manifest to port field is empty or spaces
Logic Flow:
IF A shipment is being processed with either action code IIS-A6 or multi-manifest indicator set to 'Y'
AND The manifest to port field is empty or spaces
THEN:
• The system sets the manifest to port to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest from port has been determined for the shipment.
Trigger Criteria:
Context: A manifest from port has been determined for the shipment
Applied to: Lookup Manifest From Port in MC Table
Action: The system performs a lookup in the MC table using the manifest from port as the key
Logic Flow:
IF A manifest from port has been determined for the shipment
AND The system performs a lookup in the MC table using the manifest from port as the key
THEN:
• The system retrieves the corresponding MC table record if it exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when mc table lookup for manifest from port was successful.
Trigger Criteria:
Context: The MC table lookup for manifest from port was successful
Applied to: Generate Invalid Customs Code Error
Action: The Canadian customs code in the retrieved record equals '00000'
Logic Flow:
IF The MC table lookup for manifest from port was successful
AND The Canadian customs code in the retrieved record equals '00000'
THEN:
• The system generates an error message for invalid Canadian customs code and uses the port name in the error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest from port has been specified for the shipment.
Trigger Criteria:
Context: A manifest from port has been specified for the shipment
Applied to: Generate Invalid Manifest Port Error
Action: The MC table lookup fails to find a matching record
Logic Flow:
IF A manifest from port has been specified for the shipment
AND The MC table lookup fails to find a matching record
THEN:
• The system generates an error message for invalid manifest port and uses the port name in the error
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup for manifest from port was successful and the canadian customs code is valid (not '00000').
Trigger Criteria:
Context: The MC table lookup for manifest from port was successful and the Canadian customs code is valid (not '00000')
Applied to: Set Valid Customs and Exit Codes
Action: The system processes the MC table record
Logic Flow:
IF The MC table lookup for manifest from port was successful and the Canadian customs code is valid (not '00000')
AND The system processes the MC table record
THEN:
• The system sets the manifest from station code to the Canadian customs code and sets the US port of exit code from the MC record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest to port has been determined for the shipment.
Trigger Criteria:
Context: A manifest to port has been determined for the shipment
Applied to: Lookup Manifest To Port in MC Table
Action: The system performs a lookup in the MC table using the manifest to port as the key
Logic Flow:
IF A manifest to port has been determined for the shipment
AND The system performs a lookup in the MC table using the manifest to port as the key
THEN:
• The system retrieves the corresponding MC table record if it exists
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup for manifest to port was successful.
Trigger Criteria:
Context: The MC table lookup for manifest to port was successful
Applied to: Generate Invalid Customs Code Error
Action: The Canadian customs code in the retrieved record equals '00000'
Logic Flow:
IF The MC table lookup for manifest to port was successful
AND The Canadian customs code in the retrieved record equals '00000'
THEN:
• The system sets error flag 2 and saves the port name for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest to port has been specified for the shipment.
Trigger Criteria:
Context: A manifest to port has been specified for the shipment
Applied to: Generate Invalid Manifest Port Error
Action: The MC table lookup fails to find a matching record
Logic Flow:
IF A manifest to port has been specified for the shipment
AND The MC table lookup fails to find a matching record
THEN:
• The system sets error flag 3 and saves the port name for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup for manifest to port was successful and the canadian customs code is valid. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The MC table lookup for manifest to port was successful and the Canadian customs code is valid
Applied to: Set Valid Customs Code
Action: The system processes the MC table record
Logic Flow:
IF The MC table lookup for manifest to port was successful and the Canadian customs code is valid
AND The system processes the MC table record
THEN:
• The system sets the manifest to station code, destination station number, and batch print call letters from the MC record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment has ccn type equal to '9'.
Trigger Criteria:
Context: The shipment has CCN type equal to '9'
Applied to: Override Both Ports to 'IIS-A6'
Action: The US exit code is not '00000' OR the manifest from station is not 'IIS-A6' OR the manifest to station is not 'IIS-A6' OR the manifest to and from stations are different
Logic Flow:
IF The shipment has CCN type equal to '9'
AND The US exit code is not '00000' OR the manifest from station is not 'IIS-A6' OR the manifest to station is not 'IIS-A6' OR the manifest to and from stations are different
THEN:
• The system overrides both manifest from station and manifest to station to 'IIS-A6'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment is being processed for manifest creation.
Trigger Criteria:
Context: A shipment is being processed for manifest creation
Applied to: Keep Existing Manifest To Port
Action: The manifest to port field is empty or spaces
Logic Flow:
IF A shipment is being processed for manifest creation
AND The manifest to port field is empty or spaces
THEN:
• The system sets error flag 1 to indicate missing manifest to port
R-GCCCCADD-cbl-02311 (+7)File: GCCCCADD.cblBusiness Rule: Process manifest
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment record with manifest-to port field.
Trigger Criteria:
Context: A shipment record with manifest-to port field
Applied to: Manifest-To Port from SHIPROOT Empty?
Action: The manifest-to port field is empty or spaces
Logic Flow:
IF A shipment record with manifest-to port field
AND The manifest-to port field is empty or spaces
THEN:
• Set error flag 1 to indicate missing manifest-to port
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest-to port name from shipment data.
Trigger Criteria:
Context: A manifest-to port name from shipment data
Applied to: Lookup Manifest-To Port in MC Table
Action: Looking up the port in the MC manifest codes table
Logic Flow:
IF A manifest-to port name from shipment data
AND Looking up the port in the MC manifest codes table
THEN:
• Attempt to retrieve port configuration including customs codes and station information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest-to port lookup attempt in mc table.
Trigger Criteria:
Context: A manifest-to port lookup attempt in MC table
Applied to: MC Table Lookup Successful?
Action: The lookup operation completes
Logic Flow:
IF A manifest-to port lookup attempt in MC table
AND The lookup operation completes
THEN:
• If port is found, proceed with data validation, otherwise set error flag 3 and save port name for error reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest port record retrieved from mc table.
Trigger Criteria:
Context: A manifest port record retrieved from MC table
Applied to: Canadian Customs Code = '00000'?
Action: The Canadian customs code equals '00000'
Logic Flow:
IF A manifest port record retrieved from MC table
AND The Canadian customs code equals '00000'
THEN:
• Clear the MC table data, set error flag 2, and save port name for error message as the customs code is invalid
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid mc table data for manifest-to port with non-zero canadian customs code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Valid MC table data for manifest-to port with non-zero Canadian customs code
Applied to: Set Manifest-To Station Code
Action: Processing manifest station information
Logic Flow:
IF Valid MC table data for manifest-to port with non-zero Canadian customs code
AND Processing manifest station information
THEN:
• Set manifest-to station code from Canadian customs code, set station number, and set call letters for batch printing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when error flag 1 is set indicating missing manifest-to port.
Trigger Criteria:
Context: Error flag 1 is set indicating missing manifest-to port
Applied to: Generate 'Invalid Manifest Upon' Error Message
Action: Processing manifest-to port validation errors
Logic Flow:
IF Error flag 1 is set indicating missing manifest-to port
AND Processing manifest-to port validation errors
THEN:
• Retrieve and generate 'Invalid Manifest Upon' error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when error flag 2 is set indicating invalid canadian customs code and saved port name.
Trigger Criteria:
Context: Error flag 2 is set indicating invalid Canadian customs code and saved port name
Applied to: Generate 'Invalid Canadian Customs Code' Error Message
Action: Processing manifest-to port validation errors
Logic Flow:
IF Error flag 2 is set indicating invalid Canadian customs code and saved port name
AND Processing manifest-to port validation errors
THEN:
• Use saved port name and retrieve 'Invalid Canadian Customs Code' error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when error flag 3 is set indicating port not found in mc table and saved port name.
Trigger Criteria:
Context: Error flag 3 is set indicating port not found in MC table and saved port name
Applied to: Generate 'Invalid Manifest Port MC' Error Message
Action: Processing manifest-to port validation errors
Logic Flow:
IF Error flag 3 is set indicating port not found in MC table and saved port name
AND Processing manifest-to port validation errors
THEN:
• Use saved port name and retrieve 'Invalid Manifest Port MC' error message
R-GCCCCADD-cbl-02319 (+19)File: GCCCCADD.cblBusiness Rule: Execute MC table lookup with Canadian customs code validation and error generation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest port lookup is required.
Trigger Criteria:
Context: A manifest port lookup is required
Applied to: Initialize Table Access Parameters
Action: The system prepares to access the MC table
Logic Flow:
IF A manifest port lookup is required
AND The system prepares to access the MC table
THEN:
• All table access parameters are cleared and initialized to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when table lookup is being prepared.
Trigger Criteria:
Context: A table lookup is being prepared
Applied to: Set Table ID to 'MC'
Action: The system needs to identify which table to access
Logic Flow:
IF A table lookup is being prepared
AND The system needs to identify which table to access
THEN:
• The table ID is set to 'MC' for manifest code table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest from port value exists in the shipment data.
Trigger Criteria:
Context: A manifest from port value exists in the shipment data
Applied to: Set Manifest From Port as Search Key
Action: The system prepares the table lookup search criteria
Logic Flow:
IF A manifest from port value exists in the shipment data
AND The system prepares the table lookup search criteria
THEN:
• The manifest from port value is set as the search key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when table lookup parameters are properly initialized. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Table lookup parameters are properly initialized
Applied to: Call GCCTBIO for Table Lookup
Action: The system executes the table lookup
Logic Flow:
IF Table lookup parameters are properly initialized
AND The system executes the table lookup
THEN:
• The GCCTBIO service is called with the prepared parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when table lookup has been executed.
Trigger Criteria:
Context: A table lookup has been executed
Applied to: Lookup Successful?
Action: The system checks the lookup result
Logic Flow:
IF A table lookup has been executed
AND The system checks the lookup result
THEN:
• The lookup is considered successful if the return flag indicates success
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup was successful.
Trigger Criteria:
Context: The MC table lookup was successful
Applied to: Move Table Data to GCSTBRTMC
Action: Valid table data is returned
Logic Flow:
IF The MC table lookup was successful
AND Valid table data is returned
THEN:
• The table segment data is moved to the MC table structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid mc table data has been retrieved.
Trigger Criteria:
Context: Valid MC table data has been retrieved
Applied to: Extract Canadian Customs Code
Action: The system processes the manifest code information
Logic Flow:
IF Valid MC table data has been retrieved
AND The system processes the manifest code information
THEN:
• The Canadian customs code is extracted from the table data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when canadian customs code has been extracted from mc table data.
Trigger Criteria:
Context: A Canadian customs code has been extracted from MC table data
Applied to: Canadian Customs Code = '00000'?
Action: The system validates the customs code
Logic Flow:
IF A Canadian customs code has been extracted from MC table data
AND The system validates the customs code
THEN:
• The code is considered invalid if it equals '00000'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when canadian customs code equals '00000'.
Trigger Criteria:
Context: The Canadian customs code equals '00000'
Applied to: Clear Table Data
Action: The system detects an invalid customs code
Logic Flow:
IF The Canadian customs code equals '00000'
AND The system detects an invalid customs code
THEN:
• The MC table data is cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when invalid canadian customs code has been detected.
Trigger Criteria:
Context: An invalid Canadian customs code has been detected
Applied to: Set Port Name in Error Message
Action: The system prepares an error message
Logic Flow:
IF An invalid Canadian customs code has been detected
AND The system prepares an error message
THEN:
• The manifest port name is set in the message number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when invalid canadian customs code error needs to be reported.
Trigger Criteria:
Context: An invalid Canadian customs code error needs to be reported
Applied to: Set Error Number INV-MFST-PORT-CA-CUSTOMS
Action: The system sets the error identification
Logic Flow:
IF An invalid Canadian customs code error needs to be reported
AND The system sets the error identification
THEN:
• The error number is set to INV-MFST-PORT-CA-CUSTOMS
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when error number for invalid canadian customs code is set.
Trigger Criteria:
Context: An error number for invalid Canadian customs code is set
Applied to: Retrieve Error Message Text
Action: The system needs the error message text
Logic Flow:
IF An error number for invalid Canadian customs code is set
AND The system needs the error message text
THEN:
• The error message text is retrieved from the message table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when invalid canadian customs code error message has been retrieved.
Trigger Criteria:
Context: An invalid Canadian customs code error message has been retrieved
Applied to: Add Error Message to Message Array
Action: The system processes the error
Logic Flow:
IF An invalid Canadian customs code error message has been retrieved
AND The system processes the error
THEN:
• The error message is added to the message array for reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup was not successful.
Trigger Criteria:
Context: The MC table lookup was not successful
Applied to: Clear Table Data for Failed Lookup
Action: The system handles the lookup failure
Logic Flow:
IF The MC table lookup was not successful
AND The system handles the lookup failure
THEN:
• The MC table data is cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup has failed.
Trigger Criteria:
Context: An MC table lookup has failed
Applied to: Set Port Name in Error Message
Action: The system prepares an error message
Logic Flow:
IF An MC table lookup has failed
AND The system prepares an error message
THEN:
• The manifest port name is set in the message number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup failure error needs to be reported.
Trigger Criteria:
Context: An MC table lookup failure error needs to be reported
Applied to: Set Error Number INV-MFST-PORT-MC
Action: The system sets the error identification
Logic Flow:
IF An MC table lookup failure error needs to be reported
AND The system sets the error identification
THEN:
• The error number is set to INV-MFST-PORT-MC
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when error number for mc table lookup failure is set.
Trigger Criteria:
Context: An error number for MC table lookup failure is set
Applied to: Retrieve Error Message Text
Action: The system needs the error message text
Logic Flow:
IF An error number for MC table lookup failure is set
AND The system needs the error message text
THEN:
• The error message text is retrieved from the message table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup failure error message has been retrieved.
Trigger Criteria:
Context: An MC table lookup failure error message has been retrieved
Applied to: Add Error Message to Message Array
Action: The system processes the error
Logic Flow:
IF An MC table lookup failure error message has been retrieved
AND The system processes the error
THEN:
• The error message is added to the message array for reporting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid canadian customs code has been retrieved from mc table.
Trigger Criteria:
Context: A valid Canadian customs code has been retrieved from MC table
Applied to: Move Canadian Customs Code to Manifest Station Code
Action: The system processes the valid customs code
Logic Flow:
IF A valid Canadian customs code has been retrieved from MC table
AND The system processes the valid customs code
THEN:
• The Canadian customs code is moved to the manifest from station code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid mc table data with us port exit code exists.
Trigger Criteria:
Context: Valid MC table data with US port exit code exists
Applied to: Move US Port Exit Code
Action: The system processes the manifest code information
Logic Flow:
IF Valid MC table data with US port exit code exists
AND The system processes the manifest code information
THEN:
• The US port exit code is moved to the appropriate field
R-GCCCCADD-cbl-02339 (+9)File: GCCCCADD.cblBusiness Rule: Perform cascaded CM and MC table lookups for sub
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo manifest is being processed.
Trigger Criteria:
Context: A cargo manifest is being processed
Applied to: Is Manifest-To Station = 'IIS-A6'?
Action: The manifest-to station name equals 'IIS-A6'
Logic Flow:
IF A cargo manifest is being processed
AND The manifest-to station name equals 'IIS-A6'
THEN:
• The system should proceed to check destination country for sub-location code determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest-to station is 'iis-a6'.
Trigger Criteria:
Context: The manifest-to station is 'IIS-A6'
Applied to: Is Destination Not US?
Action: The destination province/state code is checked against the state-country lookup table and the destination country is not 'US'
Logic Flow:
IF The manifest-to station is 'IIS-A6'
AND The destination province/state code is checked against the state-country lookup table and the destination country is not 'US'
THEN:
• The system should proceed to lookup the destination station in the CM table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest-to station is 'iis-a6' and destination is not us.
Trigger Criteria:
Context: The manifest-to station is 'IIS-A6' and destination is not US
Applied to: Lookup CM Table with Destination Station Number
Action: The system looks up the destination station number in the CM table
Logic Flow:
IF The manifest-to station is 'IIS-A6' and destination is not US
AND The system looks up the destination station number in the CM table
THEN:
• The system should retrieve the port manifest upon value if the lookup is successful
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cm table lookup has been performed with destination station number.
Trigger Criteria:
Context: A CM table lookup has been performed with destination station number
Applied to: CM Table Lookup Successful?
Action: The table lookup function returns a successful status
Logic Flow:
IF A CM table lookup has been performed with destination station number
AND The table lookup function returns a successful status
THEN:
• The system should extract the port manifest upon value from the CM table result
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cm table lookup was successful.
Trigger Criteria:
Context: The CM table lookup was successful
Applied to: Get Port Manifest Upon from CM Table
Action: The system processes the CM table result
Logic Flow:
IF The CM table lookup was successful
AND The system processes the CM table result
THEN:
• The port manifest upon value should be extracted and used for subsequent MC table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when port manifest upon value has been obtained from cm table lookup.
Trigger Criteria:
Context: A port manifest upon value has been obtained from CM table lookup
Applied to: Lookup MC Table with Port Manifest Upon
Action: The system looks up this port manifest upon value in the MC table
Logic Flow:
IF A port manifest upon value has been obtained from CM table lookup
AND The system looks up this port manifest upon value in the MC table
THEN:
• The system should attempt to retrieve the corresponding sub-location code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup has been performed with port manifest upon value.
Trigger Criteria:
Context: An MC table lookup has been performed with port manifest upon value
Applied to: MC Table Lookup Successful?
Action: The table lookup function returns a successful status
Logic Flow:
IF An MC table lookup has been performed with port manifest upon value
AND The table lookup function returns a successful status
THEN:
• The system should extract the sub-location code from the MC table result
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mc table lookup was successful.
Trigger Criteria:
Context: The MC table lookup was successful
Applied to: Set Sub-location Code from MC Table
Action: The system processes the MC table result
Logic Flow:
IF The MC table lookup was successful
AND The system processes the MC table result
THEN:
• The sub-location code should be assigned from the MC table sub-location code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup has been attempted.
Trigger Criteria:
Context: An MC table lookup has been attempted
Applied to: Set Sub-location Code to Spaces
Action: The MC table lookup fails to return valid data
Logic Flow:
IF An MC table lookup has been attempted
AND The MC table lookup fails to return valid data
THEN:
• The sub-location code should be set to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when cm table lookup has been attempted.
Trigger Criteria:
Context: A CM table lookup has been attempted
Applied to: Set Sub-location Code to Spaces
Action: The CM table lookup fails to return valid data
Logic Flow:
IF A CM table lookup has been attempted
AND The CM table lookup fails to return valid data
THEN:
• The sub-location code should be set to spaces without proceeding to MC table lookup
R-GCCCCADD-cbl-02349 (+7)File: GCCCCADD.cblBusiness Rule: Process EDI BOL commodity segments with weight extraction and metric unit conversion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when waybill is being processed for weight and quantity extraction.
Trigger Criteria:
Context: A waybill is being processed for weight and quantity extraction
Applied to: Check for Valid EDI BOL
Action: The system checks for EDI BOL availability by examining the origin road number in SHIPROOT
Logic Flow:
IF A waybill is being processed for weight and quantity extraction
AND The system checks for EDI BOL availability by examining the origin road number in SHIPROOT
THEN:
• If origin road number is not zero, retrieve SHIPMINE segment with type 'E' and sequence '1', andif found, extract EDI BOL key from data line 1 and set valid EDI BOL flag, otherwise set invalid EDI BOL flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid edi bol is available and commodity segment sequence number is provided.
Trigger Criteria:
Context: A valid EDI BOL is available and commodity segment sequence number is provided
Applied to: Get EBSBCCM Commodity Segment
Action: The system retrieves EBSBCCM commodity segment with type 'CM' and the current sequence number
Logic Flow:
IF A valid EDI BOL is available and commodity segment sequence number is provided
AND The system retrieves EBSBCCM commodity segment with type 'CM' and the current sequence number
THEN:
• If the segment is found, add the L0-LADING-QTY to the running total of units, otherwise set commodity segment not found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when first commodity segment is being processed (sequence = 1).
Trigger Criteria:
Context: The first commodity segment is being processed (sequence = 1)
Applied to: Get EBSBCCR Weight Segment
Action: The system retrieves EBSBCCR weight segment with type 'CR' and dependent key 'CR001'
Logic Flow:
IF The first commodity segment is being processed (sequence = 1)
AND The system retrieves EBSBCCR weight segment with type 'CR' and dependent key 'CR001'
THEN:
• If weight segment is found, extract N7-WEIGHT value, otherwise set weight to 0, and set weight unit to KG if metric indicator is 'M' or 'L', otherwise set to LB, and capture L0-LADING-QTY-QUAL as quantity qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi weight and quantity data is zero or unavailable.
Trigger Criteria:
Context: EDI weight and quantity data is zero or unavailable
Applied to: Get First SHIPCOMM Record
Action: The system retrieves the first SHIPCOMM record using 'GU' function
Logic Flow:
IF EDI weight and quantity data is zero or unavailable
AND The system retrieves the first SHIPCOMM record using 'GU' function
THEN:
• If SHIPCOMM is found, add NUM-UNITS to quantity total, set quantity qualifier to 'PCS', and add MET-CMOD-WGT to weight if metric indicator is 'M' or 'L', otherwise add CMOD-WGT, and set weight unit accordingly
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when first shipcomm record has been processed.
Trigger Criteria:
Context: The first SHIPCOMM record has been processed
Applied to: Get Next SHIPCOMM Records
Action: The system retrieves subsequent SHIPCOMM records using 'GN' function until no more records are found
Logic Flow:
IF The first SHIPCOMM record has been processed
AND The system retrieves subsequent SHIPCOMM records using 'GN' function until no more records are found
THEN:
• For each additional SHIPCOMM record found, add NUM-UNITS to quantity total, set quantity qualifier to 'PCS', and add appropriate weight (MET-CMOD-WGT for metric orCMOD-WGT for imperial) to weight total
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when weight and quantity extraction from all sources is complete.
Trigger Criteria:
Context: Weight and quantity extraction from all sources is complete
Applied to: Validate Final Quantities
Action: The system validates the final quantity value
Logic Flow:
IF Weight and quantity extraction from all sources is complete
AND The system validates the final quantity value
THEN:
• If quantity is greater than zero, use the extracted quantity value, otherwise set quantity to 1 as default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when weight extraction from all sources is complete.
Trigger Criteria:
Context: Weight extraction from all sources is complete
Applied to: Validate Final Quantities
Action: The system validates the final weight value
Logic Flow:
IF Weight extraction from all sources is complete
AND The system validates the final weight value
THEN:
• If weight is greater than zero, use the extracted weight value, otherwise set weight to '00000001' as default
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when quantity qualifier extraction from all sources is complete.
Trigger Criteria:
Context: Quantity qualifier extraction from all sources is complete
Applied to: Validate Quantity Qualifier
Action: The system validates the quantity qualifier value
Logic Flow:
IF Quantity qualifier extraction from all sources is complete
AND The system validates the quantity qualifier value
THEN:
• If quantity qualifier is empty or spaces, set quantity qualifier to 'PCS' as default
Business Justification: Governs the functional prerequisites and system routing when shipment requires weight and quantity determination.
Trigger Criteria:
Context: A shipment requires weight and quantity determination
Applied to: Check EDI BOL Weight/Quantity Data
Action: The system checks EDI BOL data for weight and quantity values
Logic Flow:
IF A shipment requires weight and quantity determination
AND The system checks EDI BOL data for weight and quantity values
THEN:
• If both EDI weight equals zero AND EDI quantity equals zero, proceed to Fastway SHIPCOMM fallback processing, otherwise use EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol weight and quantity data has been evaluated.
Trigger Criteria:
Context: EDI BOL weight and quantity data has been evaluated
Applied to: EDI Weight = 0 AND Quantity = 0?
Action: Both EDI weight equals zero AND EDI quantity equals zero
Logic Flow:
IF EDI BOL weight and quantity data has been evaluated
AND Both EDI weight equals zero AND EDI quantity equals zero
THEN:
• Initiate Fastway SHIPCOMM record processing to obtain weight and quantity data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when fastway shipcomm fallback processing is required.
Trigger Criteria:
Context: Fastway SHIPCOMM fallback processing is required
Applied to: Get First SHIPCOMM Record
Action: The system needs to retrieve commodity data from Fastway
Logic Flow:
IF Fastway SHIPCOMM fallback processing is required
AND The system needs to retrieve commodity data from Fastway
THEN:
• Execute GU function to get the first SHIPCOMM record and set found status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipcomm record retrieval has been attempted.
Trigger Criteria:
Context: A SHIPCOMM record retrieval has been attempted
Applied to: SHIPCOMM Record Found?
Action: The system checks if a valid SHIPCOMM record was found
Logic Flow:
IF A SHIPCOMM record retrieval has been attempted
AND The system checks if a valid SHIPCOMM record was found
THEN:
• If SHIPCOMM record is found, proceed with data extraction, otherwise end processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid shipcomm record has been found.
Trigger Criteria:
Context: A valid SHIPCOMM record has been found
Applied to: Add SHIPCOMM Units to Total Quantity
Action: The system processes the SHIPCOMM record for quantity data
Logic Flow:
IF A valid SHIPCOMM record has been found
AND The system processes the SHIPCOMM record for quantity data
THEN:
• Add the NUM-UNITS value from SHIPCOMM to the running total quantity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipcomm record data is being processed.
Trigger Criteria:
Context: SHIPCOMM record data is being processed
Applied to: Set Quantity Qualifier to 'PCS'
Action: Quantity units are extracted from SHIPCOMM
Logic Flow:
IF SHIPCOMM record data is being processed
AND Quantity units are extracted from SHIPCOMM
THEN:
• Set the quantity qualifier to 'PCS' (pieces) as the standard unit
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipcomm weight data needs to be processed.
Trigger Criteria:
Context: SHIPCOMM weight data needs to be processed
Applied to: Metric Indicator = 'M' or 'L'?
Action: The system checks the metric indicator from shipment root
Logic Flow:
IF SHIPCOMM weight data needs to be processed
AND The system checks the metric indicator from shipment root
THEN:
• If metric indicator equals 'M' or 'L', use metric weight processing, otherwise use standard weight processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when metric weight system is detected and shipcomm record is available.
Trigger Criteria:
Context: Metric weight system is detected and SHIPCOMM record is available
Applied to: Add Metric Weight to Total
Action: The system processes metric weight from SHIPCOMM
Logic Flow:
IF Metric weight system is detected and SHIPCOMM record is available
AND The system processes metric weight from SHIPCOMM
THEN:
• Add MET-CMOD-WGT from SHIPCOMM to the total weight accumulator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when metric weight processing is active.
Trigger Criteria:
Context: Metric weight processing is active
Applied to: Set Weight Unit to KG
Action: Weight unit designation is required
Logic Flow:
IF Metric weight processing is active
AND Weight unit designation is required
THEN:
• Set the weight unit indicator to KG (kilograms)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when standard weight system is detected and shipcomm record is available.
Trigger Criteria:
Context: Standard weight system is detected and SHIPCOMM record is available
Applied to: Add Standard Weight to Total
Action: The system processes standard weight from SHIPCOMM
Logic Flow:
IF Standard weight system is detected and SHIPCOMM record is available
AND The system processes standard weight from SHIPCOMM
THEN:
• Add CMOD-WGT from SHIPCOMM to the total weight accumulator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when standard weight processing is active.
Trigger Criteria:
Context: Standard weight processing is active
Applied to: Set Weight Unit to LB
Action: Weight unit designation is required
Logic Flow:
IF Standard weight processing is active
AND Weight unit designation is required
THEN:
• Set the weight unit indicator to LB (pounds)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current shipcomm record has been processed.
Trigger Criteria:
Context: Current SHIPCOMM record has been processed
Applied to: Get Next SHIPCOMM Record
Action: The system needs to check for additional SHIPCOMM records
Logic Flow:
IF Current SHIPCOMM record has been processed
AND The system needs to check for additional SHIPCOMM records
THEN:
• Execute GN function to get the next SHIPCOMM record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when gn function has been executed for next shipcomm record.
Trigger Criteria:
Context: A GN function has been executed for next SHIPCOMM record
Applied to: More SHIPCOMM Records?
Action: The system checks if more SHIPCOMM records are available
Logic Flow:
IF A GN function has been executed for next SHIPCOMM record
AND The system checks if more SHIPCOMM records are available
THEN:
• If additional records found, continue processing loop, otherwise proceed to validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when all shipcomm records have been processed.
Trigger Criteria:
Context: All SHIPCOMM records have been processed
Applied to: Validate Final Quantities
Action: Final weight and quantity totals need validation
Logic Flow:
IF All SHIPCOMM records have been processed
AND Final weight and quantity totals need validation
THEN:
• Check if accumulated totals are greater than zero for proper assignment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when quantity has been accumulated from shipcomm records.
Trigger Criteria:
Context: Quantity has been accumulated from SHIPCOMM records
Applied to: Total Quantity > 0?
Action: The system validates the total quantity value
Logic Flow:
IF Quantity has been accumulated from SHIPCOMM records
AND The system validates the total quantity value
THEN:
• If total quantity is greater than zero, use calculated quantity, otherwise set default quantity to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when total quantity is greater than zero.
Trigger Criteria:
Context: Total quantity is greater than zero
Applied to: Use Calculated Quantity
Action: Final quantity assignment is required
Logic Flow:
IF Total quantity is greater than zero
AND Final quantity assignment is required
THEN:
• Move the calculated total quantity to the cargo manifest quantity field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when total calculated quantity is zero or negative.
Trigger Criteria:
Context: Total calculated quantity is zero or negative
Applied to: Set Default Quantity = 1
Action: Final quantity assignment is required
Logic Flow:
IF Total calculated quantity is zero or negative
AND Final quantity assignment is required
THEN:
• Set quantity to default value of 1 and assign to cargo manifest
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when weight has been accumulated from shipcomm records.
Trigger Criteria:
Context: Weight has been accumulated from SHIPCOMM records
Applied to: Total Weight > 0?
Action: The system validates the total weight value
Logic Flow:
IF Weight has been accumulated from SHIPCOMM records
AND The system validates the total weight value
THEN:
• If total weight is greater than zero, use calculated weight, otherwise set default weight to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when total weight is greater than zero.
Trigger Criteria:
Context: Total weight is greater than zero
Applied to: Use Calculated Weight
Action: Final weight assignment is required
Logic Flow:
IF Total weight is greater than zero
AND Final weight assignment is required
THEN:
• Move the calculated total weight to the cargo manifest weight field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when total calculated weight is zero or negative.
Trigger Criteria:
Context: Total calculated weight is zero or negative
Applied to: Set Default Weight = 1
Action: Final weight assignment is required
Logic Flow:
IF Total calculated weight is zero or negative
AND Final weight assignment is required
THEN:
• Set weight to default value of '00000001' and assign to cargo manifest
R-GCCCCADD-cbl-02377 (+11)File: GCCCCADD.cblBusiness Rule: Extract and combine commodity descriptions from multiple data sources with special handling
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to build commodity descriptions.
Trigger Criteria:
Context: The system needs to build commodity descriptions
Applied to: Initialize Description Work Areas
Action: Description building process starts
Logic Flow:
IF The system needs to build commodity descriptions
AND Description building process starts
THEN:
• All description work areas are cleared and initialized to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipcomm data is available with commodity descriptions.
Trigger Criteria:
Context: SHIPCOMM data is available with commodity descriptions
Applied to: Extract SHIPCOMM Commodity Descriptions
Action: Building commodity descriptions from multiple sources
Logic Flow:
IF SHIPCOMM data is available with commodity descriptions
AND Building commodity descriptions from multiple sources
THEN:
• All 10 CMOD-DESC lines from SHIPCOMM are extracted and stored in description work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shiproot data is available with free form descriptions.
Trigger Criteria:
Context: SHIPROOT data is available with free form descriptions
Applied to: Extract SHIPROOT Free Form Descriptions
Action: Building commodity descriptions from multiple sources
Logic Flow:
IF SHIPROOT data is available with free form descriptions
AND Building commodity descriptions from multiple sources
THEN:
• Both FREE-FORM-DESC lines from SHIPROOT are extracted and stored in description work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when special handling codes and instructions are available in shipment data.
Trigger Criteria:
Context: Special handling codes and instructions are available in shipment data
Applied to: Process Special Handling Codes
Action: Processing commodity descriptions
Logic Flow:
IF Special handling codes and instructions are available in shipment data
AND Processing commodity descriptions
THEN:
• Special handling codes are evaluated for inclusion in description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when special handling code is found in shipment data.
Trigger Criteria:
Context: A special handling code is found in shipment data
Applied to: Check Code Type VA/EV/VS
Action: The special handling code is evaluated
Logic Flow:
IF A special handling code is found in shipment data
AND The special handling code is evaluated
THEN:
• Only codes with type VA, EV, or VS are processed for description inclusion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid special handling code (va/ev/vs) and its instruction are available.
Trigger Criteria:
Context: A valid special handling code (VA/EV/VS) and its instruction are available
Applied to: Build Special Handling Description
Action: Building the special handling description
Logic Flow:
IF A valid special handling code (VA/EV/VS) and its instruction are available
AND Building the special handling description
THEN:
• The code and instruction are combined into a formatted description work entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when formatted special handling description entry is ready.
Trigger Criteria:
Context: A formatted special handling description entry is ready
Applied to: Add to Description Array
Action: Adding to the description array
Logic Flow:
IF A formatted special handling description entry is ready
AND Adding to the description array
THEN:
• The entry is placed in the first available position in the special handling description array (positions 1-3)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when descriptions have been extracted from shipcomm, shiproot, and special handling sources.
Trigger Criteria:
Context: Descriptions have been extracted from SHIPCOMM, SHIPROOT, and special handling sources
Applied to: Combine All Description Sources
Action: Combining all description sources
Logic Flow:
IF Descriptions have been extracted from SHIPCOMM, SHIPROOT, and special handling sources
AND Combining all description sources
THEN:
• All description components are merged into a single work area for processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when combined description data is ready for compression.
Trigger Criteria:
Context: Combined description data is ready for compression
Applied to: Prepare for Compression
Action: Preparing for compression processing
Logic Flow:
IF Combined description data is ready for compression
AND Preparing for compression processing
THEN:
• Description length parameters are set to 45000 and 22500 characters respectively for compression utility
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description data is prepared with proper length parameters. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Description data is prepared with proper length parameters
Applied to: Call GCCCOMP Utility
Action: Compression is required
Logic Flow:
IF Description data is prepared with proper length parameters
AND Compression is required
THEN:
• GCCCOMP utility is called with CCCOM, source description, target description, and length parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when description has been successfully compressed by gcccomp utility.
Trigger Criteria:
Context: Description has been successfully compressed by GCCCOMP utility
Applied to: Store Compressed Description
Action: Storing the final description
Logic Flow:
IF Description has been successfully compressed by GCCCOMP utility
AND Storing the final description
THEN:
• The compressed description is moved to GCCC-LADING-DESCRIPTION field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when compressed description data is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Compressed description data is available
Applied to: Populate Description Arrays
Action: Populating description arrays
Logic Flow:
IF Compressed description data is available
AND Populating description arrays
THEN:
• Description data is distributed across all 46 WS-GCSCCS53-CARGO-DATA array positions
R-GCCCCADD-cbl-02389 (+13)File: GCCCCADD.cblBusiness Rule: Extract UN numbers and proper shipping names from EDI BOL hazmat segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system is starting hazmat information processing.
Trigger Criteria:
Context: The system is starting hazmat information processing
Applied to: Initialize Hazmat Variables
Action: Hazmat processing begins
Logic Flow:
IF The system is starting hazmat information processing
AND Hazmat processing begins
THEN:
• The commodity description danger field is cleared AND the UN number field is cleared AND the hazmat not found flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when hazmat processing variables have been initialized.
Trigger Criteria:
Context: Hazmat processing variables have been initialized
Applied to: Set Sequence Counter to 1
Action: Beginning to search for hazmat segments
Logic Flow:
IF Hazmat processing variables have been initialized
AND Beginning to search for hazmat segments
THEN:
• The commodity hazmat sequence counter is set to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to retrieve hazmat commodity segments.
Trigger Criteria:
Context: The system needs to retrieve hazmat commodity segments
Applied to: EDI BOL Valid?
Action: The EDI BOL validation flag indicates invalid BOL
Logic Flow:
IF The system needs to retrieve hazmat commodity segments
AND The EDI BOL validation flag indicates invalid BOL
THEN:
• The hazmat commodity segment not found flag is set AND EDI hazmat processing is skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol is valid and a sequence counter is set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The EDI BOL is valid AND a sequence counter is set
Applied to: Get EBSBCCM-CH Segment
Action: Retrieving the EBSBCCM hazmat commodity segment with type 'CH'
Logic Flow:
IF The EDI BOL is valid AND a sequence counter is set
AND Retrieving the EBSBCCM hazmat commodity segment with type 'CH'
THEN:
• The system attempts to read the hazmat commodity data for the specified sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when attempt was made to retrieve the ebsbccm-ch segment.
Trigger Criteria:
Context: An attempt was made to retrieve the EBSBCCM-CH segment
Applied to:EBSBCCM-CH Found?
Action: The database status code is spaces (successful)
Logic Flow:
IF An attempt was made to retrieve the EBSBCCM-CH segment
AND The database status code is spaces (successful)
THEN:
• The hazmat commodity segment found flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when hazmat commodity segment has been found.
Trigger Criteria:
Context: A hazmat commodity segment has been found
Applied to: UN Number Starts with 'UN'?
Action: The LH1-UN-NA-ID-CD field starts with 'UN'
Logic Flow:
IF A hazmat commodity segment has been found
AND The LH1-UN-NA-ID-CD field starts with 'UN'
THEN:
• The UN number format is considered valid for hazmat processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when un number format validation has passed.
Trigger Criteria:
Context: The UN number format validation has passed
Applied to: Extract UN Number from LH1-UN-NA-ID-CD
Action: Extracting hazmat identification information
Logic Flow:
IF The UN number format validation has passed
AND Extracting hazmat identification information
THEN:
• The LH1-UN-NA-ID-CD value is moved to the commodity UN number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid un number has been extracted from the hazmat commodity segment.
Trigger Criteria:
Context: A valid UN number has been extracted from the hazmat commodity segment
Applied to: Set Hazmat Found Flag
Action: Hazmat identification processing is successful
Logic Flow:
IF A valid UN number has been extracted from the hazmat commodity segment
AND Hazmat identification processing is successful
THEN:
• The hazmat found flag is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid un number has been found in the hazmat commodity segment.
Trigger Criteria:
Context: A valid UN number has been found in the hazmat commodity segment
Applied to: Initialize HS Sequence to 1
Action: Beginning to search for hazmat shipping information
Logic Flow:
IF A valid UN number has been found in the hazmat commodity segment
AND Beginning to search for hazmat shipping information
THEN:
• The hazmat shipping info sequence counter is set to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid un number exists and the shipping info sequence is initialized. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid UN number exists AND the shipping info sequence is initialized
Applied to: Get EBSBCHI Segment
Action: Retrieving the EBSBCHI hazmat shipping info segment with type 'HS'
Logic Flow:
IF A valid UN number exists AND the shipping info sequence is initialized
AND Retrieving the EBSBCHI hazmat shipping info segment with type 'HS'
THEN:
• The system attempts to read the hazmat shipping information for the current commodity and sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when attempt was made to retrieve the ebsbchi-hs segment.
Trigger Criteria:
Context: An attempt was made to retrieve the EBSBCHI-HS segment
Applied to:EBSBCHI-HS Found?
Action: The database status code is spaces (successful)
Logic Flow:
IF An attempt was made to retrieve the EBSBCHI-HS segment
AND The database status code is spaces (successful)
THEN:
• The hazmat shipping info found flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when hazmat shipping information segment has been successfully retrieved.
Trigger Criteria:
Context: The hazmat shipping information segment has been successfully retrieved
Applied to: Extract Proper Shipping Name from LH3-PROPER-SHIP-NAME
Action: Extracting the proper shipping name
Logic Flow:
IF The hazmat shipping information segment has been successfully retrieved
AND Extracting the proper shipping name
THEN:
• The LH3-PROPER-SHIP-NAME value is moved to the commodity description danger field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current hazmat commodity segment does not contain a valid un number or hazmat processing for current segment is complete.
Trigger Criteria:
Context: The current hazmat commodity segment does not contain a valid UN number OR hazmat processing for current segment is complete
Applied to: Increment CH Sequence Counter
Action: Continuing the search for valid hazmat information
Logic Flow:
IF The current hazmat commodity segment does not contain a valid UN number OR hazmat processing for current segment is complete
AND Continuing the search for valid hazmat information
THEN:
• The commodity hazmat sequence counter is incremented by 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when hazmat sequence counter has been incremented.
Trigger Criteria:
Context: The hazmat sequence counter has been incremented
Applied to: More CH Segments Available?
Action: The sequence counter is less than or equal to 98 AND hazmat information has not been found
Logic Flow:
IF The hazmat sequence counter has been incremented
AND The sequence counter is less than or equal to 98 AND hazmat information has not been found
R-GCCCCADD-cbl-02403 (+11)File: GCCCCADD.cblBusiness Rule: Process Fastway hazmat data extraction with UN code validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment root record exists with valid root key.
Trigger Criteria:
Context: A shipment root record exists with valid root key
Applied to: Get SHIPCOMM Segment
Action: The system attempts to retrieve commodity data from Fastway SHIPCOMM segment
Logic Flow:
IF A shipment root record exists with valid root key
AND The system attempts to retrieve commodity data from Fastway SHIPCOMM segment
THEN:
• The SHIPCOMM segment is retrieved and made available for hazmat processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system has attempted to retrieve shipcomm segment data.
Trigger Criteria:
Context: The system has attempted to retrieve SHIPCOMM segment data
Applied to: SHIPCOMM Found?
Action: The retrieval operation completes
Logic Flow:
IF The system has attempted to retrieve SHIPCOMM segment data
AND The retrieval operation completes
THEN:
• If SHIPCOMM data is found, continue with emergency response data retrieval, otherwise skip Fastway hazmat processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipcomm segment data is available with valid commodity information.
Trigger Criteria:
Context: SHIPCOMM segment data is available with valid commodity information
Applied to: Get SHIPERP Segment
Action: The system retrieves emergency response data from SHIPERP segment
Logic Flow:
IF SHIPCOMM segment data is available with valid commodity information
AND The system retrieves emergency response data from SHIPERP segment
THEN:
• SHIPERP segment containing hazmat identification codes is made available for validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system has attempted to retrieve shiperp segment data.
Trigger Criteria:
Context: The system has attempted to retrieve SHIPERP segment data
Applied to: SHIPERP Found?
Action: The retrieval operation completes
Logic Flow:
IF The system has attempted to retrieve SHIPERP segment data
AND The retrieval operation completes
THEN:
• If SHIPERP data is found, proceed with UN code format validation, otherwise skip Fastway hazmat processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when emergency response data is available in shiperp segment.
Trigger Criteria:
Context: Emergency response data is available in SHIPERP segment
Applied to: Check UN Code Format
Action: The system examines the UN/NA code field
Logic Flow:
IF Emergency response data is available in SHIPERP segment
AND The system examines the UN/NA code field
THEN:
• The UN code format is validated to ensure it starts with 'UN' prefix
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when un/na code exists in the emergency response data.
Trigger Criteria:
Context: A UN/NA code exists in the emergency response data
Applied to: UN Code Starts with 'UN'?
Action: The system checks if the code starts with 'UN' in the first two positions
Logic Flow:
IF A UN/NA code exists in the emergency response data
AND The system checks if the code starts with 'UN' in the first two positions
THEN:
• If the code starts with 'UN', proceed with hazmat data extraction, otherwise skip Fastway processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid un code format has been confirmed in the emergency response data.
Trigger Criteria:
Context: A valid UN code format has been confirmed in the emergency response data
Applied to: Extract UN Code to GCCC-UN-NUMBER
Action: The system processes the UN/NA code field
Logic Flow:
IF A valid UN code format has been confirmed in the emergency response data
AND The system processes the UN/NA code field
THEN:
• The complete UN code is extracted and stored in the customs cargo control UN number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid un number has been extracted from emergency response data.
Trigger Criteria:
Context: A valid UN number has been extracted from emergency response data
Applied to: Clear Hazmat Description
Action: The system prepares to retrieve detailed hazmat description
Logic Flow:
IF A valid UN number has been extracted from emergency response data
AND The system prepares to retrieve detailed hazmat description
THEN:
• The hazmat description field is cleared to ensure clean data population
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid un number exists and hazmat description field is initialized.
Trigger Criteria:
Context: Valid UN number exists and hazmat description field is initialized
Applied to: Get SHIPERPD Segment
Action: The system attempts to retrieve SHIPERPD segment data using emergency response STCC code
Logic Flow:
IF Valid UN number exists and hazmat description field is initialized
AND The system attempts to retrieve SHIPERPD segment data using emergency response STCC code
THEN:
• SHIPERPD segment containing detailed hazmat descriptions is made available for extraction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system has attempted to retrieve shiperpd segment data.
Trigger Criteria:
Context: The system has attempted to retrieve SHIPERPD segment data
Applied to: SHIPERPD Found?
Action: The retrieval operation completes
Logic Flow:
IF The system has attempted to retrieve SHIPERPD segment data
AND The retrieval operation completes
THEN:
• If SHIPERPD data is found, extract hazmat description, otherwise proceed with hazmat found flag setting
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shiperpd segment data is available with hazmat description information.
Trigger Criteria:
Context: SHIPERPD segment data is available with hazmat description information
Applied to: Extract Hazmat Description from ERPD-HAZ-DESC
Action: The system processes the hazmat description field from ERPD-HAZ-DESC
Logic Flow:
IF SHIPERPD segment data is available with hazmat description information
AND The system processes the hazmat description field from ERPD-HAZ-DESC
THEN:
• The first 15 characters of hazmat description are extracted and stored in the customs commodity danger description field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid un number has been extracted and hazmat description processing is complete.
Trigger Criteria:
Context: Valid UN number has been extracted and hazmat description processing is complete
Applied to: Set Hazmat Found Flag
Action: The Fastway hazmat extraction process concludes
Logic Flow:
IF Valid UN number has been extracted and hazmat description processing is complete
AND The Fastway hazmat extraction process concludes
THEN:
• The hazmat found flag is set to indicate successful extraction from Fastway sources
R-GCCCCADD-cbl-02415 (+23)File: GCCCCADD.cblBusiness Rule: Build shipper and consignee records with EDI BOL to Fastway fallback logic
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment record is being processed for shipper information.
Trigger Criteria:
Context: A shipment record is being processed for shipper information
Applied to: EDI BOL Shipper Data Available?
Action: The system checks for EDI BOL shipper data availability by looking up EBSNRSC segment with type 'HN' and sequence '01'
Logic Flow:
IF A shipment record is being processed for shipper information
AND The system checks for EDI BOL shipper data availability by looking up EBSNRSC segment with type 'HN' and sequence '01'
THEN:
• If EDI BOL shipper data is found, use EDI data source; otherwise fallback to Fastway shipment root data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol shipper data is available in ebsnrsc segment.
Trigger Criteria:
Context: EDI BOL shipper data is available in EBSNRSC segment
Applied to: Extract Shipper Name and CHOP from EDI BOL
Action: The system processes the shipper N1 segment data
Logic Flow:
IF EDI BOL shipper data is available in EBSNRSC segment
AND The system processes the shipper N1 segment data
THEN:
• Set entity ID to 'SH', extract shipper name from F1-CONSIGNOR-NAME, extract CHOP code from F1-SHPR-CHOP, and clear ID code qualifier and ID code fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol shipper data is not available.
Trigger Criteria:
Context: EDI BOL shipper data is not available
Applied to: Use Fastway Shipper Data
Action: The system needs shipper information for the manifest
Logic Flow:
IF EDI BOL shipper data is not available
AND The system needs shipper information for the manifest
THEN:
• Set entity ID to 'SH', extract shipper name from SHPR-NM of SHIPROOT, extract CHOP code from SHPR-CHOP of SHIPROOT, and clear ID code qualifier and ID code fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper basic information has been processed.
Trigger Criteria:
Context: Shipper basic information has been processed
Applied to: EDI BOL Shipper Address Available?
Action: The system checks for EDI BOL shipper address data by looking up EBSNRSA segment with types 'HN' and 'HA'
Logic Flow:
IF Shipper basic information has been processed
AND The system checks for EDI BOL shipper address data by looking up EBSNRSA segment with types 'HN' and 'HA'
THEN:
• If EDI BOL address data is found, use EDI address source; otherwise use Fastway address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol shipper address data is available in ebsnrsa segment.
Trigger Criteria:
Context: EDI BOL shipper address data is available in EBSNRSA segment
Applied to: Extract Address from EDI BOL
Action: The system processes the shipper address information
Logic Flow:
IF EDI BOL shipper address data is available in EBSNRSA segment
AND The system processes the shipper address information
THEN:
• Extract address line 1 from F2-ADDL-NAME-ADDR-1, extract address line 2 from F2-ADDL-NAME-ADDR-2, andif address line 1 is blank set it to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol shipper address data is not available.
Trigger Criteria:
Context: EDI BOL shipper address data is not available
Applied to: Use Fastway Address Data
Action: The system needs shipper address information
Logic Flow:
IF EDI BOL shipper address data is not available
AND The system needs shipper address information
THEN:
• IfSHPR-ADDR(1) is blank set address line 1 to 'NA', otherwise use SHPR-ADDR(1) for address line 1, and set address line 2 to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipper address information has been processed.
Trigger Criteria:
Context: Shipper address information has been processed
Applied to: EDI BOL Shipper City/State Available?
Action: The system checks for EDI BOL shipper city/state data by looking up EBSNRSA segment with types 'HN' and 'HC'
Logic Flow:
IF Shipper address information has been processed
AND The system checks for EDI BOL shipper city/state data by looking up EBSNRSA segment with types 'HN' and 'HC'
THEN:
• If EDI BOL city/state data is found, use EDI source; otherwise parse Fastway address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol shipper city/state data is available in ebsnrsa segment.
Trigger Criteria:
Context: EDI BOL shipper city/state data is available in EBSNRSA segment
Applied to: Extract City/State/Postal from EDI BOL
Action: The system processes the shipper location information
Logic Flow:
IF EDI BOL shipper city/state data is available in EBSNRSA segment
AND The system processes the shipper location information
THEN:
• Extract city from F4-CITY-NAME, extract state/province from F4-STATE-PROV-CODE, extract postal code from F4-POSTAL-CODE, and extract country code from F4-COUNTRY-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol shipper city/state data is not available.
Trigger Criteria:
Context: EDI BOL shipper city/state data is not available
Applied to: Parse Fastway Address for City/State/Postal
Action: The system needs shipper location information
Logic Flow:
IF EDI BOL shipper city/state data is not available
AND The system needs shipper location information
THEN:
• Parse SHPR-ADDR(2) to extract city name, state/province code, and postal code, then lookup country code from state/province using TB-STATE-COUNTRY table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper location information has been processed.
Trigger Criteria:
Context: Shipper location information has been processed
Applied to: EDI BOL Contact Info Available?
Action: The system checks for EDI BOL shipper contact data by looking up EBSNRSA segment with types 'HN' and 'GP'
Logic Flow:
IF Shipper location information has been processed
AND The system checks for EDI BOL shipper contact data by looking up EBSNRSA segment with types 'HN' and 'GP'
THEN:
• If EDI BOL contact data is found, extract contact information; otherwise set contact fields to blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol shipper contact data is available in ebsnrsa segment.
Trigger Criteria:
Context: EDI BOL shipper contact data is available in EBSNRSA segment
Applied to: Extract Contact Information from EDI BOL
Action: The system processes the shipper contact information
Logic Flow:
IF EDI BOL shipper contact data is available in EBSNRSA segment
AND The system processes the shipper contact information
THEN:
• Extract contact function code from PER-CONTACT-FUNC-CODE, extract contact name from PER-NAME, extract communication number qualifier from PER-COMMUN-NO-QUAL, and extract communication number from PER-COMMUN-NUMBER
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment record is being processed for consignee information.
Trigger Criteria:
Context: A shipment record is being processed for consignee information
Applied to: EDI BOL Consignee Data Available?
Action: The system checks for EDI BOL consignee data availability by looking up EBSNRSC segment with type 'CN' and sequence '01'
Logic Flow:
IF A shipment record is being processed for consignee information
AND The system checks for EDI BOL consignee data availability by looking up EBSNRSC segment with type 'CN' and sequence '01'
THEN:
• If EDI BOL consignee data is found, use EDI data source; otherwise fallback to Fastway shipment root data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol consignee data is available in ebsnrsc segment.
Trigger Criteria:
Context: EDI BOL consignee data is available in EBSNRSC segment
Applied to: Extract Consignee Name and CHOP from EDI BOL
Action: The system processes the consignee N1 segment data
Logic Flow:
IF EDI BOL consignee data is available in EBSNRSC segment
AND The system processes the consignee N1 segment data
THEN:
• Set entity ID to 'CN', extract consignee name from D1-SHIPPER-NAME, extract CHOP code from D1-CONS-CHOP, and clear ID code qualifier and ID code fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol consignee data is not available.
Trigger Criteria:
Context: EDI BOL consignee data is not available
Applied to: Use Fastway Consignee Data
Action: The system needs consignee information for the manifest
Logic Flow:
IF EDI BOL consignee data is not available
AND The system needs consignee information for the manifest
THEN:
• Set entity ID to 'CN', extract consignee name from CONS-DATA(1) of SHIPROOT, extract CHOP code from CONS-CHOP of SHIPROOT, and clear ID code qualifier and ID code fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee basic information has been processed.
Trigger Criteria:
Context: Consignee basic information has been processed
Applied to: EDI BOL Consignee Address Available?
Action: The system checks for EDI BOL consignee address data by looking up EBSNRSA segment with types 'CN' and 'CA'
Logic Flow:
IF Consignee basic information has been processed
AND The system checks for EDI BOL consignee address data by looking up EBSNRSA segment with types 'CN' and 'CA'
THEN:
• If EDI BOL address data is found, use EDI address source; otherwise use Fastway address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol consignee address data is available in ebsnrsa segment.
Trigger Criteria:
Context: EDI BOL consignee address data is available in EBSNRSA segment
Applied to: Extract Address from EDI BOL
Action: The system processes the consignee address information
Logic Flow:
IF EDI BOL consignee address data is available in EBSNRSA segment
AND The system processes the consignee address information
THEN:
• Extract address line 1 from D2-ADDL-NAME-ADDR-1, extract address line 2 from D2-ADDL-NAME-ADDR-2, andif address line 1 is blank set it to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol consignee address data is not available.
Trigger Criteria:
Context: EDI BOL consignee address data is not available
Applied to: Use Fastway Address Data
Action: The system needs consignee address information
Logic Flow:
IF EDI BOL consignee address data is not available
AND The system needs consignee address information
THEN:
• IfCONS-DATA(3) is blank set address line 1 to 'NA', otherwise use CONS-DATA(3) for address line 1, and set address line 2 to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee address information has been processed.
Trigger Criteria:
Context: Consignee address information has been processed
Applied to: EDI BOL Consignee City/State Available?
Action: The system checks for EDI BOL consignee city/state data by looking up EBSNRSA segment with types 'CN' and 'CC'
Logic Flow:
IF Consignee address information has been processed
AND The system checks for EDI BOL consignee city/state data by looking up EBSNRSA segment with types 'CN' and 'CC'
THEN:
• If EDI BOL city/state data is found, use EDI source; otherwise parse Fastway address data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol consignee city/state data is available in ebsnrsa segment.
Trigger Criteria:
Context: EDI BOL consignee city/state data is available in EBSNRSA segment
Applied to: Extract City/State/Postal from EDI BOL
Action: The system processes the consignee location information
Logic Flow:
IF EDI BOL consignee city/state data is available in EBSNRSA segment
AND The system processes the consignee location information
THEN:
• Extract city from D4-CITY-NAME, extract state/province from D4-STATE-PROV-CODE, extract postal code from D4-POSTAL-CODE, and extract country code from D4-COUNTRY-CODE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol consignee city/state data is not available.
Trigger Criteria:
Context: EDI BOL consignee city/state data is not available
Applied to: Parse Fastway Address for City/State/Postal
Action: The system needs consignee location information
Logic Flow:
IF EDI BOL consignee city/state data is not available
AND The system needs consignee location information
THEN:
• Parse CONS-DATA(4) to extract city name, state/province code, and postal code, then lookup country code from state/province using TB-STATE-COUNTRY table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when consignee location information has been processed.
Trigger Criteria:
Context: Consignee location information has been processed
Applied to: EDI BOL Contact Info Available?
Action: The system checks for EDI BOL consignee contact data by looking up EBSNRSA segment with types 'CN' and 'GP'
Logic Flow:
IF Consignee location information has been processed
AND The system checks for EDI BOL consignee contact data by looking up EBSNRSA segment with types 'CN' and 'GP'
THEN:
• If EDI BOL contact data is found, extract contact information; otherwise set contact fields to blank
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol consignee contact data is available in ebsnrsa segment.
Trigger Criteria:
Context: EDI BOL consignee contact data is available in EBSNRSA segment
Applied to: Extract Contact Information from EDI BOL
Action: The system processes the consignee contact information
Logic Flow:
IF EDI BOL consignee contact data is available in EBSNRSA segment
AND The system processes the consignee contact information
THEN:
• Extract contact function code from PER-CONTACT-FUNC-CODE, extract contact name from PER-NAME, extract communication number qualifier from PER-COMMUN-NO-QUAL, and extract communication number from PER-COMMUN-NUMBER
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper and consignee records have been processed.
Trigger Criteria:
Context: Shipper and consignee records have been processed
Applied to: Apply Address Defaults if Missing
Action: Required address fields are missing or incomplete
Logic Flow:
IF Shipper and consignee records have been processed
AND Required address fields are missing or incomplete
THEN:
• Set address line 1 to 'NA' if blank, set address line 2 to 'NA' if blank or contains only one character followed by spaces, and set default country codes ('US' for shipper, 'CA' for consignee) when address line 2 is defaulted
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when state or province code is available for shipper or consignee.
Trigger Criteria:
Context: A state or province code is available for shipper or consignee
Applied to: Determine Country Code from State/Province
Action: The system needs to determine the corresponding country code
Logic Flow:
IF A state or province code is available for shipper or consignee
AND The system needs to determine the corresponding country code
THEN:
• Search TB-STATE-COUNTRY table for matching state/province code and set country code from the corresponding table entry, or set to spaces if no match found
R-GCCCCADD-cbl-02439 (+25)File: GCCCCADD.cblBusiness Rule: Process additional entity types with address validation and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol record exists with sf entity type pn in sequence 01.
Trigger Criteria:
Context: An EDI BOL record exists with SF entity type PN in sequence 01
Applied to: Process SF - Stuffer Entity
Action: The system processes SF entity data
Logic Flow:
IF An EDI BOL record exists with SF entity type PN in sequence 01
AND The system processes SF entity data
THEN:
• The system extracts SF name, address information, city/state/postal data, and contact information, validates the entity data, and creates a record with entity ID 'SF'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when sf entity is being processed.
Trigger Criteria:
Context: SF entity is being processed
Applied to: Get SF Address Data
Action: The SF address information is spaces or empty
Logic Flow:
IF SF entity is being processed
AND The SF address information is spaces or empty
THEN:
• The system sets the address to 'NA' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol record exists with uc entity type un in sequence 01.
Trigger Criteria:
Context: An EDI BOL record exists with UC entity type UN in sequence 01
Applied to: Process UC - Ultimate Consignee
Action: The system processes UC entity data
Logic Flow:
IF An EDI BOL record exists with UC entity type UN in sequence 01
AND The system processes UC entity data
THEN:
• The system extracts UC name, address information, city/state/postal data, and contact information, validates the entity data, and creates a record with entity ID 'UC'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when uc entity is being processed.
Trigger Criteria:
Context: UC entity is being processed
Applied to: Get UC Address Data
Action: The UC address information is not found or spaces
Logic Flow:
IF UC entity is being processed
AND The UC address information is not found or spaces
THEN:
• The system sets the primary address to 'NA' and secondary address to spaces as default values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol record exists with bn entity type in sequence 01 and organization id is 'bn'.
Trigger Criteria:
Context: An EDI BOL record exists with BN entity type in sequence 01 and organization ID is 'BN'
Applied to: Process BN - Beneficial Owner
Action: The system processes BN entity data
Logic Flow:
IF An EDI BOL record exists with BN entity type in sequence 01 and organization ID is 'BN'
AND The system processes BN entity data
THEN:
• The system extracts BN name, consignee chop code, address information, city/state/postal data, validates the entity data, and creates a record with entity ID 'BN'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when bn entity is being processed.
Trigger Criteria:
Context: BN entity is being processed
Applied to: Get BN Address Data
Action: The BN address information is spaces or empty
Logic Flow:
IF BN entity is being processed
AND The BN address information is spaces or empty
THEN:
• The system sets the address to 'NA' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when transportation data exists with organization id 'c1' or consignee data code is 'c' in fastway.
Trigger Criteria:
Context: Transportation data exists with organization ID 'C1' or consignee data code is 'C' in Fastway
Applied to: Process C1 - Carrier Entity
Action: The system processes C1 entity data
Logic Flow:
IF Transportation data exists with organization ID 'C1' or consignee data code is 'C' in Fastway
AND The system processes C1 entity data
THEN:
• The system extracts C1 name from EDI transportation data if found, otherwise uses consignee data from Fastway, gets address and contact information, validates the entity data, and creates a record with entity ID 'C1'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when c1 entity is being processed from fastway data.
Trigger Criteria:
Context: C1 entity is being processed from Fastway data
Applied to: Get C1 Address Data
Action: The C1 address information is spaces or empty
Logic Flow:
IF C1 entity is being processed from Fastway data
AND The C1 address information is spaces or empty
THEN:
• The system sets the address to 'NA' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi transportation data exists with organization id 'n1'.
Trigger Criteria:
Context: EDI transportation data exists with organization ID 'N1'
Applied to: Process N1 - Notify Party
Action: The system processes N1 entity data
Logic Flow:
IF EDI transportation data exists with organization ID 'N1'
AND The system processes N1 entity data
THEN:
• The system extracts N1 name, address, and contact information, validates the entity data, and creates a record with entity ID 'N1'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi mcoa data exists with organization id 'pf' or 'ss' and type 'ot'.
Trigger Criteria:
Context: EDI MCOA data exists with organization ID 'PF' or 'SS' and type 'OT'
Applied to: Process PF/SS - MCOA Entities
Action: The system processes PF/SS entity data
Logic Flow:
IF EDI MCOA data exists with organization ID 'PF' or 'SS' and type 'OT'
AND The system processes PF/SS entity data
THEN:
• The system extracts entity name, ID code qualifier, ID code, address information from ON segment, city/state/postal data from OC segment, validates the entity data, and creates a record with the respective entity ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when pf/ss entity is being processed.
Trigger Criteria:
Context: PF/SS entity is being processed
Applied to: Get PF/SS Address Data
Action: The PF/SS address information is not found in ON segment
Logic Flow:
IF PF/SS entity is being processed
AND The PF/SS address information is not found in ON segment
THEN:
• The system sets the primary address to 'NA' and secondary address to spaces as default values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi transportation data exists with organization id matching '11', 'mc', 'oo', or 'fw'.
Trigger Criteria:
Context: EDI transportation data exists with organization ID matching '11', 'MC', 'OO', or 'FW'
Applied to: Process Additional Entities - 11, MC, OO, FW
Action: The system processes the additional entity data
Logic Flow:
IF EDI transportation data exists with organization ID matching '11', 'MC', 'OO', or 'FW'
AND The system processes the additional entity data
THEN:
• The system extracts entity name, address information from T2 segment, city/state/postal data from TA segment, contact information from T3 segment, validates the entity data, and creates a record with the respective entity ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when additional entity (11, mc, oo, fw) is being processed.
Trigger Criteria:
Context: Additional entity (11, MC, OO, FW) is being processed
Applied to: Get Entity Address Data
Action: The entity address information is spaces or empty
Logic Flow:
IF Additional entity (11, MC, OO, FW) is being processed
AND The entity address information is spaces or empty
THEN:
• The system sets the address to 'NA' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol data exists with nn entity type and entity id code is valid.
Trigger Criteria:
Context: EDI BOL data exists with NN entity type and entity ID code is valid
Applied to: Process NN - Multiple Entities
Action: The system processes NN entity data for each sequence number
Logic Flow:
IF EDI BOL data exists with NN entity type and entity ID code is valid
AND The system processes NN entity data for each sequence number
THEN:
• The system extracts entity name, consignee chop code, address information from GC segment, city/state/postal data from GA segment, validates the entity data, and creates a record with the entity ID from the NN segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when nn entity is being processed.
Trigger Criteria:
Context: NN entity is being processed
Applied to: Get NN Address Data
Action: The NN address information is not found in GC segment or is spaces
Logic Flow:
IF NN entity is being processed
AND The NN address information is not found in GC segment or is spaces
THEN:
• The system sets the address to 'NA' as default value and clears secondary address
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity data contains address, city/state, or contact information.
Trigger Criteria:
Context: Entity data contains address, city/state, or contact information
Applied to: Validate Required Fields
Action: The entity ID code or entity name is missing
Logic Flow:
IF Entity data contains address, city/state, or contact information
AND The entity ID code or entity name is missing
THEN:
• The system generates required field error messages for missing entity ID code and entity name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity sequence number is greater than 2 (not shipper or consignee).
Trigger Criteria:
Context: Entity sequence number is greater than 2 (not shipper or consignee)
Applied to: Validate Required Fields
Action: Entity ID code is present but not in valid values list or is shipper/consignee/customs broker
Logic Flow:
IF Entity sequence number is greater than 2 (not shipper or consignee)
AND Entity ID code is present but not in valid values list or is shipper/consignee/customs broker
THEN:
• The system generates an invalid entity ID code error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity has a valid entity id code.
Trigger Criteria:
Context: Entity has a valid entity ID code
Applied to: Validate Address Information
Action: The primary address information is missing or spaces
Logic Flow:
IF Entity has a valid entity ID code
AND The primary address information is missing or spaces
THEN:
• The system generates a required address information error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity has address data present.
Trigger Criteria:
Context: Entity has address data present
Applied to: Validate Address Information
Action: City name is missing or has less than 2 characters
Logic Flow:
IF Entity has address data present
AND City name is missing or has less than 2 characters
THEN:
• The system generates required city name error message or minimum length error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity has address data present.
Trigger Criteria:
Context: Entity has address data present
Applied to: Validate Address Information
Action: Country code is missing or spaces
Logic Flow:
IF Entity has address data present
AND Country code is missing or spaces
THEN:
• The system generates a required country code error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity has postal code information.
Trigger Criteria:
Context: Entity has postal code information
Applied to: Validate Address Information
Action: Postal code is present but has less than 3 characters
Logic Flow:
IF Entity has postal code information
AND Postal code is present but has less than 3 characters
THEN:
• The system generates a minimum length error message for postal code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity country code is canada, usa, or mexico.
Trigger Criteria:
Context: Entity country code is Canada, USA, or Mexico
Applied to: Validate Address Information
Action: State/province code is missing or invalid for the specified country
Logic Flow:
IF Entity country code is Canada, USA, or Mexico
AND State/province code is missing or invalid for the specified country
THEN:
• The system generates required state/province error message or invalid state/province error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when entity has state/province code but missing country code.
Trigger Criteria:
Context: Entity has state/province code but missing country code
Applied to: Validate Address Information
Action: State/province code matches an entry in the state-country lookup table
Logic Flow:
IF Entity has state/province code but missing country code
AND State/province code matches an entry in the state-country lookup table
THEN:
• The system sets the country code based on the lookup table match
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity has contact person name or communication number.
Trigger Criteria:
Context: Entity has contact person name or communication number
Applied to: Validate Contact Information
Action: Communication number qualifier is missing
Logic Flow:
IF Entity has contact person name or communication number
AND Communication number qualifier is missing
THEN:
• The system generates a required communication qualifier error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity has communication number qualifier.
Trigger Criteria:
Context: Entity has communication number qualifier
Applied to: Validate Contact Information
Action: Communication qualifier is not spaces, 'FX' (fax), or 'TE' (telephone)
Logic Flow:
IF Entity has communication number qualifier
AND Communication qualifier is not spaces, 'FX' (fax), or 'TE' (telephone)
THEN:
• The system generates an invalid communication qualifier error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity has communication number qualifier or contact person name.
Trigger Criteria:
Context: Entity has communication number qualifier or contact person name
Applied to: Validate Contact Information
Action: Communication number is missing or spaces
Logic Flow:
IF Entity has communication number qualifier or contact person name
AND Communication number is missing or spaces
THEN:
• The system generates a required communication number error message
R-GCCCCADD-cbl-02465 (+20)File: GCCCCADD.cblBusiness Rule: Execute AU table lookup with importer data extraction and CSA indicator management
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when customs manifest processing request is initiated.
Trigger Criteria:
Context: A customs manifest processing request is initiated
Applied to: Initialize AU Table Parameters
Action: The system needs to lookup importer information from the AU table
Logic Flow:
IF A customs manifest processing request is initiated
AND The system needs to lookup importer information from the AU table
THEN:
• The system initializes lookup parameters by clearing all table keys and flags, setting function code to 'GU' for retrieval, setting table ID to 'AU', and preparing for database access
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when au table lookup parameters are initialized and consignee chop code exists in the shipment data.
Trigger Criteria:
Context: AU table lookup parameters are initialized and consignee CHOP code exists in the shipment data
Applied to: Set Consignee CHOP as Key
Action: The system prepares the AU table lookup key
Logic Flow:
IF AU table lookup parameters are initialized and consignee CHOP code exists in the shipment data
AND The system prepares the AU table lookup key
THEN:
• The system sets the consignee CHOP code from the shipment root as the CHOP key in the AU table lookup parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when au table lookup parameters have consignee chop set and commodity code exists in the manifest data.
Trigger Criteria:
Context: AU table lookup parameters have consignee CHOP set and commodity code exists in the manifest data
Applied to: Set Commodity Code as Key
Action: The system completes the AU table lookup key configuration
Logic Flow:
IF AU table lookup parameters have consignee CHOP set and commodity code exists in the manifest data
AND The system completes the AU table lookup key configuration
THEN:
• The system sets the commodity code from the manifest as the commodity key in the AU table lookup parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when au table lookup parameters are fully configured with consignee chop and commodity code.
Trigger Criteria:
Context: AU table lookup parameters are fully configured with consignee CHOP and commodity code
Applied to: Execute AU Table Lookup
Action: The system executes the AU table lookup
Logic Flow:
IF AU table lookup parameters are fully configured with consignee CHOP and commodity code
AND The system executes the AU table lookup
THEN:
• The system calls the table I/O routine to retrieve the AU record and sets the return status based on whether a matching record is found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when au table lookup has been executed with consignee chop and commodity code.
Trigger Criteria:
Context: AU table lookup has been executed with consignee CHOP and commodity code
Applied to: AU Record Found?
Action: The system evaluates the lookup results
Logic Flow:
IF AU table lookup has been executed with consignee CHOP and commodity code
AND The system evaluates the lookup results
THEN:
• If the lookup return flag indicates success, the system proceeds to extract AU data; otherwise, it skips AU processing and continues with the next step
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when au table lookup found a matching record.
Trigger Criteria:
Context: AU table lookup found a matching record
Applied to: Extract AU Importer Data
Action: The system processes the AU record data
Logic Flow:
IF AU table lookup found a matching record
AND The system processes the AU record data
THEN:
• The system extracts the importer name from the AU table segment and stores it for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au record data has been accessed and importer name extracted.
Trigger Criteria:
Context: AU record data has been accessed and importer name extracted
Applied to: Extract AU Business Number
Action: The system continues processing the AU record
Logic Flow:
IF AU record data has been accessed and importer name extracted
AND The system continues processing the AU record
THEN:
• The system extracts the business number from the AU table segment for importer business identification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when au importer and business number data have been extracted.
Trigger Criteria:
Context: AU importer and business number data have been extracted
Applied to: Check CSA Indicator Status
Action: The system checks the current CSA indicator status and existing importer data
Logic Flow:
IF AU importer and business number data have been extracted
AND The system checks the current CSA indicator status and existing importer data
THEN:
• If CSA indicator is already on OR importer data is already populated from another source, the system skips AU data assignment; otherwise, it proceeds to set AU data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au data is available and csa indicator is not already active and no existing importer data.
Trigger Criteria:
Context: AU data is available and CSA indicator is not already active and no existing importer data
Applied to: Set Importer Name from AU
Action: The system assigns AU importer information to the manifest
Logic Flow:
IF AU data is available and CSA indicator is not already active and no existing importer data
AND The system assigns AU importer information to the manifest
THEN:
• The system sets the importer name field in the customs manifest to the importer value from the AU table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au importer name has been assigned to the manifest.
Trigger Criteria:
Context: AU importer name has been assigned to the manifest
Applied to: Set Business Number from AU
Action: The system continues assigning AU business information
Logic Flow:
IF AU importer name has been assigned to the manifest
AND The system continues assigning AU business information
THEN:
• The system sets the business number field in the customs manifest to the business number value from the AU table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when au business number has been assigned to the manifest.
Trigger Criteria:
Context: AU business number has been assigned to the manifest
Applied to: Set Business Number Qualifier to M5
Action: The system sets the business number qualifier
Logic Flow:
IF AU business number has been assigned to the manifest
AND The system sets the business number qualifier
THEN:
• The system sets the business number qualifier field to 'M5' to indicate the business number source type
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au importer data and business number qualifier have been assigned.
Trigger Criteria:
Context: AU importer data and business number qualifier have been assigned
Applied to: Turn CSA Indicator ON
Action: The system finalizes AU data assignment
Logic Flow:
IF AU importer data and business number qualifier have been assigned
AND The system finalizes AU data assignment
THEN:
• The system turns on the CSA indicator to reflect that the importer is eligible for customs self-assessment processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au importer data has been successfully assigned and csa indicator activated.
Trigger Criteria:
Context: AU importer data has been successfully assigned and CSA indicator activated
Applied to: Mark AU Importer Found Flag
Action: The system updates processing status flags
Logic Flow:
IF AU importer data has been successfully assigned and CSA indicator activated
AND The system updates processing status flags
THEN:
• The system sets the AU importer found flag to true to track that AU processing was successful
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when au processing has completed and au importer found flag is set.
Trigger Criteria:
Context: AU processing has completed and AU importer found flag is set
Applied to: AU Importer Found AND S55 Importer Not Found?
Action: The system evaluates whether to create a new importer record
Logic Flow:
IF AU processing has completed and AU importer found flag is set
AND The system evaluates whether to create a new importer record
THEN:
• If AU importer was found AND no S55 importer record exists, the system proceeds to create a new importer record; otherwise, it completes AU processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when conditions are met for creating a new importer record.
Trigger Criteria:
Context: Conditions are met for creating a new importer record
Applied to: Create Importer Record in Customs
Action: The system creates the importer record
Logic Flow:
IF Conditions are met for creating a new importer record
AND The system creates the importer record
THEN:
• The system initializes a new GCSCCS55 record structure, sets the CCN key, record type to '55', and assigns the next available sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when new importer record structure has been created.
Trigger Criteria:
Context: A new importer record structure has been created
Applied to: Set Entity ID to IM
Action: The system sets the entity classification
Logic Flow:
IF A new importer record structure has been created
AND The system sets the entity classification
THEN:
• The system sets the entity ID code to 'IM' to identify this record as an importer entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer record has entity id set and au importer name is available.
Trigger Criteria:
Context: Importer record has entity ID set and AU importer name is available
Applied to: Set Importer Name
Action: The system populates importer identification fields
Logic Flow:
IF Importer record has entity ID set and AU importer name is available
AND The system populates importer identification fields
THEN:
• The system sets the name field in the customs record to the AU importer name and also updates the main importer field in the manifest
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer name has been set in the customs record.
Trigger Criteria:
Context: Importer name has been set in the customs record
Applied to: Set Business Number and Qualifier
Action: The system completes business identification setup
Logic Flow:
IF Importer name has been set in the customs record
AND The system completes business identification setup
THEN:
• The system sets the ID code to the AU business number, sets the ID code qualifier to 'M5', and updates corresponding fields in the main manifest
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when business identification fields have been set in the importer record.
Trigger Criteria:
Context: Business identification fields have been set in the importer record
Applied to: Set Default Address to NA
Action: The system sets address information
Logic Flow:
IF Business identification fields have been set in the importer record
AND The system sets address information
THEN:
• The system sets the primary address field to 'NA' (Not Available) and clears the secondary address field and all location fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address information has been set with default values.
Trigger Criteria:
Context: Address information has been set with default values
Applied to: Clear Contact Information
Action: The system initializes contact fields
Logic Flow:
IF Address information has been set with default values
AND The system initializes contact fields
THEN:
• The system clears all contact-related fields including PER data to indicate no contact information is available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when new importer record has been fully populated with au data.
Trigger Criteria:
Context: New importer record has been fully populated with AU data
Applied to: Turn CSA Indicator ON
Action: The system finalizes the record creation
Logic Flow:
IF New importer record has been fully populated with AU data
AND The system finalizes the record creation
THEN:
• The system turns on the CSA indicator in the main manifest to enable customs self-assessment processing for this importer
R-GCCCCADD-cbl-02486 (+5)File: GCCCCADD.cblBusiness Rule: Execute progressive broker search with expanding criteria and wildcard matching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment requires broker assignment and all search criteria are available (shipper chop code, consignee chop code, origin station number, destination station number, origin splc as wildcard, destination splc with road number, and commodity code).
Trigger Criteria:
Context: A shipment requires broker assignment and all search criteria are available (shipper CHOP code, consignee CHOP code, origin station number, destination station number, origin SPLC as wildcard, destination SPLC with road number, and commodity code)
Applied to: Full Criteria Match
Action: The system executes the first broker search with complete criteria
Logic Flow:
IF A shipment requires broker assignment and all search criteria are available (shipper CHOP code, consignee CHOP code, origin station number, destination station number, origin SPLC as wildcard, destination SPLC with road number, and commodity code)
AND The system executes the first broker search with complete criteria
THEN:
• The system calls the crossing table lookup service with all specified parameters and sets the broker data found flag based on the lookup result
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when initial broker search with full criteria returned no results.
Trigger Criteria:
Context: The initial broker search with full criteria returned no results
Applied to: Wildcard Shipper CHOP
Action: The system executes the second broker search replacing shipper CHOP code with wildcard and keeping consignee CHOP, origin station, destination station, origin SPLC, destination SPLC with road number, and commodity code unchanged
Logic Flow:
IF The initial broker search with full criteria returned no results
AND The system executes the second broker search replacing shipper CHOP code with wildcard and keeping consignee CHOP, origin station, destination station, origin SPLC, destination SPLC with road number, and commodity code unchanged
THEN:
• The system calls the crossing table lookup service with modified criteria and sets the broker data found flag based on the lookup result
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when both the initial and secondary broker searches returned no results.
Trigger Criteria:
Context: Both the initial and secondary broker searches returned no results
Applied to: Wildcard All Criteria
Action: The system executes the third broker search replacing shipper CHOP code, origin station, and commodity code with wildcards while keeping consignee CHOP, destination station, origin SPLC, and destination SPLC with road number unchanged
Logic Flow:
IF Both the initial and secondary broker searches returned no results
AND The system executes the third broker search replacing shipper CHOP code, origin station, and commodity code with wildcards while keeping consignee CHOP, destination station, origin SPLC, and destination SPLC with road number unchanged
THEN:
• The system calls the crossing table lookup service with maximum wildcard criteria and sets the broker data found flag based on the lookup result
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when broker data has been found in the crossing table lookup.
Trigger Criteria:
Context: Broker data has been found in the crossing table lookup
Applied to: Override Flag = Y?
Action: The override flag in the crossing table data equals 'Y'
Logic Flow:
IF Broker data has been found in the crossing table lookup
AND The override flag in the crossing table data equals 'Y'
THEN:
• The system unconditionally applies the broker name from the crossing table and updates the manifest-to station if specified in the crossing table data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when broker data has been found in the crossing table lookup and the override flag is not 'y'.
Trigger Criteria:
Context: Broker data has been found in the crossing table lookup and the override flag is not 'Y'
Applied to: Current Broker Empty or Default?
Action: The current broker name is spaces, 'UNKNOWN', or 'NOT-REQ'
Logic Flow:
IF Broker data has been found in the crossing table lookup and the override flag is not 'Y'
AND The current broker name is spaces, 'UNKNOWN', or 'NOT-REQ'
THEN:
• The system applies the broker name from the crossing table and updates the manifest-to station if specified in the crossing table data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when broker data has been applied from the crossing table. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Broker data has been applied from the crossing table
Applied to: Update Manifest-To Station
Action: The crossing table data contains a Canadian manifest-to station specification that is not spaces
Logic Flow:
IF Broker data has been applied from the crossing table
AND The crossing table data contains a Canadian manifest-to station specification that is not spaces
THEN:
• The system updates the manifest-to station name, performs MC table lookup for the new station, validates the Canadian customs code, and updates related station information including customs code, station number, and call letters
R-GCCCCADD-cbl-02492 (+19)File: GCCCCADD.cblBusiness Rule: Build entity segments with comprehensive address and contact validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol contains stuffer entity data with entity id 'pn'.
Trigger Criteria:
Context: EDI BOL contains stuffer entity data with entity ID 'PN'
Applied to: Build SF - Stuffer Entity
Action: Processing stuffer entity segment
Logic Flow:
IF EDI BOL contains stuffer entity data with entity ID 'PN'
AND Processing stuffer entity segment
THEN:
• Create SF entity record with name, address, city/state/postal, and contact information from EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol contains ultimate consignee entity data with entity id 'un'.
Trigger Criteria:
Context: EDI BOL contains ultimate consignee entity data with entity ID 'UN'
IF EDI BOL contains ultimate consignee entity data with entity ID 'UN'
AND Processing ultimate consignee entity segment
THEN:
• Create UC entity record with name, address, city/state/postal, and contact information from EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol contains beneficial owner entity data with organization id 'bn'.
Trigger Criteria:
Context: EDI BOL contains beneficial owner entity data with organization ID 'BN'
IF EDI BOL contains beneficial owner entity data with organization ID 'BN'
AND Processing beneficial owner entity segment
THEN:
• Create BN entity record with name, address, city/state/postal information from transportation data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi transportation data contains organization id 'c1' or fastway consignee data code is 'c'.
Trigger Criteria:
Context: EDI transportation data contains organization ID 'C1' OR Fastway consignee data code is 'C'
Applied to: Build C1 - Carrier Entity
Action: Processing carrier entity segment
Logic Flow:
IF EDI transportation data contains organization ID 'C1' OR Fastway consignee data code is 'C'
AND Processing carrier entity segment
THEN:
• Create C1 entity record with name, address, city/state/postal, and contact information from available data source
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi transportation data contains organization id 'n1'.
Trigger Criteria:
Context: EDI transportation data contains organization ID 'N1'
Applied to: Build N1 - Notify Party Entity
Action: Processing notify party entity segment
Logic Flow:
IF EDI transportation data contains organization ID 'N1'
AND Processing notify party entity segment
THEN:
• Create N1 entity record with name, address, city/state/postal, and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi charges data contains organization id 'pf' or 'ss'.
Trigger Criteria:
Context: EDI charges data contains organization ID 'PF' or 'SS'
Applied to: Build PF/SS - Payment/Service Entities
IF EDI charges data contains organization ID 'PF' or 'SS'
AND Processing payment/service entity segments
THEN:
• Create entity record with organization ID, name, ID code qualifier, ID code, address, and city/state/postal information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi transportation data contains organization ids '11', 'nn', 'mc', 'oo', or 'fw'.
Trigger Criteria:
Context: EDI transportation data contains organization IDs '11', 'NN', 'MC', 'OO', or 'FW'
IF EDI transportation data contains organization IDs '11', 'NN', 'MC', 'OO', or 'FW'
AND Processing additional entity segments
THEN:
• Create corresponding entity records with name, address, city/state/postal, and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol contains importer entity data or existing importer data is available.
Trigger Criteria:
Context: EDI BOL contains importer entity data OR existing importer data is available
Applied to: Build IM - Importer Entity
Action: Processing importer entity segment
Logic Flow:
IF EDI BOL contains importer entity data OR existing importer data is available
AND Processing importer entity segment
THEN:
• Create IM entity record with name, business number, qualifier, address, and contact information, and set CSA indicator appropriately
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity record has address, city/state, or contact information.
Trigger Criteria:
Context: Entity record has address, city/state, or contact information
Applied to: Check Entity ID Values
Action: Entity ID is blank OR entity name is blank
Logic Flow:
IF Entity record has address, city/state, or contact information
AND Entity ID is blank OR entity name is blank
THEN:
• Generate validation error for required entity ID and name fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity sequence number is greater than 2.
Trigger Criteria:
Context: Entity sequence number is greater than 2
Applied to: Validate Name Requirements
Action: Entity ID is not in valid list OR is shipper/consignee/customs broker
Logic Flow:
IF Entity sequence number is greater than 2
AND Entity ID is not in valid list OR is shipper/consignee/customs broker
THEN:
• Generate validation error for invalid entity ID value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity id and name are not blank.
Trigger Criteria:
Context: Entity ID and name are not blank
Applied to: Validate Address Line 1 Required
Action: Address line 1 is blank
Logic Flow:
IF Entity ID and name are not blank
AND Address line 1 is blank
THEN:
• Generate validation error for required address information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity record is being created.
Trigger Criteria:
Context: Entity record is being created
Applied to: Set NA for Missing Address
Action: Address line 1 is blank
Logic Flow:
IF Entity record is being created
AND Address line 1 is blank
THEN:
• Set address line 1 to 'NA'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when city/state/postal information is provided.
Trigger Criteria:
Context: City/state/postal information is provided
Applied to: Check City Name Length ≥ 2
Action: City name is present AND city name length is less than 2 characters
Logic Flow:
IF City/state/postal information is provided
AND City name is present AND city name length is less than 2 characters
THEN:
• Generate validation error for minimum length requirement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when city/state/postal information is provided.
Trigger Criteria:
Context: City/state/postal information is provided
Applied to: Check Postal Code Length ≥ 3
Action: Postal code is present AND postal code length is less than 3 characters
Logic Flow:
IF City/state/postal information is provided
AND Postal code is present AND postal code length is less than 3 characters
THEN:
• Generate validation error for minimum length requirement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when country code is canada, usa, or mexico.
Trigger Criteria:
Context: Country code is Canada, USA, or Mexico
Applied to: Validate State Required for CA/US/MX
Action: State/province code is blank
Logic Flow:
IF Country code is Canada, USA, or Mexico
AND State/province code is blank
THEN:
• Generate validation error for required state/province information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state/province code and country code are both provided.
Trigger Criteria:
Context: State/province code and country code are both provided
Applied to: Validate Province-Country Match
Action: State/province code does not match the country code in reference table
Logic Flow:
IF State/province code and country code are both provided
AND State/province code does not match the country code in reference table
THEN:
• Generate validation error for invalid state/province combination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when state/province code is provided and country code is blank.
Trigger Criteria:
Context: State/province code is provided AND country code is blank
Applied to: Assign Country Codes
Action: Processing address information
Logic Flow:
IF State/province code is provided AND country code is blank
AND Processing address information
THEN:
• Look up country code from state-country reference table and assign to country field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when contact information is provided.
Trigger Criteria:
Context: Contact information is provided
Applied to: Validate Communication Qualifier
Action: Communication qualifier is not blank, 'FX', or 'TE'
Logic Flow:
IF Contact information is provided
AND Communication qualifier is not blank, 'FX', or 'TE'
THEN:
• Generate validation error for invalid communication qualifier value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when communication qualifier is not blank or contact name is not blank.
Trigger Criteria:
Context: Communication qualifier is not blank OR contact name is not blank
Applied to: Check Communication Number Required
Action: Communication number is blank
Logic Flow:
IF Communication qualifier is not blank OR contact name is not blank
AND Communication number is blank
THEN:
• Generate validation error for required communication number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity is shipper (sequence 1) or consignee (sequence 2).
Trigger Criteria:
Context: Entity is shipper (sequence 1) OR consignee (sequence 2)
Applied to: Validate Entity Data Complete
Action: Entity name, address, city/state/postal, and contact information are all blank
Logic Flow:
IF Entity is shipper (sequence 1) OR consignee (sequence 2)
AND Entity name, address, city/state/postal, and contact information are all blank
THEN:
• Generate validation errors for all required shipper or consignee fields
Business Justification: Dictates the expected operational logic and validation steps when record with sequence number indicating shipper (0001) or consignee (0002).
Trigger Criteria:
Context: A record with sequence number indicating shipper (0001) or consignee (0002)
Applied to: Is Shipper or Consignee Record?
Action: All core fields (name, address, city/state/postal, contact) are empty
Logic Flow:
IF A record with sequence number indicating shipper (0001) or consignee (0002)
AND All core fields (name, address, city/state/postal, contact) are empty
THEN:
• Generate comprehensive error messages for all missing required fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when record segment with address, city/state, or contact information present.
Trigger Criteria:
Context: A record segment with address, city/state, or contact information present
Applied to: Entity ID Present?
Action: Entity identifier code is missing or empty
Logic Flow:
IF A record segment with address, city/state, or contact information present
Business Justification: Governs the functional prerequisites and system routing when record with entity identifier code populated.
Trigger Criteria:
Context: A record with entity identifier code populated
Applied to: Name Present?
Action: Entity name field is missing or empty
Logic Flow:
IF A record with entity identifier code populated
AND Entity name field is missing or empty
THEN:
• Generate error message requiring entity name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record with sequence number greater than 2 and entity identifier present.
Trigger Criteria:
Context: A record with sequence number greater than 2 and entity identifier present
Applied to: Entity ID Valid for Record Type?
Action: Entity identifier is not in valid list or is shipper/consignee/customs broker type
Logic Flow:
IF A record with sequence number greater than 2 and entity identifier present
AND Entity identifier is not in valid list or is shipper/consignee/customs broker type
THEN:
• Generate error message for invalid entity identifier value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record with entity identifier code present.
Trigger Criteria:
Context: A record with entity identifier code present
Applied to: Entity ID Present but Address Missing?
Action: Primary address information is missing or empty
Logic Flow:
IF A record with entity identifier code present
AND Primary address information is missing or empty
THEN:
• Generate error message requiring address information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record with geographic information section populated.
Trigger Criteria:
Context: A record with geographic information section populated
Applied to: City Name Present?
Action: City name field is missing or empty
Logic Flow:
IF A record with geographic information section populated
AND City name field is missing or empty
THEN:
• Generate error message requiring city name
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when record with city name provided.
Trigger Criteria:
Context: A record with city name provided
Applied to: City Name Length >= 2?
Action: City name length is less than 2 characters
Logic Flow:
IF A record with city name provided
AND City name length is less than 2 characters
THEN:
• Generate error message for minimum length requirement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record with postal code field populated.
Trigger Criteria:
Context: A record with postal code field populated
Applied to: Postal Code Length >= 3?
Action: Postal code length is less than 3 characters
Logic Flow:
IF A record with postal code field populated
AND Postal code length is less than 3 characters
THEN:
• Generate error message for postal code minimum length requirement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when record with country code indicating canada, united states, or mexico.
Trigger Criteria:
Context: A record with country code indicating Canada, United States, or Mexico
Applied to: Country is CA/US/MX?
Action: State or province code is missing or empty
Logic Flow:
IF A record with country code indicating Canada, United States, or Mexico
AND State or province code is missing or empty
THEN:
• Generate error message requiring state or province code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record with both state/province code and country code provided.
Trigger Criteria:
Context: A record with both state/province code and country code provided
Applied to: State/Country Combination Valid?
Action: State/province code does not correspond to the specified country in reference table
Logic Flow:
IF A record with both state/province code and country code provided
AND State/province code does not correspond to the specified country in reference table
THEN:
• Generate error message for invalid state/province and country combination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when record with contact person name populated.
Trigger Criteria:
Context: A record with contact person name populated
Applied to: Contact Name Present but Qualifier Missing?
Action: Communication number qualifier is missing or empty
Logic Flow:
IF A record with contact person name populated
AND Communication number qualifier is missing or empty
THEN:
• Generate error message requiring communication qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record with communication number populated.
Trigger Criteria:
Context: A record with communication number populated
Applied to: Communication Number Present but Qualifier Missing?
Action: Communication number qualifier is missing or empty
Logic Flow:
IF A record with communication number populated
AND Communication number qualifier is missing or empty
THEN:
• Generate error message requiring communication qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when record with communication qualifier populated.
Trigger Criteria:
Context: A record with communication qualifier populated
Applied to: Qualifier Valid Value?
Action: Qualifier value is not spaces, 'FX', or 'TE'
Logic Flow:
IF A record with communication qualifier populated
AND Qualifier value is not spaces, 'FX', or 'TE'
THEN:
• Generate error message for invalid communication qualifier value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when record with communication qualifier populated or contact person name populated.
Trigger Criteria:
Context: A record with communication qualifier populated or contact person name populated
Applied to: Qualifier or Name Present but Number Missing?
Action: Communication number is missing or empty
Logic Flow:
IF A record with communication qualifier populated or contact person name populated
AND Communication number is missing or empty
THEN:
• Generate error message requiring communication number
R-GCCCCADD-cbl-02526 (+7)File: GCCCCADD.cblBusiness Rule: Execute address validation with state
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address validation process is initiated.
Trigger Criteria:
Context: An address validation process is initiated
Applied to: N4 Address Data Present?
Action: The N4 address data segment is empty or not present
Logic Flow:
IF An address validation process is initiated
AND The N4 address data segment is empty or not present
THEN:
• The system should skip all address validation steps and complete the validation process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n4 address data is present for validation.
Trigger Criteria:
Context: N4 address data is present for validation
Applied to: City Name Present?
Action: The city name field is empty or contains only spaces
Logic Flow:
IF N4 address data is present for validation
AND The city name field is empty or contains only spaces
THEN:
• The system should generate a required city name error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when city name is provided in the address data.
Trigger Criteria:
Context: A city name is provided in the address data
Applied to: City Name Length >= 2?
Action: The city name has fewer than 2 characters after removing trailing spaces
Logic Flow:
IF A city name is provided in the address data
AND The city name has fewer than 2 characters after removing trailing spaces
THEN:
• The system should generate a minimum length requirement error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when postal code is provided in the address data.
Trigger Criteria:
Context: A postal code is provided in the address data
Applied to: Postal Code Length >= 3?
Action: The postal code has fewer than 3 characters after removing trailing spaces
Logic Flow:
IF A postal code is provided in the address data
AND The postal code has fewer than 3 characters after removing trailing spaces
THEN:
• The system should generate a postal code minimum length requirement error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address data contains a country code of canada, usa, or mexico.
Trigger Criteria:
Context: Address data contains a country code of Canada, USA, or Mexico
Applied to: State/Province Present?
Action: The state or province code field is empty or contains only spaces
Logic Flow:
IF Address data contains a country code of Canada, USA, or Mexico
AND The state or province code field is empty or contains only spaces
THEN:
• The system should generate a required state/province error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address data contains both state/province code and country code for canada, usa, or mexico.
Trigger Criteria:
Context: Address data contains both state/province code and country code for Canada, USA, or Mexico
Applied to: Valid State-Country Combination?
Action: The state/province code does not exist in the state-country lookup table for the specified country
Logic Flow:
IF Address data contains both state/province code and country code for Canada, USA, or Mexico
AND The state/province code does not exist in the state-country lookup table for the specified country
THEN:
• The system should generate an invalid state/province code error message
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address data contains a state/province code but no country code.
Trigger Criteria:
Context: Address data contains a state/province code but no country code
Applied to: Auto-Assign Country from State
Action: The state/province code is found in the state-country lookup table
Logic Flow:
IF Address data contains a state/province code but no country code
AND The state/province code is found in the state-country lookup table
THEN:
• The system should automatically assign the corresponding country code from the lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address validation is being performed.
Trigger Criteria:
Context: Address validation is being performed
Applied to: Country Code Present?
Action: The country code field is empty or contains only spaces after all processing
Logic Flow:
IF Address validation is being performed
AND The country code field is empty or contains only spaces after all processing
THEN:
• The system should generate a required country code error message
R-GCCCCADD-cbl-02534 (+22)File: GCCCCADD.cblBusiness Rule: Build and validate shipper/consignee records with EDI BOL and Fastway integration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customs manifest processing request is initiated.
Trigger Criteria:
Context: A customs manifest processing request is initiated
Applied to: Initialize Shipper Record
Action: The system begins building shipper records
Logic Flow:
IF A customs manifest processing request is initiated
AND The system begins building shipper records
THEN:
• A new shipper record is initialized with CCN key, record type 55, and sequence 0001
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper record needs to be built for customs processing.
Trigger Criteria:
Context: A shipper record needs to be built for customs processing
Applied to: EDI BOL Shipper Data Available?
Action: The system checks for EDI BOL shipper data availability
Logic Flow:
IF A shipper record needs to be built for customs processing
AND The system checks for EDI BOL shipper data availability
THEN:
• The system identifies if EDI BOL contains shipper name and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol shipper data is available.
Trigger Criteria:
Context: EDI BOL shipper data is available
Applied to: Extract Shipper Name from EDI BOL
Action: The system processes the shipper information
Logic Flow:
IF EDI BOL shipper data is available
AND The system processes the shipper information
THEN:
• Shipper entity ID is set to 'SH', shipper name is extracted from consignor name field, and shipper CHOP code is extracted from EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol shipper data is not available.
Trigger Criteria:
Context: EDI BOL shipper data is not available
Applied to: Use Fastway Shipper Data
Action: The system needs shipper information for customs processing
Logic Flow:
IF EDI BOL shipper data is not available
AND The system needs shipper information for customs processing
THEN:
• Shipper CHOP code and name are extracted from SHIPROOT Fastway data with entity ID set to 'SH'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper name information has been processed.
Trigger Criteria:
Context: Shipper name information has been processed
Applied to: EDI BOL Address Available?
Action: The system checks for address data availability
Logic Flow:
IF Shipper name information has been processed
AND The system checks for address data availability
THEN:
• The system identifies if EDI BOL contains shipper address information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol address data is available.
Trigger Criteria:
Context: EDI BOL address data is available
Applied to: Extract Address from EDI BOL
Action: The system processes address information
Logic Flow:
IF EDI BOL address data is available
AND The system processes address information
THEN:
• Address line 1 and address line 2 are extracted from EDI BOL additional name/address fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol address data is not available.
Trigger Criteria:
Context: EDI BOL address data is not available
Applied to: Use Fastway Address Data
Action: The system needs address information
Logic Flow:
IF EDI BOL address data is not available
AND The system needs address information
THEN:
• Address information is extracted from SHIPROOT shipper address fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address information is missing from both edi bol and fastway sources.
Trigger Criteria:
Context: Address information is missing from both EDI BOL and Fastway sources
Applied to: Set Default 'NA' if Address Missing
Action: The system processes address fields
Logic Flow:
IF Address information is missing from both EDI BOL and Fastway sources
AND The system processes address fields
THEN:
• Address line 1 is set to 'NA' as default value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address information has been processed.
Trigger Criteria:
Context: Address information has been processed
Applied to: EDI BOL City/State Available?
Action: The system checks for city and state data availability
Logic Flow:
IF Address information has been processed
AND The system checks for city and state data availability
THEN:
• The system identifies if EDI BOL contains city, state, postal code, and country information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol city/state data is available.
Trigger Criteria:
Context: EDI BOL city/state data is available
Applied to: Extract City/State/Postal from EDI BOL
Action: The system processes geographic information
Logic Flow:
IF EDI BOL city/state data is available
AND The system processes geographic information
THEN:
• City name, state/province code, postal code, and country code are extracted from EDI BOL geographic fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when edi bol city/state data is not available and fastway address data exists.
Trigger Criteria:
Context: EDI BOL city/state data is not available and Fastway address data exists
Applied to: Parse Fastway Address String
Action: The system processes the Fastway address string
Logic Flow:
IF EDI BOL city/state data is not available and Fastway address data exists
AND The system processes the Fastway address string
THEN:
• City name, state/province code, and postal code are parsed from the Fastway address string format
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state or province code has been extracted from address data.
Trigger Criteria:
Context: State or province code has been extracted from address data
Applied to: Lookup Country Code from State
Action: The system needs to determine the corresponding country code
Logic Flow:
IF State or province code has been extracted from address data
AND The system needs to determine the corresponding country code
THEN:
• Country code is looked up from state-country reference table using the state/province code as key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when geographic information has been processed.
Trigger Criteria:
Context: Geographic information has been processed
Applied to: EDI BOL Contact Info Available?
Action: The system checks for contact data availability
Logic Flow:
IF Geographic information has been processed
AND The system checks for contact data availability
THEN:
• The system identifies if EDI BOL contains contact function code, name, and communication details
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol contact information is available.
Trigger Criteria:
Context: EDI BOL contact information is available
Applied to: Extract Contact Details from EDI BOL
Action: The system processes contact details
Logic Flow:
IF EDI BOL contact information is available
AND The system processes contact details
THEN:
• Contact function code, contact name, communication number qualifier, and communication number are extracted from EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper record has been populated with available data.
Trigger Criteria:
Context: Shipper record has been populated with available data
Applied to: Validate Shipper Record
Action: The system validates the shipper record
Logic Flow:
IF Shipper record has been populated with available data
AND The system validates the shipper record
THEN:
• Required fields are checked for completeness and format compliance
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper record needs validation.
Trigger Criteria:
Context: A shipper record needs validation
Applied to: Check Required Fields
Action: The system checks required fields
Logic Flow:
IF A shipper record needs validation
AND The system checks required fields
THEN:
• Entity ID, name, and address line 1 are verified as non-empty, and error messages are generated for missing required fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address information has been populated.
Trigger Criteria:
Context: Address information has been populated
Applied to: Validate Address Format
Action: The system validates address format
Logic Flow:
IF Address information has been populated
AND The system validates address format
THEN:
• City name minimum length of 2 characters and postal code minimum length of 3 characters are enforced
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when state/province code and country code have been determined.
Trigger Criteria:
Context: State/province code and country code have been determined
Applied to: Validate State/Country Combination
Action: The system validates the state-country combination
Logic Flow:
IF State/province code and country code have been determined
AND The system validates the state-country combination
THEN:
• State/province code is verified as valid for Canada, USA, or Mexico, and error messages are generated for invalid combinations
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper record processing is complete.
Trigger Criteria:
Context: Shipper record processing is complete
Applied to: Initialize Consignee Record
Action: The system begins building consignee records
Logic Flow:
IF Shipper record processing is complete
AND The system begins building consignee records
THEN:
• A new consignee record is initialized with CCN key, record type 55, and sequence 0002
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record needs to be built for customs processing.
Trigger Criteria:
Context: A consignee record needs to be built for customs processing
Applied to: EDI BOL Consignee Data Available?
Action: The system checks for EDI BOL consignee data availability
Logic Flow:
IF A consignee record needs to be built for customs processing
AND The system checks for EDI BOL consignee data availability
THEN:
• The system identifies if EDI BOL contains consignee name and contact information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol consignee data is available.
Trigger Criteria:
Context: EDI BOL consignee data is available
Applied to: Extract Consignee Name from EDI BOL
Action: The system processes the consignee information
Logic Flow:
IF EDI BOL consignee data is available
AND The system processes the consignee information
THEN:
• Consignee entity ID is set to 'CN', consignee name is extracted from shipper name field, and consignee CHOP code is extracted from EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol consignee data is not available.
Trigger Criteria:
Context: EDI BOL consignee data is not available
Applied to: Use Fastway Consignee Data
Action: The system needs consignee information for customs processing
Logic Flow:
IF EDI BOL consignee data is not available
AND The system needs consignee information for customs processing
THEN:
• Consignee CHOP code and name are extracted from SHIPROOT consignee data with entity ID set to 'CN'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper and consignee records have been validated successfully.
Trigger Criteria:
Context: Shipper and consignee records have been validated successfully
Applied to: Store Shipper and Consignee Records
Action: The system completes record building process
Logic Flow:
IF Shipper and consignee records have been validated successfully
AND The system completes record building process
THEN:
• Shipper record is stored at array position 1 and consignee record is stored at array position 2 in the customs manifest data structure
R-GCCCCADD-cbl-02557 (+11)File: GCCCCADD.cblBusiness Rule: Process importer data with corrector EDI backup and restoration logic
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo manifest processing request is initiated.
Trigger Criteria:
Context: A cargo manifest processing request is initiated
Applied to: Check if Corrector EDI with Existing Importer Data
Action: The system checks for existing importer data in temporary variables
Logic Flow:
IF A cargo manifest processing request is initiated
AND The system checks for existing importer data in temporary variables
THEN:
• If temporary importer name contains data, the system identifies this as corrector EDI processing with existing data, otherwise it proceeds as new processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi processing is identified with existing importer data.
Trigger Criteria:
Context: Corrector EDI processing is identified with existing importer data
Applied to: Backup Original Importer Data to Temporary Variables
Action: The system needs to preserve original importer information
Logic Flow:
IF Corrector EDI processing is identified with existing importer data
AND The system needs to preserve original importer information
THEN:
• All importer details including CHOP code, name, qualifier, business number, CSA indicator, address, city, province, postal code, country, and contact information are copied to temporary storage variables
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer data needs to be retrieved from the database.
Trigger Criteria:
Context: Importer data needs to be retrieved from the database
Applied to: Search for Existing Importer Records in Database
Action: The system searches through sequence numbers 3 to 24 for importer entity records
Logic Flow:
IF Importer data needs to be retrieved from the database
AND The system searches through sequence numbers 3 to 24 for importer entity records
THEN:
• The system retrieves customs records with entity ID 'IM' and extracts importer information if found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer record is found in the database with entity id 'im'.
Trigger Criteria:
Context: An importer record is found in the database with entity ID 'IM'
Applied to: Extract and Store Original Importer Information
Action: The system processes the retrieved importer record
Logic Flow:
IF An importer record is found in the database with entity ID 'IM'
AND The system processes the retrieved importer record
THEN:
• All importer attributes including CHOP code, name, business number qualifier, business number, CSA indicator, address lines, city, province, postal code, country, and contact details are extracted and stored in temporary variables, and the importer found flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when original importer data has been backed up.
Trigger Criteria:
Context: Original importer data has been backed up
Applied to: Clear Current Importer Data Fields
Action: The system prepares to process new importer information
Logic Flow:
IF Original importer data has been backed up
AND The system prepares to process new importer information
THEN:
• The current importer, business number, and business number qualifier fields are cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to process importer data from edi sources.
Trigger Criteria:
Context: The system needs to process importer data from EDI sources
Applied to: Process New Importer Data from EDI BOL
Action: EDI BOL importer segment is accessed using the EDI BOL key
Logic Flow:
IF The system needs to process importer data from EDI sources
AND EDI BOL importer segment is accessed using the EDI BOL key
THEN:
• If the EDI segment is found and contains entity ID 'IM', the importer data is processed, otherwise the system prepares to use backup data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid importer data is available from edi bol with entity id 'im'.
Trigger Criteria:
Context: Valid importer data is available from EDI BOL with entity ID 'IM'
Applied to: Create Importer Record from EDI Data
Action: The system creates the importer customs record
Logic Flow:
IF Valid importer data is available from EDI BOL with entity ID 'IM'
AND The system creates the importer customs record
THEN:
• The importer name is stored in customs database, business number qualifier and business number are captured, importer found flag is set, and CSA indicator status is determined based on business number qualifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when no new importer data is available from edi bol and backup data exists in temporary variables.
Trigger Criteria:
Context: No new importer data is available from EDI BOL and backup data exists in temporary variables
Applied to: Restore Original Importer Data from Backup Variables
Action: The system needs to restore original importer information
Logic Flow:
IF No new importer data is available from EDI BOL and backup data exists in temporary variables
AND The system needs to restore original importer information
THEN:
• All importer details including CHOP code, entity ID, name, business qualifiers, CSA indicator, address, city, province, postal code, country, and contact information are restored from temporary variables to the customs record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer data has been restored from backup variables.
Trigger Criteria:
Context: Importer data has been restored from backup variables
Applied to: Set Importer Found Flag
Action: The system completes the importer data restoration process
Logic Flow:
IF Importer data has been restored from backup variables
AND The system completes the importer data restoration process
THEN:
• The importer found flag is set to indicate successful importer data processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer data has been processed from either edi or backup sources.
Trigger Criteria:
Context: Importer data has been processed from either EDI or backup sources
Applied to: Validate Business Number and Qualifier
Action: The system validates the business number and qualifier combination
Logic Flow:
IF Importer data has been processed from either EDI or backup sources
AND The system validates the business number and qualifier combination
THEN:
• If both AU table importer and record 55 importer are found and business number qualifier is 'BN' or spaces, the CSA indicator is turned off
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer data has been validated and processed.
Trigger Criteria:
Context: Importer data has been validated and processed
Applied to: Update CSA Indicator Based on Data Source
Action: The system determines the appropriate CSA indicator status
Logic Flow:
IF Importer data has been validated and processed
AND The system determines the appropriate CSA indicator status
THEN:
• The CSA indicator is set based on business rules considering the data source, business number qualifier, and existing importer records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when all importer data has been processed and validated.
Trigger Criteria:
Context: All importer data has been processed and validated
Applied to: Build Final Importer Database Record
Action: The system creates the final importer database record
Logic Flow:
IF All importer data has been processed and validated
AND The system creates the final importer database record
THEN:
• A complete customs record type 55 is built with all importer information, validated segments, and proper sequence numbering for database storage
R-GCCCCADD-cbl-02569 (+21)File: GCCCCADD.cblBusiness Rule: Execute complex sub
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cargo manifest is being processed with a manifest-to station name.
Trigger Criteria:
Context: A cargo manifest is being processed with a manifest-to station name
Applied to: Is Manifest-To Station IIS-A6?
Action: The system evaluates the manifest-to station name
Logic Flow:
IF A cargo manifest is being processed with a manifest-to station name
AND The system evaluates the manifest-to station name
THEN:
• If manifest-to station equals 'IIS-A6', proceed to destination country check; otherwise proceed directly to consignee facility lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest-to station is 'iis-a6' and destination state/province code is available.
Trigger Criteria:
Context: A manifest-to station is 'IIS-A6' and destination state/province code is available
Applied to: Is Destination US?
Action: The system searches the state-country lookup table for the destination state code
Logic Flow:
IF A manifest-to station is 'IIS-A6' and destination state/province code is available
AND The system searches the state-country lookup table for the destination state code
THEN:
• If the destination country is 'US', skip destination station lookup and proceed to consignee facility lookup; otherwise perform destination station lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest-to station is 'iis-a6' and destination is not us.
Trigger Criteria:
Context: Manifest-to station is 'IIS-A6' and destination is not US
Applied to: Lookup CM Table with Destination Station
Action: The system performs a lookup in CM table using destination station number
Logic Flow:
IF Manifest-to station is 'IIS-A6' and destination is not US
AND The system performs a lookup in CM table using destination station number
THEN:
• Retrieve the corresponding city municipality record for port manifest processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cm table lookup has been performed using destination station number.
Trigger Criteria:
Context: A CM table lookup has been performed using destination station number
Applied to: CM Table Lookup Successful?
Action: The system evaluates the lookup return status
Logic Flow:
IF A CM table lookup has been performed using destination station number
AND The system evaluates the lookup return status
THEN:
• If lookup is successful, extract port manifest upon data; otherwise set sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cm table lookup was successful and returned a valid record.
Trigger Criteria:
Context: CM table lookup was successful and returned a valid record
Applied to: Get Port Manifest Upon from CM Table
Action: The system processes the CM table record
Logic Flow:
IF CM table lookup was successful and returned a valid record
AND The system processes the CM table record
THEN:
• Extract the port manifest upon field for subsequent manifest code table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when port manifest upon value has been extracted from cm table.
Trigger Criteria:
Context: Port manifest upon value has been extracted from CM table
Applied to: Lookup MC Table with Port Manifest Upon
Action: The system performs a lookup in MC table using the port manifest upon value
Logic Flow:
IF Port manifest upon value has been extracted from CM table
AND The system performs a lookup in MC table using the port manifest upon value
THEN:
• Retrieve the corresponding manifest code record for sub-location processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mc table lookup has been performed using port manifest upon value.
Trigger Criteria:
Context: An MC table lookup has been performed using port manifest upon value
Applied to: MC Table Lookup Successful?
Action: The system evaluates the lookup return status
Logic Flow:
IF An MC table lookup has been performed using port manifest upon value
AND The system evaluates the lookup return status
THEN:
• If lookup is successful, extract sub-location code from MC table; otherwise set sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mc table lookup was successful and returned a valid record.
Trigger Criteria:
Context: MC table lookup was successful and returned a valid record
Applied to: Set Sub-location Code from MC Table
Action: The system processes the MC table record
Logic Flow:
IF MC table lookup was successful and returned a valid record
AND The system processes the MC table record
THEN:
• Assign the sub-location code from the MC table record to the cargo manifest
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when either cm table lookup or mc table lookup has failed.
Trigger Criteria:
Context: Either CM table lookup or MC table lookup has failed
Applied to: Set Sub-location Code to Spaces
Action: The system processes the failed lookup result
Logic Flow:
IF Either CM table lookup or MC table lookup has failed
AND The system processes the failed lookup result
THEN:
• Set the sub-location code to spaces to indicate no valid sub-location found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when consignee chop code and destination station number are available.
Trigger Criteria:
Context: Consignee CHOP code and destination station number are available
Applied to: Lookup RF Table with Consignee CHOP and Station
Action: The system performs a lookup in RF table using consignee CHOP and destination station
Logic Flow:
IF Consignee CHOP code and destination station number are available
AND The system performs a lookup in RF table using consignee CHOP and destination station
THEN:
• Retrieve the corresponding rail facility record for bonded status determination
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when rf table lookup has been performed using consignee chop and station.
Trigger Criteria:
Context: An RF table lookup has been performed using consignee CHOP and station
Applied to: RF Table Lookup Successful?
Action: The system evaluates the lookup return status
Logic Flow:
IF An RF table lookup has been performed using consignee CHOP and station
AND The system evaluates the lookup return status
THEN:
• If lookup is successful, extract sub-location code and set customer bonded indicator; otherwise set customer bonded indicator to false
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when rf table lookup was successful and returned a valid record.
Trigger Criteria:
Context: RF table lookup was successful and returned a valid record
Applied to: Set Sub-location Code from RF Table
Action: The system processes the RF table record
Logic Flow:
IF RF table lookup was successful and returned a valid record
AND The system processes the RF table record
THEN:
• Assign the sub-location code from the RF table record to the cargo manifest
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when rf table lookup was successful and returned a valid rail facility record.
Trigger Criteria:
Context: RF table lookup was successful and returned a valid rail facility record
Applied to: Set Customer Bonded Indicator to True
Action: The system processes the successful RF table lookup
Logic Flow:
IF RF table lookup was successful and returned a valid rail facility record
AND The system processes the successful RF table lookup
THEN:
• Set the customer bonded indicator to true to indicate bonded facility status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when rf table lookup failed to return a valid rail facility record.
Trigger Criteria:
Context: RF table lookup failed to return a valid rail facility record
Applied to: Set Customer Bonded Indicator to False
Action: The system processes the failed RF table lookup
Logic Flow:
IF RF table lookup failed to return a valid rail facility record
AND The system processes the failed RF table lookup
THEN:
• Set the customer bonded indicator to false to indicate non-bonded facility status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when sub-location code assignment processes have completed.
Trigger Criteria:
Context: Sub-location code assignment processes have completed
Applied to: Sub-location Code Present?
Action: The system evaluates the current sub-location code value
Logic Flow:
IF Sub-location code assignment processes have completed
AND The system evaluates the current sub-location code value
THEN:
• If sub-location code is not spaces, continue processing without error; otherwise evaluate additional exemption conditions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when sub-location code is spaces and csa indicator status is available.
Trigger Criteria:
Context: Sub-location code is spaces and CSA indicator status is available
Applied to: CSA Indicator On?
Action: The system evaluates the CSA indicator
Logic Flow:
IF Sub-location code is spaces and CSA indicator status is available
AND The system evaluates the CSA indicator
THEN:
• If CSA indicator is on, continue processing without error; otherwise check manifest station equality
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when sub-location code is spaces, csa indicator is off, and manifest station names are available.
Trigger Criteria:
Context: Sub-location code is spaces, CSA indicator is off, and manifest station names are available
Applied to: Manifest From equals Manifest To and Not IIS-A6?
Action: The system compares manifest from station name with manifest to station name
Logic Flow:
IF Sub-location code is spaces, CSA indicator is off, and manifest station names are available
AND The system compares manifest from station name with manifest to station name
THEN:
• If manifest from equals manifest to and manifest to is not 'IIS-A6', continue processing without error; otherwise check destination country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when sub-location code is spaces, previous exemptions don't apply, and destination country information is available.
Trigger Criteria:
Context: Sub-location code is spaces, previous exemptions don't apply, and destination country information is available
Applied to: Destination is US?
Action: The system evaluates the destination country
Logic Flow:
IF Sub-location code is spaces, previous exemptions don't apply, and destination country information is available
AND The system evaluates the destination country
THEN:
• If destination is US, continue processing without error; otherwise check arrival indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when sub-location code is spaces, all previous exemptions don't apply, and arrival indicator is available.
Trigger Criteria:
Context: Sub-location code is spaces, all previous exemptions don't apply, and arrival indicator is available
Applied to: Arrival Indicator is Y?
Action: The system evaluates the arrival indicator
Logic Flow:
IF Sub-location code is spaces, all previous exemptions don't apply, and arrival indicator is available
AND The system evaluates the arrival indicator
THEN:
• If arrival indicator is 'Y', continue processing without error; otherwise set sub-location error flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when either sub-location code is present or one of the exemption conditions is met.
Trigger Criteria:
Context: Either sub-location code is present or one of the exemption conditions is met
Applied to: Continue Processing - No Error
Action: The system completes sub-location validation
Logic Flow:
IF Either sub-location code is present or one of the exemption conditions is met
AND The system completes sub-location validation
THEN:
• Continue with normal cargo manifest processing without generating sub-location errors
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when sub-location code is spaces and none of the exemption conditions are met.
Trigger Criteria:
Context: Sub-location code is spaces and none of the exemption conditions are met
Applied to: Set Sub-location Error Flag
Action: The system completes all sub-location validation checks
Logic Flow:
IF Sub-location code is spaces and none of the exemption conditions are met
AND The system completes all sub-location validation checks
THEN:
• Set the sub-location error flag to indicate validation failure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when sub-location error flag has been set due to validation failure.
Trigger Criteria:
Context: Sub-location error flag has been set due to validation failure
Applied to: Generate Sub-location Error Message
Action: The system processes the error condition
Logic Flow:
IF Sub-location error flag has been set due to validation failure
AND The system processes the error condition
THEN:
• Generate and add error message for invalid destination station sub-location code to the message collection
R-GCCCCADD-cbl-02591 (+25)File: GCCCCADD.cblBusiness Rule: Process haulage rights validation with carrier code lookup and billing assignment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with an ima (intermodal movement) code.
Trigger Criteria:
Context: A shipment with an IMA (Intermodal Movement) code
Applied to: Is IMA Code = 'HM'?
Action: The system checks the IMA code value
Logic Flow:
IF A shipment with an IMA (Intermodal Movement) code
AND The system checks the IMA code value
THEN:
• If IMA code equals 'HM' then process haulage rights, otherwise clear all haulage-related fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment identified as haulage movement (ima code = 'hm').
Trigger Criteria:
Context: A shipment identified as haulage movement (IMA code = 'HM')
Applied to: Haulage Right Carrier Exists?
Action: The system checks if haulage right carrier field contains data
Logic Flow:
IF A shipment identified as haulage movement (IMA code = 'HM')
AND The system checks if haulage right carrier field contains data
THEN:
• If haulage right carrier is blank then set default rejection values, otherwise proceed with carrier lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when haulage movement without a specified haulage rights carrier.
Trigger Criteria:
Context: A haulage movement without a specified haulage rights carrier
Applied to: - SCAC: 'UNKN' - Automated Flag: Blank - Bill Owner: 'UNKN' - Status: REJECT
Action: The system processes the haulage validation
Logic Flow:
IF A haulage movement without a specified haulage rights carrier
AND The system processes the haulage validation
THEN:
• Set haulage rights SCAC to 'UNKN', clear automated flag, set bill owner to 'UNKN', and set status to reject haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage movement with a specified haulage rights carrier code.
Trigger Criteria:
Context: A haulage movement with a specified haulage rights carrier code
Applied to: Lookup Carrier Code in CC Table
Action: The system looks up the carrier code in the CC (Carrier Code) table
Logic Flow:
IF A haulage movement with a specified haulage rights carrier code
AND The system looks up the carrier code in the CC (Carrier Code) table
THEN:
• Retrieve carrier information if found, otherwise prepare for default handling
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when carrier code lookup has been performed in the cc table.
Trigger Criteria:
Context: A carrier code lookup has been performed in the CC table
Applied to: Carrier Code Found?
Action: The system evaluates the lookup result
Logic Flow:
IF A carrier code lookup has been performed in the CC table
AND The system evaluates the lookup result
THEN:
• If carrier code is found then use retrieved SCAC code, otherwise set default rejection values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when successful carrier code lookup in the cc table.
Trigger Criteria:
Context: A successful carrier code lookup in the CC table
Applied to: Set Haulage Rights SCAC from CC Table
Action: The system processes the carrier information
Logic Flow:
IF A successful carrier code lookup in the CC table
AND The system processes the carrier information
THEN:
• Set the haulage rights SCAC to the CCRA code from the CC table lookup result
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when carrier code lookup that failed to find the specified carrier.
Trigger Criteria:
Context: A carrier code lookup that failed to find the specified carrier
Applied to: Set Default Reject Values
Action: The system processes the failed lookup
Logic Flow:
IF A carrier code lookup that failed to find the specified carrier
AND The system processes the failed lookup
THEN:
• Set haulage rights SCAC to 'UNKN', clear automated flag, set reject haulage status, and set bill owner to 'UNKN'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage movement with carrier information and manifest customs code.
Trigger Criteria:
Context: A haulage movement with carrier information and manifest customs code
Applied to: - Port Code from Customs Code - SCAC Code
Action: The system prepares to lookup haulage agreement information
Logic Flow:
IF A haulage movement with carrier information and manifest customs code
AND The system prepares to lookup haulage agreement information
THEN:
• Build SS table key using 'C' prefix plus last 3 digits of Canadian customs code for port, and either haulage rights SCAC or default '6105' for carrier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when constructed ss table lookup key with port code and scac information.
Trigger Criteria:
Context: A constructed SS table lookup key with port code and SCAC information
Applied to: Lookup Haulage Agreement in SS Table
Action: The system queries the SS (Haulage Agreement) table
Logic Flow:
IF A constructed SS table lookup key with port code and SCAC information
AND The system queries the SS (Haulage Agreement) table
THEN:
• Retrieve haulage agreement record if found, otherwise prepare for default processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when haulage agreement table lookup has been performed.
Trigger Criteria:
Context: A haulage agreement table lookup has been performed
Applied to: SS Table Record Found?
Action: The system evaluates the lookup result
Logic Flow:
IF A haulage agreement table lookup has been performed
AND The system evaluates the lookup result
THEN:
• If SS table record is found then process agreement details, otherwise set default rejection values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when successful ss table lookup with haulage agreement information.
Trigger Criteria:
Context: A successful SS table lookup with haulage agreement information
Applied to: Set Automated Carrier Flag from SS Table
Action: The system processes the agreement details
Logic Flow:
IF A successful SS table lookup with haulage agreement information
AND The system processes the agreement details
THEN:
• Set the haulage automated flag to the automated carrier value from the SS table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage movement with automated carrier flag set from ss table.
Trigger Criteria:
Context: A haulage movement with automated carrier flag set from SS table
Applied to: Automated Haulage?
Action: The system checks if haulage is automated
Logic Flow:
IF A haulage movement with automated carrier flag set from SS table
AND The system checks if haulage is automated
THEN:
• If automated haulage then set bill owner to '6105', otherwise continue with current bill owner
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage movement identified as automated.
Trigger Criteria:
Context: A haulage movement identified as automated
Applied to: Set Bill Owner to '6105'
Action: The system processes bill owner assignment
Logic Flow:
IF A haulage movement identified as automated
AND The system processes bill owner assignment
THEN:
• Set the bill owner to '6105' for automated haulage processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage movement with ss table agreement information.
Trigger Criteria:
Context: A haulage movement with SS table agreement information
Applied to: Haulage Agreement = 'Y'?
Action: The system checks the haulage agreement indicator
Logic Flow:
IF A haulage movement with SS table agreement information
AND The system checks the haulage agreement indicator
THEN:
• If haulage agreement equals 'Y' then accept haulage, otherwise reject haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when haulage movement with valid agreement (haulage agreement = 'y').
Trigger Criteria:
Context: A haulage movement with valid agreement (haulage agreement = 'Y')
Applied to: ACCEPT HAULAGE
Action: The system processes the agreement validation
Logic Flow:
IF A haulage movement with valid agreement (haulage agreement = 'Y')
AND The system processes the agreement validation
THEN:
• Set the haulage status to accept haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage movement without valid agreement (haulage agreement ≠ 'y').
Trigger Criteria:
Context: A haulage movement without valid agreement (haulage agreement ≠ 'Y')
Applied to: REJECT HAULAGE
Action: The system processes the agreement validation
Logic Flow:
IF A haulage movement without valid agreement (haulage agreement ≠ 'Y')
AND The system processes the agreement validation
THEN:
• Set the haulage status to reject haulage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when haulage movement with valid ss table record.
Trigger Criteria:
Context: A haulage movement with valid SS table record
Applied to: Set Bill-As SCAC from SS Table 'Haulage Bill Initial'
Action: The system processes billing assignment for haulage
Logic Flow:
IF A haulage movement with valid SS table record
AND The system processes billing assignment for haulage
THEN:
• Set the bill-as SCAC to the haulage bill initial value from the SS table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when non-haulage movement with valid ss table record.
Trigger Criteria:
Context: A non-haulage movement with valid SS table record
Applied to: Set Bill-As SCAC from SS Table 'Line Bill Initial'
Action: The system processes billing assignment for line haul
Logic Flow:
IF A non-haulage movement with valid SS table record
AND The system processes billing assignment for line haul
THEN:
• Set the bill-as SCAC to the line bill initial value from the SS table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage movement where ss table lookup failed.
Trigger Criteria:
Context: A haulage movement where SS table lookup failed
Applied to: - Automated Flag: Blank - Status: REJECT - Bill Owner: 'UNKN' - Bill-As SCAC: 'UNKN'
Action: The system processes the failed lookup
Logic Flow:
IF A haulage movement where SS table lookup failed
AND The system processes the failed lookup
THEN:
• Clear automated flag, set reject haulage status, set bill owner to 'UNKN', and set bill-as SCAC to 'UNKN'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when non-haulage movement where ss table lookup failed.
Trigger Criteria:
Context: A non-haulage movement where SS table lookup failed
Applied to: - Bill Owner: '6105' - Bill-As SCAC: '6105'
Action: The system processes the failed lookup
Logic Flow:
IF A non-haulage movement where SS table lookup failed
AND The system processes the failed lookup
THEN:
• Set bill owner to '6105' and set bill-as SCAC to '6105'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment that is not a haulage movement (ima code ≠ 'hm').
Trigger Criteria:
Context: A shipment that is not a haulage movement (IMA code ≠ 'HM')
Applied to: - Rights SCAC: Blank - Automated Flag: Blank - Reject Indicator: Blank
Action: The system processes the movement type
Logic Flow:
IF A shipment that is not a haulage movement (IMA code ≠ 'HM')
AND The system processes the movement type
THEN:
• Clear haulage rights SCAC, automated flag, and reject haulage indicator
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when processed haulage movement with billing information.
Trigger Criteria:
Context: A processed haulage movement with billing information
Applied to: Called from GCX011 and CCN starts with '6105'?
Action: The system checks if called from GCX011 and CCN key starts with '6105'
Logic Flow:
IF A processed haulage movement with billing information
AND The system checks if called from GCX011 and CCN key starts with '6105'
THEN:
• If both conditions are true then proceed with CCN update validation, otherwise complete processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when haulage movement eligible for ccn update with bill-as scac assigned.
Trigger Criteria:
Context: A haulage movement eligible for CCN update with Bill-As SCAC assigned
Applied to: Bill-As SCAC is Valid and Not Default?
Action: The system validates the Bill-As SCAC value
Logic Flow:
IF A haulage movement eligible for CCN update with Bill-As SCAC assigned
AND The system validates the Bill-As SCAC value
THEN:
• If Bill-As SCAC is not 'UNKN', not blank, not low-values, and not '6105' then proceed with CCN update, otherwise complete processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when haulage movement with valid bill-as scac for ccn update.
Trigger Criteria:
Context: A haulage movement with valid Bill-As SCAC for CCN update
Applied to: Update CCN Key with Bill-As SCAC
Action: The system processes the CCN key update
Logic Flow:
IF A haulage movement with valid Bill-As SCAC for CCN update
AND The system processes the CCN key update
THEN:
• Replace the first 4 characters of CCN key with the Bill-As SCAC code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when ccn key updated with bill-as scac for automated haulage.
Trigger Criteria:
Context: A CCN key updated with Bill-As SCAC for automated haulage
Applied to: Set CCN Key Suffix to 'E' Set Bill Owner to '6105'
Action: The system processes automated haulage CCN formatting
Logic Flow:
IF A CCN key updated with Bill-As SCAC for automated haulage
AND The system processes automated haulage CCN formatting
THEN:
• Set the 5th character of CCN key to 'E' and set bill owner to '6105'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ccn key updated with bill-as scac for non-automated haulage.
Trigger Criteria:
Context: A CCN key updated with Bill-As SCAC for non-automated haulage
Applied to: Set CCN Key Suffix to 'P' Set Bill Owner to Bill-As SCAC
Action: The system processes manual haulage CCN formatting
Logic Flow:
IF A CCN key updated with Bill-As SCAC for non-automated haulage
AND The system processes manual haulage CCN formatting
THEN:
• Set the 5th character of CCN key to 'P' and set bill owner to the Bill-As SCAC value
R-GCCCCADD-cbl-02617 (+30)File: GCCCCADD.cblBusiness Rule: Extract importer information from EDI BOL with validation and backup handling
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to process importer information from edi bol.
Trigger Criteria:
Context: The system needs to process importer information from EDI BOL
Applied to: Start Importer Segment Building
Action: Importer segment building is initiated
Logic Flow:
IF The system needs to process importer information from EDI BOL
AND Importer segment building is initiated
THEN:
• The importer segment data structure is cleared and ready for processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer segment processing is starting.
Trigger Criteria:
Context: Importer segment processing is starting
Applied to: Initialize Importer Segment
Action: The importer segment needs to be initialized
Logic Flow:
IF Importer segment processing is starting
AND The importer segment needs to be initialized
THEN:
• All importer segment fields are cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol key exists for the shipment.
Trigger Criteria:
Context: An EDI BOL key exists for the shipment
Applied to: Get Importer N1 Segment from EDI BOL
Action: The system needs importer information
Logic Flow:
IF An EDI BOL key exists for the shipment
AND The system needs importer information
THEN:
• The system retrieves the N1 segment with entity type 'IM' from the EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when request has been made to retrieve importer data from edi bol.
Trigger Criteria:
Context: A request has been made to retrieve importer data from EDI BOL
Applied to: EDI BOL Importer Data Found?
Action: The system checks the retrieval status
Logic Flow:
IF A request has been made to retrieve importer data from EDI BOL
AND The system checks the retrieval status
THEN:
• The system determines if importer data is available orif corrector EDI deleted the importer
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer data has been retrieved from edi bol.
Trigger Criteria:
Context: Importer data has been retrieved from EDI BOL
Applied to: Extract Entity ID Code
Action: The system processes the N1 segment
Logic Flow:
IF Importer data has been retrieved from EDI BOL
AND The system processes the N1 segment
THEN:
• The entity identification code is extracted and made available for validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity identification code has been extracted from the n1 segment.
Trigger Criteria:
Context: An entity identification code has been extracted from the N1 segment
Applied to: Entity ID = 'IM' Importer?
Action: The system validates the entity type
Logic Flow:
IF An entity identification code has been extracted from the N1 segment
AND The system validates the entity type
THEN:
• The system confirms if the entity ID equals 'IM' indicating an importer
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid importer entity has been found in edi bol.
Trigger Criteria:
Context: A valid importer entity has been found in EDI BOL
Applied to: Backup Importer Data Exists?
Action: The system checks for existing backup data
Logic Flow:
IF A valid importer entity has been found in EDI BOL
AND The system checks for existing backup data
THEN:
• The system determines if backup importer name data is available from earlier processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when backup importer data exists from previous processing.
Trigger Criteria:
Context: Backup importer data exists from previous processing
Applied to: Restore Backup Importer Data
Action: The system needs to populate importer information
Logic Flow:
IF Backup importer data exists from previous processing
AND The system needs to populate importer information
THEN:
• All backup importer details including name, business number, address, and contact information are restored to the current segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid importer data exists in edi bol and no backup data is available.
Trigger Criteria:
Context: Valid importer data exists in EDI BOL and no backup data is available
Applied to: Process New Importer N1 Segment
Action: The system processes the importer information
Logic Flow:
IF Valid importer data exists in EDI BOL and no backup data is available
AND The system processes the importer information
THEN:
• The system creates new importer customs data and processes associated address and contact segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when new importer data is being processed from edi bol.
Trigger Criteria:
Context: New importer data is being processed from EDI BOL
Applied to: Create Importer N1 for Customs
Action: The system creates customs importer information
Logic Flow:
IF New importer data is being processed from EDI BOL
AND The system creates customs importer information
THEN:
• The importer entity ID code is set and importer found flag is marked
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer n1 segment data is available from edi bol.
Trigger Criteria:
Context: Importer N1 segment data is available from EDI BOL
Applied to: Set Importer Name and Business Number
Action: The system populates importer identification
Logic Flow:
IF Importer N1 segment data is available from EDI BOL
AND The system populates importer identification
THEN:
• The importer name is set from N1 name field and business number is set from N1 ID code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer business number has been set.
Trigger Criteria:
Context: Importer business number has been set
Applied to: Set Business Number Qualifier
Action: The system processes business number qualification
Logic Flow:
IF Importer business number has been set
AND The system processes business number qualification
THEN:
• The business number qualifier is set from N1 ID code qualifier field for both customs and segment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer identification information has been processed.
Trigger Criteria:
Context: Importer identification information has been processed
Applied to: Mark Importer Found Flag
Action: The system updates processing status
Logic Flow:
IF Importer identification information has been processed
AND The system updates processing status
THEN:
• The importer found flag is set to indicate successful processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer information has been processed.
Trigger Criteria:
Context: Importer information has been processed
Applied to: Check CSA Indicator Logic
Action: The system evaluates CSA indicator requirements
Logic Flow:
IF Importer information has been processed
AND The system evaluates CSA indicator requirements
THEN:
• The system checks if AU importer data exists, S55 importer data exists, and business number qualifier is valid
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer data has been processed from multiple sources.
Trigger Criteria:
Context: Importer data has been processed from multiple sources
Applied to: AU Importer Found AND S55 Importer Found AND Business Number Qualifier Valid?
Action: The system evaluates CSA indicator status
Logic Flow:
IF Importer data has been processed from multiple sources
AND The system evaluates CSA indicator status
THEN:
• The system verifies if AU importer is found AND S55 importer is found AND business number qualifier is 'BN' or spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when au importer data exists and s55 importer data exists and business number qualifier is 'bn' or spaces.
Trigger Criteria:
Context: AU importer data exists and S55 importer data exists and business number qualifier is 'BN' or spaces
Applied to: Turn Off CSA Indicator
Action: The system processes CSA indicator logic
Logic Flow:
IF AU importer data exists and S55 importer data exists and business number qualifier is 'BN' or spaces
AND The system processes CSA indicator logic
THEN:
• The CSA indicator is turned off
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer n1 segment has been processed.
Trigger Criteria:
Context: Importer N1 segment has been processed
Applied to: Get and Process N3 Address Segment
Action: The system needs importer address information
Logic Flow:
IF Importer N1 segment has been processed
AND The system needs importer address information
THEN:
• The system retrieves the N3 address segment for the importer from EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when request has been made to retrieve importer address data.
Trigger Criteria:
Context: A request has been made to retrieve importer address data
Applied to: N3 Address Data Found?
Action: The system checks the retrieval status
Logic Flow:
IF A request has been made to retrieve importer address data
AND The system checks the retrieval status
THEN:
• The system determines if N3 address segment data is available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when n3 address data has been successfully retrieved from edi bol.
Trigger Criteria:
Context: N3 address data has been successfully retrieved from EDI BOL
Applied to: Set Address Information
Action: The system processes address information
Logic Flow:
IF N3 address data has been successfully retrieved from EDI BOL
AND The system processes address information
THEN:
• Address line 1 is set from EDI data or 'NA' if blank, and address line 2 is set from EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when n3 address data is not available from edi bol.
Trigger Criteria:
Context: N3 address data is not available from EDI BOL
Applied to: Set Default 'NA' Address
Action: The system processes address information
Logic Flow:
IF N3 address data is not available from EDI BOL
AND The system processes address information
THEN:
• Address line 1 is set to 'NA' and N3 data fields are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when importer address information has been processed.
Trigger Criteria:
Context: Importer address information has been processed
Applied to: Get and Process N4 City/State Segment
Action: The system needs importer geographic information
Logic Flow:
IF Importer address information has been processed
AND The system needs importer geographic information
THEN:
• The system retrieves the N4 city/state segment for the importer from EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when request has been made to retrieve importer city/state data.
Trigger Criteria:
Context: A request has been made to retrieve importer city/state data
Applied to: N4 City/State Data Found?
Action: The system checks the retrieval status
Logic Flow:
IF A request has been made to retrieve importer city/state data
AND The system checks the retrieval status
THEN:
• The system determines if N4 city/state segment data is available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n4 city/state data has been successfully retrieved from edi bol.
Trigger Criteria:
Context: N4 city/state data has been successfully retrieved from EDI BOL
Applied to: Set City, State, Postal, Country
Action: The system processes geographic information
Logic Flow:
IF N4 city/state data has been successfully retrieved from EDI BOL
AND The system processes geographic information
THEN:
• City name, state/province code, postal code, and country code are set from EDI data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n4 city/state data is not available from edi bol.
Trigger Criteria:
Context: N4 city/state data is not available from EDI BOL
Applied to: Clear N4 Data Fields
Action: The system processes geographic information
Logic Flow:
IF N4 city/state data is not available from EDI BOL
AND The system processes geographic information
THEN:
• All N4 data fields including city, state, postal code, and country are cleared
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer geographic information has been processed.
Trigger Criteria:
Context: Importer geographic information has been processed
Applied to: Clear Contact Information
Action: The system processes contact information
Logic Flow:
IF Importer geographic information has been processed
AND The system processes contact information
THEN:
• All contact data fields are cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer segment data has been populated.
Trigger Criteria:
Context: Importer segment data has been populated
Applied to: Validate N1 Segment Data
Action: The system validates the segment
Logic Flow:
IF Importer segment data has been populated
AND The system validates the segment
THEN:
• All required fields are validated according to customs requirements and business rules
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when importer segment data has been validated successfully.
Trigger Criteria:
Context: Importer segment data has been validated successfully
Applied to: Insert into Customs Record 55
Action: The system saves the importer information
Logic Flow:
IF Importer segment data has been validated successfully
AND The system saves the importer information
THEN:
• The importer segment is inserted into customs record type 55 with appropriate sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when no importer data was found in the current edi bol.
Trigger Criteria:
Context: No importer data was found in the current EDI BOL
Applied to: Corrector EDI Deleted Importer?
Action: The system checks for data deletion
Logic Flow:
IF No importer data was found in the current EDI BOL
AND The system checks for data deletion
THEN:
• The system determines if the importer was deleted by a corrector EDI transaction
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when corrector edi has deleted importer data.
Trigger Criteria:
Context: Corrector EDI has deleted importer data
Applied to: Backup Data Available?
Action: The system checks for recovery options
Logic Flow:
IF Corrector EDI has deleted importer data
AND The system checks for recovery options
THEN:
• The system determines if backup importer name data is available for restoration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when corrector edi deleted importer data and backup data is available.
Trigger Criteria:
Context: Corrector EDI deleted importer data and backup data is available
Applied to: Restore Backup Importer Data
Action: The system restores importer information
Logic Flow:
IF Corrector EDI deleted importer data and backup data is available
AND The system restores importer information
THEN:
• All backup importer details are restored and CSA indicator logic is applied
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when no importer data is available and no backup data exists.
Trigger Criteria:
Context: No importer data is available and no backup data exists
Applied to: Clear Importer Fields
Action: The system processes importer information
Logic Flow:
IF No importer data is available and no backup data exists
AND The system processes importer information
THEN:
• Importer name is cleared if no S55 importer data exists, and entity ID code is cleared
R-GCCCCADD-cbl-02648 (+4)File: GCCCCADD.cblBusiness Rule: Validate Canadian Customs Code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest from port value is provided from the shipment root.
Trigger Criteria:
Context: A manifest from port value is provided from the shipment root
Applied to: Lookup MC Table with Manifest Port
Action: The system looks up the manifest from port in the MC table using table lookup function
Logic Flow:
IF A manifest from port value is provided from the shipment root
AND The system looks up the manifest from port in the MC table using table lookup function
THEN:
• If the lookup is successful, the system retrieves the MC table segment data, otherwise it clears the MC table data and prepares for error processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when canadian customs code is retrieved from the mc table for the manifest from port.
Trigger Criteria:
Context: A Canadian customs code is retrieved from the MC table for the manifest from port
Applied to: Check if code equals '00000' and generate specific error messages for invalid customs codes
Action: The Canadian customs code equals '00000'
Logic Flow:
IF A Canadian customs code is retrieved from the MC table for the manifest from port
AND The Canadian customs code equals '00000'
THEN:
• The system clears the MC table data, sets the port name as message number, retrieves the invalid Canadian customs error message, and adds it to the validation error list
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest from port value needs to be validated in the mc table.
Trigger Criteria:
Context: A manifest from port value needs to be validated in the MC table
Applied to: Set Invalid Port Error
Action: The MC table lookup fails to find the manifest port
Logic Flow:
IF A manifest from port value needs to be validated in the MC table
AND The MC table lookup fails to find the manifest port
THEN:
• The system clears the MC table data, sets the port name as message number, retrieves the invalid manifest port error message, and adds it to the validation error list
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when canadian customs code is retrieved from the mc table and is not '00000'.
Trigger Criteria:
Context: A Canadian customs code is retrieved from the MC table and is not '00000'
Applied to: Set Valid Canadian Customs Code
Action: The Canadian customs code validation passes
Logic Flow:
IF A Canadian customs code is retrieved from the MC table and is not '00000'
AND The Canadian customs code validation passes
THEN:
• The system assigns the Canadian customs code to the manifest from station code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid mc table data is available for the manifest from port.
Trigger Criteria:
Context: Valid MC table data is available for the manifest from port
Applied to: Continue Processing
Action: The Canadian customs code validation is complete
Logic Flow:
IF Valid MC table data is available for the manifest from port
AND The Canadian customs code validation is complete
THEN:
• The system assigns the US state exit code from the MC table to the US port of exit code field
R-GCCCCADD-cbl-02653 (+2)File: GCCCCADD.cblBusiness Rule: Apply Special CCN Type 9 Processing Rules
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment with ccn type equal to '9' and manifest station lookup has been completed with us exit code and station information available.
Trigger Criteria:
Context: A shipment with CCN type equal to '9' and manifest station lookup has been completed with US exit code and station information available
Applied to: Override Manifest Ports Set From = 'IIS-A6' Set To = 'IIS-A6'
Action: The US exit code is not '00000' OR the manifest from station is not 'IIS-A6' OR the manifest to station is not 'IIS-A6' OR the manifest from station does not equal the manifest to station
Logic Flow:
IF A shipment with CCN type equal to '9' and manifest station lookup has been completed with US exit code and station information available
AND The US exit code is not '00000' OR the manifest from station is not 'IIS-A6' OR the manifest to station is not 'IIS-A6' OR the manifest from station does not equal the manifest to station
THEN:
• Both manifest from station name and manifest to station name must be set to 'IIS-A6' to standardize the manifest routing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with ccn type equal to '9' and manifest station lookup has been completed with standard configuration. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A shipment with CCN type equal to '9' and manifest station lookup has been completed with standard configuration
Applied to: Continue with Normal Processing Use Existing Manifest Codes
Action: The US exit code equals '00000' AND the manifest from station equals 'IIS-A6' AND the manifest to station equals 'IIS-A6' AND the manifest from station equals the manifest to station
Logic Flow:
IF A shipment with CCN type equal to '9' and manifest station lookup has been completed with standard configuration
AND The US exit code equals '00000' AND the manifest from station equals 'IIS-A6' AND the manifest to station equals 'IIS-A6' AND the manifest from station equals the manifest to station
THEN:
• The existing manifest to station code, station number, and call letters must be preserved from the table lookup results
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment is being processed for manifest station configuration.
Trigger Criteria:
Context: A shipment is being processed for manifest station configuration
Applied to: Continue with Normal Processing Use Existing Manifest Codes
Action: The CCN type is not equal to '9'
Logic Flow:
IF A shipment is being processed for manifest station configuration
AND The CCN type is not equal to '9'
THEN:
• The system must continue with normal manifest station processing using the existing manifest codes from table lookups without applying type 9 override rules
R-GCCCCADD-cbl-02656 (+13)File: GCCCCADD.cblBusiness Rule: Execute GCCTBIO Table Lookup Process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when table lookup operation is about to be performed.
Trigger Criteria:
Context: A table lookup operation is about to be performed
Applied to: Initialize Lookup Parameters
Action: The lookup parameters need to be initialized
Logic Flow:
IF A table lookup operation is about to be performed
AND The lookup parameters need to be initialized
THEN:
• All key values, PCB flags, SSA flags, and return flags are cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when table lookup operation is being configured.
Trigger Criteria:
Context: A table lookup operation is being configured
Applied to: Set Function Code to GU
Action: The function code needs to be set
Logic Flow:
IF A table lookup operation is being configured
AND The function code needs to be set
THEN:
• The function code is set to 'GU' for Get Unique operation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when table lookup operation requires specific table and key identification.
Trigger Criteria:
Context: A table lookup operation requires specific table and key identification
Applied to: Set Table ID and Key Values
Action: The table ID and key values are being configured
Logic Flow:
IF A table lookup operation requires specific table and key identification
AND The table ID and key values are being configured
THEN:
• The table ID is set to the target table type and key values are populated with search criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all lookup parameters are properly configured. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All lookup parameters are properly configured
Applied to: Call GCCTBIO Program
Action: The table lookup needs to be executed
Logic Flow:
IF All lookup parameters are properly configured
AND The table lookup needs to be executed
THEN:
• The GCCTBIO program is called with the configured parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when table lookup operation has been executed.
Trigger Criteria:
Context: A table lookup operation has been executed
Applied to: Move Table Data to Working Storage
Action: The lookup returns successful status
Logic Flow:
IF A table lookup operation has been executed
AND The lookup returns successful status
THEN:
• The retrieved table data is moved to the appropriate working storage segment and success flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when table lookup operation has been executed.
Trigger Criteria:
Context: A table lookup operation has been executed
Applied to: Set Failure Flag
Action: The lookup returns unsuccessful status
Logic Flow:
IF A table lookup operation has been executed
AND The lookup returns unsuccessful status
THEN:
• The table segment is cleared to spaces and failure flag is set
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest port code needs validation.
Trigger Criteria:
Context: A manifest port code needs validation
Applied to: Set Table ID and Key Values
Action: The table lookup is configured for MC table
Logic Flow:
IF A manifest port code needs validation
AND The table lookup is configured for MC table
THEN:
• The table ID is set to 'MC' and the port code is used as the search key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when importer information needs to be retrieved.
Trigger Criteria:
Context: Importer information needs to be retrieved
Applied to: Set Table ID and Key Values
Action: The table lookup is configured for AU table
Logic Flow:
IF Importer information needs to be retrieved
AND The table lookup is configured for AU table
THEN:
• The table ID is set to 'AU' and consignee chop and commodity code are used as search keys
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when quantity qualifier needs validation.
Trigger Criteria:
Context: A quantity qualifier needs validation
Applied to: Set Table ID and Key Values
Action: The table lookup is configured for MU table
Logic Flow:
IF A quantity qualifier needs validation
AND The table lookup is configured for MU table
THEN:
• The table ID is set to 'MU' and the quantity qualifier is used as the search key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when destination station information needs to be retrieved.
Trigger Criteria:
Context: Destination station information needs to be retrieved
Applied to: Set Table ID and Key Values
Action: The table lookup is configured for CM table
Logic Flow:
IF Destination station information needs to be retrieved
AND The table lookup is configured for CM table
THEN:
• The table ID is set to 'CM' and the destination station number is used as the search key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when customer bonded status needs to be determined.
Trigger Criteria:
Context: Customer bonded status needs to be determined
Applied to: Set Table ID and Key Values
Action: The table lookup is configured for RF table
Logic Flow:
IF Customer bonded status needs to be determined
AND The table lookup is configured for RF table
THEN:
• The table ID is set to 'RF' and consignee chop and station number are used as search keys
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when haulage rights carrier needs validation.
Trigger Criteria:
Context: A haulage rights carrier needs validation
Applied to: Set Table ID and Key Values
Action: The table lookup is configured for CC table
Logic Flow:
IF A haulage rights carrier needs validation
AND The table lookup is configured for CC table
THEN:
• The table ID is set to 'CC' and the carrier code is used as the search key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when haulage and billing information needs to be retrieved.
Trigger Criteria:
Context: Haulage and billing information needs to be retrieved
Applied to: Set Table ID and Key Values
Action: The table lookup is configured for SS table
Logic Flow:
IF Haulage and billing information needs to be retrieved
AND The table lookup is configured for SS table
THEN:
• The table ID is set to 'SS' and port code with SCAC code are used as search keys
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when error message needs to be retrieved.
Trigger Criteria:
Context: An error message needs to be retrieved
Applied to: Set Table ID and Key Values
Action: The table lookup is configured for MS table
Logic Flow:
IF An error message needs to be retrieved
AND The table lookup is configured for MS table
THEN:
• The table ID is set to 'MS' and the error message number is used as the search key
R-GCCCCADD-cbl-02670 (+10)File: GCCCCADD.cblBusiness Rule: Execute CM Table Lookup for Port Manifest Upon
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo manifest is being processed with a manifest-to station name.
Trigger Criteria:
Context: A cargo manifest is being processed with a manifest-to station name
Applied to: Is Manifest-To Station 'IIS-A6'?
Action: The system checks if the manifest-to station name equals 'IIS-A6'
Logic Flow:
IF A cargo manifest is being processed with a manifest-to station name
AND The system checks if the manifest-to station name equals 'IIS-A6'
THEN:
• The system proceeds to destination country validation if true, otherwise ends the CM table lookup process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when manifest-to station is 'iis-a6' and destination state code is available.
Trigger Criteria:
Context: The manifest-to station is 'IIS-A6' and destination state code is available
Applied to: Is Destination Not US?
Action: The system searches the state-country table to determine if the destination state belongs to US
Logic Flow:
IF The manifest-to station is 'IIS-A6' and destination state code is available
AND The system searches the state-country table to determine if the destination state belongs to US
THEN:
• The system continues with CM table lookup if destination is not US, otherwise ends the process
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when destination is confirmed as non-us and requires cm table lookup.
Trigger Criteria:
Context: The destination is confirmed as non-US and requires CM table lookup
Applied to: Get Destination Station Number from SHIPROOT
Action: The system accesses the SHIPROOT data structure
Logic Flow:
IF The destination is confirmed as non-US and requires CM table lookup
AND The system accesses the SHIPROOT data structure
THEN:
• The destination station number is retrieved and prepared for numeric conversion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when destination station number has been retrieved from shiproot.
Trigger Criteria:
Context: The destination station number has been retrieved from SHIPROOT
Applied to: Convert Station Number to Numeric Format
Action: The system processes the station number for table lookup
Logic Flow:
IF The destination station number has been retrieved from SHIPROOT
AND The system processes the station number for table lookup
THEN:
• The station number is converted to numeric format and stored in the working storage variable
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when destination station number is in proper numeric format.
Trigger Criteria:
Context: The destination station number is in proper numeric format
Applied to: Execute CM Table Lookup with Station Number
Action: The system calls the table lookup service with table ID 'CM' and the station number as the search key
Logic Flow:
IF The destination station number is in proper numeric format
AND The system calls the table lookup service with table ID 'CM' and the station number as the search key
THEN:
• The system attempts to retrieve the corresponding CM table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cm table lookup has been executed with the destination station number.
Trigger Criteria:
Context: A CM table lookup has been executed with the destination station number
Applied to: CM Table Lookup Successful?
Action: The system checks the return status of the table lookup operation
Logic Flow:
IF A CM table lookup has been executed with the destination station number
AND The system checks the return status of the table lookup operation
THEN:
• The system proceeds to extract CM data if successful, otherwise sets sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when cm table lookup was successful and returned valid data.
Trigger Criteria:
Context: The CM table lookup was successful and returned valid data
Applied to: Extract Port Manifest Upon from CM Data
Action: The system accesses the CM table segment data
Logic Flow:
IF The CM table lookup was successful and returned valid data
AND The system accesses the CM table segment data
THEN:
• The port manifest upon value is extracted and prepared for MC table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when port manifest upon value has been extracted from cm table data.
Trigger Criteria:
Context: The port manifest upon value has been extracted from CM table data
Applied to: Execute MC Table Lookup with Port Manifest Upon
Action: The system calls the table lookup service with table ID 'MC' and the port manifest upon value as the search key
Logic Flow:
IF The port manifest upon value has been extracted from CM table data
AND The system calls the table lookup service with table ID 'MC' and the port manifest upon value as the search key
THEN:
• The system attempts to retrieve the corresponding MC table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mc table lookup has been executed with the port manifest upon value.
Trigger Criteria:
Context: An MC table lookup has been executed with the port manifest upon value
Applied to: MC Table Lookup Successful?
Action: The system checks the return status of the MC table lookup operation
Logic Flow:
IF An MC table lookup has been executed with the port manifest upon value
AND The system checks the return status of the MC table lookup operation
THEN:
• The system proceeds to extract sub-location code if successful, otherwise sets sub-location code to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mc table lookup was successful and returned valid sub-location code data.
Trigger Criteria:
Context: The MC table lookup was successful and returned valid sub-location code data
Applied to: Set Sub-location Code to Retrieved Value
Action: The system accesses the MC table segment data
Logic Flow:
IF The MC table lookup was successful and returned valid sub-location code data
AND The system accesses the MC table segment data
THEN:
• The sub-location code is extracted and assigned to the cargo manifest sub-location code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when either the cm table lookup or mc table lookup has failed.
Trigger Criteria:
Context: Either the CM table lookup or MC table lookup has failed
Applied to: Set Sub-location Code to Spaces
Action: The system determines that valid sub-location data cannot be retrieved
Logic Flow:
IF Either the CM table lookup or MC table lookup has failed
AND The system determines that valid sub-location data cannot be retrieved
THEN:
• The sub-location code field is set to spaces to indicate no valid sub-location
R-GCCCCADD-cbl-02681 (+15)File: GCCCCADD.cblBusiness Rule: Process Individual Commodity Segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system is ready to process commodity data from edi segments.
Trigger Criteria:
Context: The system is ready to process commodity data from EDI segments
Applied to: Initialize Commodity Counters
Action: Commodity processing begins
Logic Flow:
IF The system is ready to process commodity data from EDI segments
AND Commodity processing begins
THEN:
• Weight counter is set to zero AND quantity counter is set to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when commodity processing is being initialized. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Commodity processing is being initialized
Applied to: Set CCM Sequence to 1
Action: The system prepares to read commodity segments
Logic Flow:
IF Commodity processing is being initialized
AND The system prepares to read commodity segments
THEN:
• The CCM sequence counter is set to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when ccm sequence number is available and edi bol key is valid.
Trigger Criteria:
Context: A CCM sequence number is available AND EDI BOL key is valid
Applied to: Get EBSBCCM Segment
Action: The system attempts to retrieve EBSBCCM segment data
Logic Flow:
IF A CCM sequence number is available AND EDI BOL key is valid
AND The system attempts to retrieve EBSBCCM segment data
THEN:
• The system calls EBCLGIO to fetch the commodity segment for the current sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when attempt has been made to retrieve ebsbccm segment data.
Trigger Criteria:
Context: An attempt has been made to retrieve EBSBCCM segment data
Applied to: EBSBCCM Segment Found?
Action: The system checks the retrieval status
Logic Flow:
IF An attempt has been made to retrieve EBSBCCM segment data
AND The system checks the retrieval status
THEN:
• IF the segment is found THEN continue processing ELSE use FastWay fallback data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid ebsbccm segment has been retrieved.
Trigger Criteria:
Context: A valid EBSBCCM segment has been retrieved
Applied to: Extract Lading Quantity from L0-LADING-QTY
Action: The system processes the segment data
Logic Flow:
IF A valid EBSBCCM segment has been retrieved
AND The system processes the segment data
THEN:
• The lading quantity is extracted from L0-LADING-QTY field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when lading quantity has been extracted from the current segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Lading quantity has been extracted from the current segment
Applied to: Add to Total Units Counter
Action: The system updates totals
Logic Flow:
IF Lading quantity has been extracted from the current segment
AND The system updates totals
THEN:
• The lading quantity is added to the total units counter (WS-NUM-UNITS-9)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when commodity segment is being processed.
Trigger Criteria:
Context: A commodity segment is being processed
Applied to: First Segment?
Action: The system checks the sequence number
Logic Flow:
IF A commodity segment is being processed
AND The system checks the sequence number
THEN:
• IF CCM sequence equals 1 THEN retrieve weight segment and set quantity qualifier ELSE skip weight processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when this is the first commodity segment being processed.
Trigger Criteria:
Context: This is the first commodity segment being processed
Applied to: Get EBSBCCR Weight Segment
Action: The system needs weight information
Logic Flow:
IF This is the first commodity segment being processed
AND The system needs weight information
THEN:
• The system calls EBCLGIO to retrieve EBSBCCR segment with type 'CR' and dependent key 'CR001'
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when this is the first commodity segment being processed.
Trigger Criteria:
Context: This is the first commodity segment being processed
Applied to: Extract Quantity Qualifier from L0-LADING-QTY-QUAL
Action: The system sets quantity qualifier information
Logic Flow:
IF This is the first commodity segment being processed
AND The system sets quantity qualifier information
THEN:
• The quantity qualifier is extracted from L0-LADING-QTY-QUALand stored in GCCC-LADING-QUANTITY-QUALIFIER
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when attempt has been made to retrieve ebsbccr weight segment.
Trigger Criteria:
Context: An attempt has been made to retrieve EBSBCCR weight segment
Applied to: Weight Segment Found?
Action: The system checks the retrieval status
Logic Flow:
IF An attempt has been made to retrieve EBSBCCR weight segment
AND The system checks the retrieval status
THEN:
• IF weight segment is found THEN extract N7-WEIGHT value ELSE set weight to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid ebsbccr weight segment has been retrieved. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid EBSBCCR weight segment has been retrieved
Applied to: Extract Weight from N7-WEIGHT
Action: The system processes weight data
Logic Flow:
IF A valid EBSBCCR weight segment has been retrieved
AND The system processes weight data
THEN:
• The weight value is extracted from N7-WEIGHT field and stored in WS-CMOD-WEIGHT-9
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when no ebsbccr weight segment was found. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: No EBSBCCR weight segment was found
Applied to: Set Weight to Zero
Action: The system needs to set a weight value
Logic Flow:
IF No EBSBCCR weight segment was found
AND The system needs to set a weight value
THEN:
• The weight counter (WS-CMOD-WEIGHT-9) is set to zero
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when weight data has been processed from edi segment.
Trigger Criteria:
Context: Weight data has been processed from EDI segment
Applied to: Determine Weight Unit from Metric Indicator
Action: The system determines the weight unit
Logic Flow:
IF Weight data has been processed from EDI segment
AND The system determines the weight unit
THEN:
• IF metric indicator is 'M' or 'L' THEN set weight unit to kilograms ELSE set weight unit to pounds
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when current commodity segment has been processed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Current commodity segment has been processed
Applied to: Increment CCM Sequence Counter
Action: The system prepares for the next segment
Logic Flow:
IF Current commodity segment has been processed
AND The system prepares for the next segment
THEN:
• The CCM sequence counter (WS-CCM-CM-SEQ) is incremented by 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when current commodity segment processing is complete.
Trigger Criteria:
Context: Current commodity segment processing is complete
Applied to: More Segments Available?
Action: The system checks for continuation
Logic Flow:
IF Current commodity segment processing is complete
AND The system checks for continuation
THEN:
• IF CCM sequence is less than or equal to 98 AND segments are still being found THEN continue processing ELSE complete commodity processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when no edi commodity segments are found or initial edi segment retrieval fails.
Trigger Criteria:
Context: No EDI commodity segments are found OR initial EDI segment retrieval fails
Applied to: No EDI Data - Use Fastway Fallback
Action: The system needs commodity data
Logic Flow:
IF No EDI commodity segments are found OR initial EDI segment retrieval fails
AND The system needs commodity data
THEN:
• The system retrieves commodity information from FastWay SHIPCOMM segments using GU and GN functions
R-GCCCCADD-cbl-02697 (+3)File: GCCCCADD.cblBusiness Rule: Handle Metric Unit Conversion Logic
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment root record with a metric indicator field.
Trigger Criteria:
Context: A shipment root record with a metric indicator field
Applied to: Check Metric Indicator in SHIPROOT
Action: The metric indicator is 'M' (Metric) or 'L' (Liters)
Logic Flow:
IF A shipment root record with a metric indicator field
AND The metric indicator is 'M' (Metric) or 'L' (Liters)
THEN:
• The system sets the weight unit to KG (kilograms)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment root record with a metric indicator field.
Trigger Criteria:
Context: A shipment root record with a metric indicator field
Applied to: Set Weight Unit to LB - Pounds
Action: The metric indicator is not 'M' (Metric) or 'L' (Liters)
Logic Flow:
IF A shipment root record with a metric indicator field
AND The metric indicator is not 'M' (Metric) or 'L' (Liters)
THEN:
• The system sets the weight unit to LB (pounds)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment with metric indicator set to 'm' or 'l' and commodity weight data available.
Trigger Criteria:
Context: A shipment with metric indicator set to 'M' or 'L' and commodity weight data available
Applied to: Apply Weight Unit to Commodity Weight
Action: Processing commodity weight from EDI BOL or shipment commodity data
Logic Flow:
IF A shipment with metric indicator set to 'M' or 'L' and commodity weight data available
AND Processing commodity weight from EDI BOL or shipment commodity data
THEN:
• The system adds the metric commodity weight to the total weight calculation and sets the weight unit flag to kilograms
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with metric indicator not set to 'm' or 'l' and commodity weight data available.
Trigger Criteria:
Context: A shipment with metric indicator not set to 'M' or 'L' and commodity weight data available
Applied to: Apply Weight Unit to Commodity Weight
Action: Processing commodity weight from EDI BOL or shipment commodity data
Logic Flow:
IF A shipment with metric indicator not set to 'M' or 'L' and commodity weight data available
AND Processing commodity weight from EDI BOL or shipment commodity data
THEN:
• The system adds the standard commodity weight to the total weight calculation and sets the weight unit flag to pounds
R-GCCCCADD-cbl-02701 (+12)File: GCCCCADD.cblBusiness Rule: Process Special Handling Codes VA/EV/VS
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment has special handling codes defined in positions 1 through 7.
Trigger Criteria:
Context: A shipment has special handling codes defined in positions 1 through 7
Applied to: Start Special Handling Code Processing
Action: The system processes special handling codes
Logic Flow:
IF A shipment has special handling codes defined in positions 1 through 7
AND The system processes special handling codes
THEN:
• The system should initialize processing counter to 1 and begin iterating through available special handling code positions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system is processing special handling codes with a counter variable.
Trigger Criteria:
Context: The system is processing special handling codes with a counter variable
Applied to: Counter <= 7?
Action: The counter value is checked against the maximum limit
Logic Flow:
IF The system is processing special handling codes with a counter variable
AND The counter value is checked against the maximum limit
THEN:
• Processing should continue if counter is less than or equal to 7, otherwise processing should end
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when counter is pointing to a valid position within the special handling codes array.
Trigger Criteria:
Context: The counter is pointing to a valid position within the special handling codes array
Applied to: Get Special Handling Code at Counter Position
Action: The system needs to examine a special handling code
Logic Flow:
IF The counter is pointing to a valid position within the special handling codes array
AND The system needs to examine a special handling code
THEN:
• The system should extract the special handling code from the current counter position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when special handling code has been extracted from the current position.
Trigger Criteria:
Context: A special handling code has been extracted from the current position
Applied to: Code = 'VA' or 'EV' or 'VS'?
Action: The system evaluates the code type
Logic Flow:
IF A special handling code has been extracted from the current position
AND The system evaluates the code type
THEN:
• The system should identify if the code is VA (Value Added), EV (Equipment Value), or VS (Value Service) and proceed with description processing, otherwise increment counter and continue
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling code has been identified as va, ev, or vs.
Trigger Criteria:
Context: A special handling code has been identified as VA, EV, or VS
Applied to: Extract Special Handling Code
Action: The system processes the value-added service code
Logic Flow:
IF A special handling code has been identified as VA, EV, or VS
AND The system processes the value-added service code
THEN:
• The system should move the special handling code to the description work code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when value-added service code has been extracted.
Trigger Criteria:
Context: A value-added service code has been extracted
Applied to: Extract Special Handling Instructions
Action: The system processes the associated instructions
Logic Flow:
IF A value-added service code has been extracted
AND The system processes the associated instructions
THEN:
• The system should move the special handling instructions to the description work description field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when value-added service code and instructions have been extracted.
Trigger Criteria:
Context: Value-added service code and instructions have been extracted
Applied to: First Description Slot Empty?
Action: The system needs to store the description information
Logic Flow:
IF Value-added service code and instructions have been extracted
AND The system needs to store the description information
THEN:
• The system should check if the first special handling description slot is empty and available for use
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when first description slot is empty and value-added service information is ready.
Trigger Criteria:
Context: The first description slot is empty and value-added service information is ready
Applied to: Store in First Description Slot
Action: The system stores the description information
Logic Flow:
IF The first description slot is empty and value-added service information is ready
AND The system stores the description information
THEN:
• The system should move the description work information to the first special handling description slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when first description slot is not empty and value-added service information needs storage.
Trigger Criteria:
Context: The first description slot is not empty and value-added service information needs storage
Applied to: Second Description Slot Empty?
Action: The system checks for alternative storage location
Logic Flow:
IF The first description slot is not empty and value-added service information needs storage
AND The system checks for alternative storage location
THEN:
• The system should check if the second special handling description slot is empty and available for use
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when first description slot is occupied and the second slot is empty.
Trigger Criteria:
Context: The first description slot is occupied and the second slot is empty
Applied to: Store in Second Description Slot
Action: The system stores the description information
Logic Flow:
IF The first description slot is occupied and the second slot is empty
AND The system stores the description information
THEN:
• The system should move the description work information to the second special handling description slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when both first and second description slots are occupied.
Trigger Criteria:
Context: Both first and second description slots are occupied
Applied to: Store in Third Description Slot
Action: The system needs to store value-added service information
Logic Flow:
IF Both first and second description slots are occupied
AND The system needs to store value-added service information
THEN:
• The system should move the description work information to the third special handling description slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when current special handling code position has been processed.
Trigger Criteria:
Context: Current special handling code position has been processed
Applied to: Increment Counter
Action: The system needs to continue processing remaining positions
Logic Flow:
IF Current special handling code position has been processed
AND The system needs to continue processing remaining positions
THEN:
• The system should increment the counter by 1 to move to the next special handling code position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all special handling code positions have been examined or counter exceeds maximum limit.
Trigger Criteria:
Context: All special handling code positions have been examined or counter exceeds maximum limit
Applied to: End Special Handling Processing
Action: The processing loop condition is no longer met
Logic Flow:
IF All special handling code positions have been examined or counter exceeds maximum limit
AND The processing loop condition is no longer met
THEN:
• The system should exit the special handling code processing routine
R-GCCCCADD-cbl-02714 (+6)File: GCCCCADD.cblBusiness Rule: Validate UN Number Format and Extract Hazmat Data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when hazardous material segment contains an identification code in lh1-un-na-id-cd field.
Trigger Criteria:
Context: A hazardous material segment contains an identification code in LH1-UN-NA-ID-CD field
Applied to: Check UN Prefix Format
Action: The system checks the first two characters of the identification code
Logic Flow:
IF A hazardous material segment contains an identification code in LH1-UN-NA-ID-CD field
AND The system checks the first two characters of the identification code
THEN:
• The system should verify that the prefix equals 'UN' to confirm valid UN number format
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when hazardous material identification code has been validated with 'un' prefix.
Trigger Criteria:
Context: A hazardous material identification code has been validated with 'UN' prefix
Applied to: Extract UN Number
Action: The system processes the LH1-UN-NA-ID-CD field
Logic Flow:
IF A hazardous material identification code has been validated with 'UN' prefix
AND The system processes the LH1-UN-NA-ID-CD field
THEN:
• The system should extract the complete UN number and store it in the commodity UN number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid un number has been extracted from hazardous material data.
Trigger Criteria:
Context: A valid UN number has been extracted from hazardous material data
Applied to: Set Hazmat Found Flag
Action: The system confirms the UN number format and extraction
Logic Flow:
IF A valid UN number has been extracted from hazardous material data
AND The system confirms the UN number format and extraction
THEN:
• The system should set the hazmat found flag to true to indicate successful hazmat processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid un number has been identified and hazmat sequence is established.
Trigger Criteria:
Context: A valid UN number has been identified and hazmat sequence is established
Applied to: Get Proper Shipping Name
Action: The system accesses the LH3 hazmat information segment
Logic Flow:
IF A valid UN number has been identified and hazmat sequence is established
AND The system accesses the LH3 hazmat information segment
THEN:
• The system should retrieve the proper shipping name from LH3-PROPER-SHIP-NAME field if available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when proper shipping name has been successfully retrieved from lh3 segment.
Trigger Criteria:
Context: The proper shipping name has been successfully retrieved from LH3 segment
Applied to: Store Proper Shipping Name
Action: The system processes the hazmat description data
Logic Flow:
IF The proper shipping name has been successfully retrieved from LH3 segment
AND The system processes the hazmat description data
THEN:
• The system should store the proper shipping name in the commodity description danger field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when current hazmat sequence has been processed and no valid un number was found.
Trigger Criteria:
Context: The current hazmat sequence has been processed and no valid UN number was found
Applied to: Move to Next Hazmat Sequence
Action: The system needs to continue searching for hazardous materials
Logic Flow:
IF The current hazmat sequence has been processed and no valid UN number was found
AND The system needs to continue searching for hazardous materials
THEN:
• The system should increment the hazmat sequence counter and continue processing if within the maximum limit of 98 sequences
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when system is processing hazardous material sequences and current sequence is complete.
Trigger Criteria:
Context: The system is processing hazardous material sequences and current sequence is complete
Applied to: More Sequences to Check?
Action: The system evaluates continuation criteria
Logic Flow:
IF The system is processing hazardous material sequences and current sequence is complete
AND The system evaluates continuation criteria
THEN:
• The system should continue processing if sequence number is 98 or less AND hazmat has not been found, otherwise terminate hazmat processing
R-GCCCCADD-cbl-02721 (+10)File: GCCCCADD.cblBusiness Rule: Process Transportation Entity Data Lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when transportation entity lookup process is starting.
Trigger Criteria:
Context: A transportation entity lookup process is starting
Applied to: Initialize Search Parameters
Action: The search initialization is performed
Logic Flow:
IF A transportation entity lookup process is starting
AND The search initialization is performed
THEN:
• The entity not found flag is set to true and the transportation segment found flag is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when transportation entity search parameters are initialized.
Trigger Criteria:
Context: Transportation entity search parameters are initialized
Applied to: Set Search Sequence to 1
Action: The search sequence is being set up
Logic Flow:
IF Transportation entity search parameters are initialized
AND The search sequence is being set up
THEN:
• The search sequence counter is set to 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when search sequence number is established and edi bol key is available.
Trigger Criteria:
Context: A search sequence number is established and EDI BOL key is available
Applied to: Search Transportation Segments
Action: Transportation segment lookup is performed using segment type 'TN' and the current sequence
Logic Flow:
IF A search sequence number is established and EDI BOL key is available
AND Transportation segment lookup is performed using segment type 'TN' and the current sequence
THEN:
• The system attempts to retrieve the transportation segment data from EBSNRTD
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when transportation segment lookup has been attempted.
Trigger Criteria:
Context: A transportation segment lookup has been attempted
Applied to: Transportation Segment Found?
Action: The system checks the lookup result status
Logic Flow:
IF A transportation segment lookup has been attempted
AND The system checks the lookup result status
THEN:
• If the status code is spaces then the segment is found, otherwise the segment is not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when transportation segment has been successfully retrieved.
Trigger Criteria:
Context: A transportation segment has been successfully retrieved
Applied to: Check D5-ORG-ID Match
Action: The organization ID needs to be extracted
Logic Flow:
IF A transportation segment has been successfully retrieved
AND The organization ID needs to be extracted
THEN:
• The D5-ORG-ID field is extracted from the transportation segment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when organization id has been extracted from the transportation segment and a target entity id is specified.
Trigger Criteria:
Context: An organization ID has been extracted from the transportation segment and a target entity ID is specified
Applied to:D5-ORG-ID Matches Target?
Action: The comparison is performed
Logic Flow:
IF An organization ID has been extracted from the transportation segment and a target entity ID is specified
AND The comparison is performed
THEN:
• If the D5-ORG-ID equals the target entity ID then a match is found, otherwise continue searching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when organization id from a transportation segment matches the target entity id.
Trigger Criteria:
Context: The organization ID from a transportation segment matches the target entity ID
Applied to: Mark Entity Found
Action: The entity found status is updated
Logic Flow:
IF The organization ID from a transportation segment matches the target entity ID
AND The entity found status is updated
THEN:
• The entity found flag is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when current transportation segment does not contain the target entity id.
Trigger Criteria:
Context: The current transportation segment does not contain the target entity ID
Applied to: Increment Search Sequence
Action: The search needs to continue to the next segment
Logic Flow:
IF The current transportation segment does not contain the target entity ID
AND The search needs to continue to the next segment
THEN:
• The search sequence counter is incremented by 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when search sequence has been incremented and the target entity has not been found.
Trigger Criteria:
Context: The search sequence has been incremented and the target entity has not been found
Applied to: More Segments to Search?
Action: The system checks for continuation of the search loop
Logic Flow:
IF The search sequence has been incremented and the target entity has not been found
AND The system checks for continuation of the search loop
THEN:
• If the transportation segment found flag is true then continue searching, otherwise stop the search
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when transportation segment with matching organization id has been found.
Trigger Criteria:
Context: A transportation segment with matching organization ID has been found
Applied to: Entity Located Successfully
Action: The search process completes successfully
Logic Flow:
IF A transportation segment with matching organization ID has been found
AND The search process completes successfully
THEN:
• The entity found flag remains true and the search sequence is decremented by 1 to reflect the correct position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all available transportation segments have been searched or no segments were found.
Trigger Criteria:
Context: All available transportation segments have been searched or no segments were found
Applied to: Entity Not Found
Action: The target entity ID was not matched in any segment
Logic Flow:
IF All available transportation segments have been searched or no segments were found
AND The target entity ID was not matched in any segment
Business Justification: Defines the strict business conditions required to proceed when system needs to process mcoa entity segments.
Trigger Criteria:
Context: The system needs to process MCOA entity segments
Applied to: Start MCOA Entity Processing
Action: MCOA entity processing begins
Logic Flow:
IF The system needs to process MCOA entity segments
AND MCOA entity processing begins
THEN:
• The MCOA sequence counter is initialized and processing flags are reset
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mcoa sequence number is available.
Trigger Criteria:
Context: A MCOA sequence number is available
Applied to: Get MCOA Segment by Sequence
Action: The system attempts to retrieve the MCOA segment
Logic Flow:
IF A MCOA sequence number is available
AND The system attempts to retrieve the MCOA segment
THEN:
• The MCOA segment data is retrieved from EBSMCOA using the sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when attempt to retrieve mcoa segment has been made.
Trigger Criteria:
Context: An attempt to retrieve MCOA segment has been made
Applied to: MCOA Segment Found?
Action: The system checks the retrieval status
Logic Flow:
IF An attempt to retrieve MCOA segment has been made
AND The system checks the retrieval status
THEN:
• If no error status is returned and segment type is 'OT', the segment is considered found, otherwise processing stops
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid mcoa segment has been found.
Trigger Criteria:
Context: A valid MCOA segment has been found
Applied to: Entity Type is PF or SS?
Action: The system checks the organization ID in the segment
Logic Flow:
IF A valid MCOA segment has been found
AND The system checks the organization ID in the segment
THEN:
• If the organization ID is 'PF' or 'SS', the entity is processed, otherwise it is skipped
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mcoa segment with entity type pf or ss is found.
Trigger Criteria:
Context: A MCOA segment with entity type PF or SS is found
Applied to: Extract Entity Information
Action: The system extracts entity information
Logic Flow:
IF A MCOA segment with entity type PF or SS is found
AND The system extracts entity information
THEN:
• The organization ID is set as entity ID code, organization name is set as entity name, ID code qualifier and ID code are extracted from the segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity information has been extracted from mcoa segment.
Trigger Criteria:
Context: Entity information has been extracted from MCOA segment
Applied to: Get MCOA Address Segment
Action: The system attempts to retrieve address information
Logic Flow:
IF Entity information has been extracted from MCOA segment
AND The system attempts to retrieve address information
THEN:
• The MCOA ON segment is retrieved using the same sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when attempt to retrieve mcoa address segment has been made.
Trigger Criteria:
Context: An attempt to retrieve MCOA address segment has been made
Applied to: Address Segment Found?
Action: The system checks if address data is available
Logic Flow:
IF An attempt to retrieve MCOA address segment has been made
AND The system checks if address data is available
THEN:
• If address segment is found, extract address lines 1 and 2, otherwise set address line 1 to 'NA' and clear address line 2
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when address information has been processed.
Trigger Criteria:
Context: Address information has been processed
Applied to: Get MCOA City/State Segment
Action: The system attempts to retrieve city/state information
Logic Flow:
IF Address information has been processed
AND The system attempts to retrieve city/state information
THEN:
• The MCOA OC segment is retrieved using the same sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when attempt to retrieve mcoa city/state segment has been made.
Trigger Criteria:
Context: An attempt to retrieve MCOA city/state segment has been made
Applied to: City/State Segment Found?
Action: The system checks if city/state data is available
Logic Flow:
IF An attempt to retrieve MCOA city/state segment has been made
AND The system checks if city/state data is available
THEN:
• If city/state segment is found, extract city name, state/province code, postal code and country code, otherwise clear all city/state information fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all mcoa entity information has been extracted and processed.
Trigger Criteria:
Context: All MCOA entity information has been extracted and processed
Applied to: Validate Entity Segment
Action: The system validates the entity segment
Logic Flow:
IF All MCOA entity information has been extracted and processed
AND The system validates the entity segment
THEN:
• Standard entity validation rules are applied to ensure data integrity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when valid mcoa entity segment has been created and validated.
Trigger Criteria:
Context: A valid MCOA entity segment has been created and validated
Applied to: Insert Entity Record
Action: The system inserts the entity record
Logic Flow:
IF A valid MCOA entity segment has been created and validated
AND The system inserts the entity record
THEN:
• The entity record is inserted into the GCSCCS55 array with the appropriate sequence number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mcoa entity has been processed.
Trigger Criteria:
Context: An MCOA entity has been processed
Applied to: More MCOA Segments?
Action: The system checks for more segments
Logic Flow:
IF An MCOA entity has been processed
AND The system checks for more segments
THEN:
• The sequence counter is incremented and processing continues if more segments are available, otherwise MCOA processing ends
Business Justification: Establishes the required business protocol to be followed when shipment has shipper chop code, consignee chop code, origin station number, destination road number, and commodity code available.
Trigger Criteria:
Context: A shipment has shipper CHOP code, consignee CHOP code, origin station number, destination road number, and commodity code available
Applied to: Specific Shipper CHOP + Consignee CHOP + Origin Station + Destination Road + Commodity Code
Action: The system performs the first crossing table search with all specific criteria
Logic Flow:
IF A shipment has shipper CHOP code, consignee CHOP code, origin station number, destination road number, and commodity code available
AND The system performs the first crossing table search with all specific criteria
THEN:
• The system searches the crossing table using shipper CHOP, consignee CHOP, origin station, destination road prefixed with 'ROAD', and commodity code to find matching broker information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when primary crossing table search with specific criteria returned no results.
Trigger Criteria:
Context: The primary crossing table search with specific criteria returned no results
Applied to: Wildcard Shipper CHOP + Consignee CHOP + Wildcard Origin + Destination Road + Commodity Code
Action: The system performs the second crossing table search with partial wildcards
Logic Flow:
IF The primary crossing table search with specific criteria returned no results
AND The system performs the second crossing table search with partial wildcards
THEN:
• The system searches using wildcard for shipper CHOP, specific consignee CHOP, wildcard for origin station, destination road prefixed with 'ROAD', and specific commodity code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when both primary and secondary crossing table searches returned no results.
Trigger Criteria:
Context: Both primary and secondary crossing table searches returned no results
Applied to: Wildcard Shipper CHOP + Wildcard Origin + Wildcard Commodity Code
Action: The system performs the third crossing table search with maximum wildcards
Logic Flow:
IF Both primary and secondary crossing table searches returned no results
AND The system performs the third crossing table search with maximum wildcards
THEN:
• The system searches using wildcard for shipper CHOP, wildcard for origin station, and wildcard for commodity code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when crossing table search has been executed with specific search criteria.
Trigger Criteria:
Context: A crossing table search has been executed with specific search criteria
Applied to: Data Found?
Action: The system evaluates the search results
Logic Flow:
IF A crossing table search has been executed with specific search criteria
AND The system evaluates the search results
THEN:
• If broker data is found, the system proceeds to return results; if no data is found, the system proceeds to the next search iteration or concludes with no broker data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when one of the crossing table searches has successfully found matching broker data.
Trigger Criteria:
Context: One of the crossing table searches has successfully found matching broker data
Applied to: Return Search Results
Action: The system processes the successful search results
Logic Flow:
IF One of the crossing table searches has successfully found matching broker data
AND The system processes the successful search results
THEN:
• The system returns the found broker information including broker name and any associated manifest routing details
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all three crossing table searches (specific, partial wildcard, and maximum wildcard) have been executed.
Trigger Criteria:
Context: All three crossing table searches (specific, partial wildcard, and maximum wildcard) have been executed
Applied to: No Broker Data Found
Action: None of the searches return matching broker data
Logic Flow:
IF All three crossing table searches (specific, partial wildcard, and maximum wildcard) have been executed
AND None of the searches return matching broker data
THEN:
• The system concludes that no broker data is available for the given shipment criteria
R-GCCCCADD-cbl-02750 (+3)File: GCCCCADD.cblBusiness Rule: Validate Entity ID Values Against Allowed Types
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when customs record segment is being processed for entity information.
Trigger Criteria:
Context: A customs record segment is being processed for entity information
Applied to: Entity ID Present?
Action: The entity ID code field is evaluated for presence
Logic Flow:
IF A customs record segment is being processed for entity information
AND The entity ID code field is evaluated for presence
THEN:
• If entity ID code is spaces, skip entity validation and complete processing, otherwise proceed with entity validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record with a sequence number is being processed.
Trigger Criteria:
Context: An entity record with a sequence number is being processed
Applied to: Sequence > 2?
Action: The sequence number is evaluated against the threshold of 2
Logic Flow:
IF An entity record with a sequence number is being processed
AND The sequence number is evaluated against the threshold of 2
THEN:
• If sequence number is 2 or less, skip entity type validation, otherwise apply entity type validation rules
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity record with sequence number greater than 2 has an entity id code.
Trigger Criteria:
Context: An entity record with sequence number greater than 2 has an entity ID code
Applied to: Valid Entity ID Code?
Action: The entity ID code is checked against valid entity type values and restricted entity types
Logic Flow:
IF An entity record with sequence number greater than 2 has an entity ID code
AND The entity ID code is checked against valid entity type values and restricted entity types
THEN:
• If entity ID code is not in valid values list OR is SH (shipper) OR is CN (consignee) OR is CB (customs broker), generate invalid entity ID error, otherwise accept the entity ID
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity id code has failed validation due to invalid value or restricted type usage.
Trigger Criteria:
Context: An entity ID code has failed validation due to invalid value or restricted type usage
Applied to: Generate Invalid Entity ID Error
Action: The system needs to report the validation failure
Logic Flow:
IF An entity ID code has failed validation due to invalid value or restricted type usage
AND The system needs to report the validation failure
THEN:
• Generate error message 'Invalid Entity ID Value' and add to message collection for the record
Business Justification: Dictates the expected operational logic and validation steps when shipper record is being validated and the record sequence is 0001 and all required fields (name, address, city, state, postal code, country) are empty.
Trigger Criteria:
Context: A shipper record is being validated AND the record sequence is 0001 AND all required fields (name, address, city, state, postal code, country) are empty
Applied to: Generate Shipper Required Field Errors
Action: The system performs N1 segment validation
Logic Flow:
IF A shipper record is being validated AND the record sequence is 0001 AND all required fields (name, address, city, state, postal code, country) are empty
AND The system performs N1 segment validation
THEN:
• The system generates error messages for shipper name required, address required, city required, state required, postal code required, and country required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when consignee record is being validated and the record sequence is 0002 and all required fields (name, address, city, state, postal code, country) are empty.
Trigger Criteria:
Context: A consignee record is being validated AND the record sequence is 0002 AND all required fields (name, address, city, state, postal code, country) are empty
Applied to: Generate Consignee Required Field Errors
Action: The system performs N1 segment validation
Logic Flow:
IF A consignee record is being validated AND the record sequence is 0002 AND all required fields (name, address, city, state, postal code, country) are empty
AND The system performs N1 segment validation
THEN:
• The system generates error messages for consignee name required, address required, city required, state required, postal code required, and country required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment is being validated and the entity id code is present and the name field is empty.
Trigger Criteria:
Context: An N1 segment is being validated AND the entity ID code is present AND the name field is empty
Applied to: Add N102 Name Required Error Message
Action: The system checks field consistency
Logic Flow:
IF An N1 segment is being validated AND the entity ID code is present AND the name field is empty
AND The system checks field consistency
THEN:
• The system generates an error message indicating that the name field is required when entity ID is specified
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n1 segment is being validated and address information is present (n3 or n4 or per data is not empty) and the entity id code is empty.
Trigger Criteria:
Context: An N1 segment is being validated AND address information is present (N3 or N4 or PER data is not empty) AND the entity ID code is empty
Applied to: Add N101 Entity ID Required Error
Action: The system checks field dependencies
Logic Flow:
IF An N1 segment is being validated AND address information is present (N3 or N4 or PER data is not empty) AND the entity ID code is empty
AND The system checks field dependencies
THEN:
• The system generates an error message indicating that entity ID is required when address information is provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n1 segment is being validated and address information is present (n3 or n4 or per data is not empty) and the name field is empty.
Trigger Criteria:
Context: An N1 segment is being validated AND address information is present (N3 or N4 or PER data is not empty) AND the name field is empty
Applied to: Add N102 Name Required Error
Action: The system checks field dependencies
Logic Flow:
IF An N1 segment is being validated AND address information is present (N3 or N4 or PER data is not empty) AND the name field is empty
AND The system checks field dependencies
THEN:
• The system generates an error message indicating that name is required when address information is provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n1 segment has entity id and name populated and the address line 1 field is empty.
Trigger Criteria:
Context: An N1 segment has entity ID and name populated AND the address line 1 field is empty
Applied to: Validate N3 Address Fields
Action: The system validates address requirements
Logic Flow:
IF An N1 segment has entity ID and name populated AND the address line 1 field is empty
AND The system validates address requirements
THEN:
• The system generates an error message indicating that address is required for the identified entity
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when n4 segment contains geographic data and the city name field is empty.
Trigger Criteria:
Context: An N4 segment contains geographic data AND the city name field is empty
Applied to: Validate N4 Geographic Fields
Action: The system validates geographic information
Logic Flow:
IF An N4 segment contains geographic data AND the city name field is empty
AND The system validates geographic information
THEN:
• The system generates an error message indicating that city name is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when n4 segment contains a city name and the city name length is less than 2 characters.
Trigger Criteria:
Context: An N4 segment contains a city name AND the city name length is less than 2 characters
Applied to: Validate N4 Geographic Fields
Action: The system validates city name format
Logic Flow:
IF An N4 segment contains a city name AND the city name length is less than 2 characters
AND The system validates city name format
THEN:
• The system generates an error message indicating minimum length of 2 characters is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n4 segment contains a postal code and the postal code length is less than 3 characters.
Trigger Criteria:
Context: An N4 segment contains a postal code AND the postal code length is less than 3 characters
Applied to: Validate N4 Geographic Fields
Action: The system validates postal code format
Logic Flow:
IF An N4 segment contains a postal code AND the postal code length is less than 3 characters
AND The system validates postal code format
THEN:
• The system generates an error message indicating minimum length of 3 characters is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when n4 segment has country code of canada, usa, or mexico and the state/province code is empty.
Trigger Criteria:
Context: An N4 segment has country code of Canada, USA, or Mexico AND the state/province code is empty
Applied to: Validate N4 Geographic Fields
Action: The system validates geographic requirements
Logic Flow:
IF An N4 segment has country code of Canada, USA, or Mexico AND the state/province code is empty
AND The system validates geographic requirements
THEN:
• The system generates an error message indicating that state/province code is required for the specified country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when n4 segment has both state/province code and country code populated and the state code is not valid for the specified country.
Trigger Criteria:
Context: An N4 segment has both state/province code and country code populated AND the state code is not valid for the specified country
Applied to: Validate N4 Geographic Fields
Action: The system cross-validates state and country codes
Logic Flow:
IF An N4 segment has both state/province code and country code populated AND the state code is not valid for the specified country
AND The system cross-validates state and country codes
THEN:
• The system generates an error message indicating invalid state/province code for the country
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when n4 segment contains geographic data and the country code field is empty.
Trigger Criteria:
Context: An N4 segment contains geographic data AND the country code field is empty
Applied to: Validate N4 Geographic Fields
Action: The system validates geographic completeness
Logic Flow:
IF An N4 segment contains geographic data AND the country code field is empty
AND The system validates geographic completeness
THEN:
• The system generates an error message indicating that country code is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when per segment has contact person name populated and the communication number qualifier is empty.
Trigger Criteria:
Context: A PER segment has contact person name populated AND the communication number qualifier is empty
Applied to: Validate PER Contact Fields
Action: The system validates contact information consistency
Logic Flow:
IF A PER segment has contact person name populated AND the communication number qualifier is empty
AND The system validates contact information consistency
THEN:
• The system generates an error message indicating that communication qualifier is required when contact name is provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when per segment has communication number populated and the communication number qualifier is empty.
Trigger Criteria:
Context: A PER segment has communication number populated AND the communication number qualifier is empty
Applied to: Validate PER Contact Fields
Action: The system validates contact information consistency
Logic Flow:
IF A PER segment has communication number populated AND the communication number qualifier is empty
AND The system validates contact information consistency
THEN:
• The system generates an error message indicating that communication qualifier is required when phone number is provided
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when per segment has communication number qualifier populated and the qualifier is not spaces, 'fx' (fax), or 'te' (telephone).
Trigger Criteria:
Context: A PER segment has communication number qualifier populated AND the qualifier is not spaces, 'FX' (fax), or 'TE' (telephone)
Applied to: Validate PER Contact Fields
Action: The system validates qualifier values
Logic Flow:
IF A PER segment has communication number qualifier populated AND the qualifier is not spaces, 'FX' (fax), or 'TE' (telephone)
AND The system validates qualifier values
THEN:
• The system generates an error message indicating invalid communication qualifier value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when per segment has communication qualifier or contact person name populated and the communication number is empty.
Trigger Criteria:
Context: A PER segment has communication qualifier or contact person name populated AND the communication number is empty
Applied to: Validate PER Contact Fields
Action: The system validates contact completeness
Logic Flow:
IF A PER segment has communication qualifier or contact person name populated AND the communication number is empty
AND The system validates contact completeness
THEN:
• The system generates an error message indicating that communication number is required
R-GCCCCADD-cbl-02770 (+6)File: GCCCCADD.cblBusiness Rule: Perform State
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when state/province code and country code are provided for validation.
Trigger Criteria:
Context: A state/province code and country code are provided for validation
Applied to: Search TB-STATE-COUNTRY Table
Action: The system searches the TB-STATE-COUNTRY lookup table for matching state and country combination
Logic Flow:
IF A state/province code and country code are provided for validation
AND The system searches the TB-STATE-COUNTRY lookup table for matching state and country combination
THEN:
• The system sets valid province flag if match is found, otherwise sets invalid province flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state/province code that does not exist in the lookup table for the specified country.
Trigger Criteria:
Context: A state/province code that does not exist in the lookup table for the specified country
Applied to: Generate Error Message
Action: The validation process determines the state/province code is invalid
Logic Flow:
IF A state/province code that does not exist in the lookup table for the specified country
AND The validation process determines the state/province code is invalid
THEN:
• The system generates an error message indicating invalid state/province code and adds it to the message collection
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state/province code that exists in the state-country lookup table.
Trigger Criteria:
Context: A state/province code that exists in the state-country lookup table
Applied to: Move Country Code to Output Field
Action: The system finds a matching entry in the TB-STATE-COUNTRY table
Logic Flow:
IF A state/province code that exists in the state-country lookup table
AND The system finds a matching entry in the TB-STATE-COUNTRY table
THEN:
• The system automatically sets the corresponding country code from the lookup table entry
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipper address information with state/province code is provided.
Trigger Criteria:
Context: Shipper address information with state/province code is provided
Applied to: Set Valid Province Flag
Action: The shipper state/province code is validated against the state-country lookup table
Logic Flow:
IF Shipper address information with state/province code is provided
AND The shipper state/province code is validated against the state-country lookup table
THEN:
• If valid, the corresponding country code is assigned to shipper country field, otherwise an error message is generated for invalid shipper state/province code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when consignee address information with state/province code is provided.
Trigger Criteria:
Context: Consignee address information with state/province code is provided
Applied to: Set Valid Province Flag
Action: The consignee state/province code is validated against the state-country lookup table
Logic Flow:
IF Consignee address information with state/province code is provided
AND The consignee state/province code is validated against the state-country lookup table
THEN:
• If valid, the corresponding country code is assigned to consignee country field, otherwise an error message is generated for invalid consignee state/province code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address record with state/province code but missing country code.
Trigger Criteria:
Context: An address record with state/province code but missing country code
Applied to: Move Country Code to Output Field
Action: The state/province code is found in the state-country lookup table
Logic Flow:
IF An address record with state/province code but missing country code
AND The state/province code is found in the state-country lookup table
THEN:
• The system automatically populates the country code field with the corresponding value from the lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when destination state/province code from shipment data.
Trigger Criteria:
Context: A destination state/province code from shipment data
Applied to: Set Valid Province Flag
Action: The system searches the state-country table for the destination state code
Logic Flow:
IF A destination state/province code from shipment data
AND The system searches the state-country table for the destination state code
THEN:
• If the state code corresponds to country 'US', set destination as US, otherwise set as non-US destination
R-GCCCCADD-cbl-02777 (+3)File: GCCCCADD.cblBusiness Rule: Parse Fastway Address String into Components
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when shipper address is stored in shpr-addr(2) field in fastway shipment data.
Trigger Criteria:
Context: A shipper address is stored in SHPR-ADDR(2) field in Fastway shipment data
Applied to: Parse Fastway Address String into Components - Extract city, state, and postal code from concatenated address field
Action: The system processes shipper address information for customs manifest creation
Logic Flow:
IF A shipper address is stored in SHPR-ADDR(2) field in Fastway shipment data
AND The system processes shipper address information for customs manifest creation
THEN:
• The concatenated address string is parsed into separate city name, state/province code, and postal code components and moved to the corresponding N4 segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee address is stored in cons-data(4) field in fastway shipment data.
Trigger Criteria:
Context: A consignee address is stored in CONS-DATA(4) field in Fastway shipment data
Applied to: Parse Fastway Address String into Components - Extract city, state, and postal code from concatenated address field
Action: The system processes consignee address information for customs manifest creation
Logic Flow:
IF A consignee address is stored in CONS-DATA(4) field in Fastway shipment data
AND The system processes consignee address information for customs manifest creation
THEN:
• The concatenated address string is parsed into separate city name, state/province code, and postal code components and moved to the corresponding N4 segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when notify party address is stored in cons-data(4) field in fastway shipment data.
Trigger Criteria:
Context: A notify party address is stored in CONS-DATA(4) field in Fastway shipment data
Applied to: Parse Fastway Address String into Components - Extract city, state, and postal code from concatenated address field
Action: The system processes notify party address information for customs manifest creation
Logic Flow:
IF A notify party address is stored in CONS-DATA(4) field in Fastway shipment data
AND The system processes notify party address information for customs manifest creation
THEN:
• The concatenated address string is parsed into separate city name, state/province code, and postal code components and moved to the corresponding N4 segment fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when state or province code has been extracted from an address field.
Trigger Criteria:
Context: A state or province code has been extracted from an address field
Applied to: Validate Extracted Components
Action: The system needs to determine the corresponding country code
Logic Flow:
IF A state or province code has been extracted from an address field
AND The system needs to determine the corresponding country code
THEN:
• The system searches the TB-STATE-COUNTRY table to find the matching country code for the state/province and moves it to the country field, or leaves it blank if no match is found
R-GCCCCADD-cbl-02781 (+23)File: GCCCCADD.cblBusiness Rule: Execute Corrector EDI Backup and Restore Logic
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when corrector edi transaction is being processed.
Trigger Criteria:
Context: A corrector EDI transaction is being processed
Applied to: Check if Corrector EDI has Importer Data?
Action: The system checks for importer data presence in the EDI
Logic Flow:
IF A corrector EDI transaction is being processed
AND The system checks for importer data presence in the EDI
THEN:
• If importer, business number, and business number qualifier are all present, proceed to search existing records, otherwise continue with normal processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi contains importer data and importer, business number, and business number qualifier are present.
Trigger Criteria:
Context: Corrector EDI contains importer data and importer, business number, and business number qualifier are present
Applied to: Search Existing Importer Records
Action: The system searches through sequence numbers 3 to 24 for existing importer records
Logic Flow:
IF Corrector EDI contains importer data and importer, business number, and business number qualifier are present
AND The system searches through sequence numbers 3 to 24 for existing importer records
THEN:
• Continue searching until an importer is found or sequence exceeds 24
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when customs record type 55 has been retrieved during the search.
Trigger Criteria:
Context: A customs record type 55 has been retrieved during the search
Applied to: Found Existing Importer in Record 55?
Action: The system checks the entity ID code in the record
Logic Flow:
IF A customs record type 55 has been retrieved during the search
AND The system checks the entity ID code in the record
THEN:
• If the entity ID code equals 'IM', mark as importer found and proceed to backup data, otherwise continue searching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when existing importer record has been found in the customs data.
Trigger Criteria:
Context: An existing importer record has been found in the customs data
Applied to: Store Importer CHOP & Store Importer Name & Store Business Number Qualifier & Store Business Number & Store CSA Indicator & Store Address Information & Store City/State/Postal & Store Contact Information
Action: The system needs to backup the original importer information
Logic Flow:
IF An existing importer record has been found in the customs data
AND The system needs to backup the original importer information
THEN:
• Store the CHOP code from the existing record to temporary storage for potential restoration
• Store the importer name from the existing record to temporary storage for potential restoration
• Store the business number qualifier from the existing record to temporary storage for potential restoration
• Store the business number from the existing record to temporary storage for potential restoration
• Store the CSA indicator from the existing record to temporary storage for potential restoration
• Store both address line 1 and address line 2 from the existing record to temporary storage for potential restoration
• Store the city name, state/province code, postal code, and country code from the existing record to temporary storage for potential restoration
• Store the contact function code, person name, communication number qualifier, and communication number from the existing record to temporary storage for potential restoration
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when original importer data has been successfully backed up to temporary storage.
Trigger Criteria:
Context: Original importer data has been successfully backed up to temporary storage
Applied to: Clear Current Importer Fields
Action: The system needs to clear current importer fields for corrector EDI processing
Logic Flow:
IF Original importer data has been successfully backed up to temporary storage
AND The system needs to clear current importer fields for corrector EDI processing
THEN:
• Set importer, business number, and business number qualifier fields to spaces in the current processing area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi processing has been completed and original importer data was backed up.
Trigger Criteria:
Context: Corrector EDI processing has been completed and original importer data was backed up
Applied to: Corrector EDI Deletes Importer?
Action: The system checks if the corrector EDI has deleted importer information
Logic Flow:
IF Corrector EDI processing has been completed and original importer data was backed up
AND The system checks if the corrector EDI has deleted importer information
THEN:
• If backed up importer name exists and no new importer data is found in sequence 55, proceed to restore backed up data, otherwise continue normal processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when corrector edi has deleted importer information and restoration is needed.
Trigger Criteria:
Context: Corrector EDI has deleted importer information and restoration is needed
Applied to: No Backup Data Available?
Action: The system checks for availability of backed up importer data
Logic Flow:
IF Corrector EDI has deleted importer information and restoration is needed
AND The system checks for availability of backed up importer data
THEN:
• If backed up importer name is present, proceed with data restoration, otherwise clear importer fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when corrector edi has deleted importer information and backup data is available.
Trigger Criteria:
Context: Corrector EDI has deleted importer information and backup data is available
Applied to: Set Importer CHOP from Backup & Set Importer Name from Backup & Set Business Qualifier from Backup & Set Business Number from Backup & Set CSA Indicator from Backup & Set Address from Backup & Set City/State/Postal from Backup & Set Contact Info from Backup
Action: The system restores importer information from backup
Logic Flow:
IF Corrector EDI has deleted importer information and backup data is available
AND The system restores importer information from backup
THEN:
• Set the CHOP code in both the customs record and current processing fields from the backed up value
• Set the importer name in both the customs record and current processing fields from the backed up value
• Set the business number qualifier in both the customs record and current processing fields from the backed up value
• Set the business number in both the customs record and current processing fields from the backed up value
• Set the CSA indicator in the current processing fields from the backed up value
• Set both address line 1 and address line 2 in the customs record from the backed up values
• Set the city name, state/province code, postal code, and country code in the customs record from the backed up values
• Set the contact function code, person name, communication number qualifier, and communication number in the customs record from the backed up values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when importer data has been successfully restored from backup.
Trigger Criteria:
Context: Importer data has been successfully restored from backup
Applied to: Mark Importer Found Flag
Action: The system completes the restoration process
Logic Flow:
IF Importer data has been successfully restored from backup
AND The system completes the restoration process
THEN:
• Set the importer found flag to indicate that valid importer data is now available for processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when corrector edi has deleted importer information and no backup data is available for restoration.
Trigger Criteria:
Context: Corrector EDI has deleted importer information and no backup data is available for restoration
Applied to: Clear Importer Fields
Action: The system cannot restore importer data from backup
Logic Flow:
IF Corrector EDI has deleted importer information and no backup data is available for restoration
AND The system cannot restore importer data from backup
THEN:
• Clear the importer field in the current processing area and set importer not found flag
Business Justification: Defines the strict business conditions required to proceed when cargo manifest is being processed with a manifest-to station name.
Trigger Criteria:
Context: A cargo manifest is being processed with a manifest-to station name
Applied to: Is Manifest-To Station = 'IIS-A6'?
Action: The manifest-to station name equals 'IIS-A6'
Logic Flow:
IF A cargo manifest is being processed with a manifest-to station name
AND The manifest-to station name equals 'IIS-A6'
THEN:
• The system proceeds to check destination country for enhanced sub-location processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest-to station is 'iis-a6' and destination state code is available.
Trigger Criteria:
Context: The manifest-to station is 'IIS-A6' and destination state code is available
Applied to: Is Destination Not US?
Action: The destination state code does not correspond to a US state
Logic Flow:
IF The manifest-to station is 'IIS-A6' and destination state code is available
AND The destination state code does not correspond to a US state
THEN:
• The system proceeds to lookup CM table for port manifest information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when destination is not us and manifest-to station is 'iis-a6'.
Trigger Criteria:
Context: The destination is not US and manifest-to station is 'IIS-A6'
Applied to: Lookup CM Table with Destination Station Number
Action: The system performs CM table lookup using destination station number
Logic Flow:
IF The destination is not US and manifest-to station is 'IIS-A6'
AND The system performs CM table lookup using destination station number
THEN:
• The system attempts to retrieve port manifest upon information from CM table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cm table lookup has been performed using destination station number.
Trigger Criteria:
Context: A CM table lookup has been performed using destination station number
Applied to: CM Table Lookup Successful?
Action: The CM table lookup returns successful status
Logic Flow:
IF A CM table lookup has been performed using destination station number
AND The CM table lookup returns successful status
THEN:
• The system extracts port manifest upon value for subsequent MC table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cm table lookup was successful.
Trigger Criteria:
Context: CM table lookup was successful
Applied to: Get Port Manifest Upon from CM Table
Action: The system processes the CM table results
Logic Flow:
IF CM table lookup was successful
AND The system processes the CM table results
THEN:
• The port manifest upon value is extracted for MC table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when port manifest upon value has been extracted from cm table.
Trigger Criteria:
Context: Port manifest upon value has been extracted from CM table
Applied to: Lookup MC Table with Port Manifest Upon
Action: The system performs MC table lookup using port manifest upon value
Logic Flow:
IF Port manifest upon value has been extracted from CM table
AND The system performs MC table lookup using port manifest upon value
THEN:
• The system attempts to retrieve sub-location code from MC table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup has been performed using port manifest upon value.
Trigger Criteria:
Context: An MC table lookup has been performed using port manifest upon value
Applied to: MC Table Lookup Successful?
Action: The MC table lookup returns successful status
Logic Flow:
IF An MC table lookup has been performed using port manifest upon value
AND The MC table lookup returns successful status
THEN:
• The system extracts sub-location code from MC table results
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when mc table lookup was successful.
Trigger Criteria:
Context: MC table lookup was successful
Applied to: Extract Sub-location Code from MC Table
Action: The system processes the MC table results
Logic Flow:
IF MC table lookup was successful
AND The system processes the MC table results
THEN:
• The sub-location code is extracted and assigned to the cargo manifest
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when either cm table lookup failed or mc table lookup failed.
Trigger Criteria:
Context: Either CM table lookup failed or MC table lookup failed
Applied to: Set Sub-location Code to Spaces
Action: The system cannot retrieve valid sub-location information
Logic Flow:
IF Either CM table lookup failed or MC table lookup failed
AND The system cannot retrieve valid sub-location information
THEN:
• The sub-location code is set to spaces (blank)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when consignee chop code and destination station number are available.
Trigger Criteria:
Context: Consignee CHOP code and destination station number are available
Applied to: Lookup RF Table with Consignee CHOP and Station
Action: The system performs RF table lookup using consignee CHOP and station
Logic Flow:
IF Consignee CHOP code and destination station number are available
AND The system performs RF table lookup using consignee CHOP and station
THEN:
• The system attempts to retrieve customer bonded information and sub-location code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when rf table lookup has been performed using consignee chop and station.
Trigger Criteria:
Context: An RF table lookup has been performed using consignee CHOP and station
Applied to: RF Table Lookup Successful?
Action: The RF table lookup returns successful status
Logic Flow:
IF An RF table lookup has been performed using consignee CHOP and station
AND The RF table lookup returns successful status
THEN:
• The system extracts sub-location code and sets customer bonded indicator to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when rf table lookup was successful.
Trigger Criteria:
Context: RF table lookup was successful
Applied to: Extract Sub-location Code from RF Table
Action: The system processes the RF table results
Logic Flow:
IF RF table lookup was successful
AND The system processes the RF table results
THEN:
• The sub-location code is extracted from RF table and customer bonded indicator is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when rf table lookup was successful for consignee chop and station.
Trigger Criteria:
Context: RF table lookup was successful for consignee CHOP and station
Applied to: Set Customer Bonded Indicator to True
Action: Valid rail facility information is found
Logic Flow:
IF RF table lookup was successful for consignee CHOP and station
AND Valid rail facility information is found
THEN:
• The customer bonded indicator is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when rf table lookup failed for consignee chop and station.
Trigger Criteria:
Context: RF table lookup failed for consignee CHOP and station
Applied to: Set Customer Bonded Indicator to False
Action: No valid rail facility information is found
Logic Flow:
IF RF table lookup failed for consignee CHOP and station
AND No valid rail facility information is found
THEN:
• The customer bonded indicator is set to false
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when sub-location code processing has been completed and various indicators are set.
Trigger Criteria:
Context: Sub-location code processing has been completed and various indicators are set
Applied to: Sub-location Code Requirements Met?
Action: Sub-location code is not blank OR (sub-location code is blank AND (CSA indicator is on OR manifest stations are same and not IIS-A6 OR destination is US OR arrival indicator is Y))
Logic Flow:
IF Sub-location code processing has been completed and various indicators are set
AND Sub-location code is not blank OR (sub-location code is blank AND (CSA indicator is on OR manifest stations are same and not IIS-A6 OR destination is US OR arrival indicator is Y))
THEN:
• Sub-location code requirements are considered met and processing continues
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when sub-location code requirements validation has been performed.
Trigger Criteria:
Context: Sub-location code requirements validation has been performed
Applied to: Set Sub-location Error Flag
Action: Sub-location code requirements are not met
Logic Flow:
IF Sub-location code requirements validation has been performed
AND Sub-location code requirements are not met
THEN:
• Sub-location error flag is set to indicate validation failure
R-GCCCCADD-cbl-02821 (+3)File: GCCCCADD.cblBusiness Rule: Build SS Table Lookup Key from Port and SCAC Codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when canadian customs code is available from the manifest customs station lookup.
Trigger Criteria:
Context: A Canadian customs code is available from the manifest customs station lookup
Applied to: Extract Port Code from Customs Code
Action: The system needs to construct the SS table port code
Logic Flow:
IF A Canadian customs code is available from the manifest customs station lookup
AND The system needs to construct the SS table port code
THEN:
• The port code should be set to 'C' prefix followed by the last 3 digits of the Canadian customs code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system is constructing an ss table lookup key.
Trigger Criteria:
Context: The system is constructing an SS table lookup key
Applied to: Haulage Rights SCAC Available?
Action: The haulage rights SCAC code is available and not spaces
Logic Flow:
IF The system is constructing an SS table lookup key
AND The haulage rights SCAC code is available and not spaces
THEN:
• Use the haulage rights SCAC code for the SS table key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when system is constructing an ss table lookup key.
Trigger Criteria:
Context: The system is constructing an SS table lookup key
Applied to: Use Default SCAC '6105'
Action: The haulage rights SCAC code is spaces or not available
Logic Flow:
IF The system is constructing an SS table lookup key
AND The haulage rights SCAC code is spaces or not available
THEN:
• Use the default SCAC code '6105' for the SS table key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when port code and scac code have been determined.
Trigger Criteria:
Context: The port code and SCAC code have been determined
Applied to: Construct Complete SS Table Key
Action: The system constructs the complete SS table key
Logic Flow:
IF The port code and SCAC code have been determined
AND The system constructs the complete SS table key
THEN:
• The SS table key should combine the port code and SCAC code into the final lookup key format
R-GCCCCADD-cbl-02825 (+4)File: GCCCCADD.cblBusiness Rule: Process Business Number Qualifier Validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when importer data exists in edi bol n1 segment.
Trigger Criteria:
Context: Importer data exists in EDI BOL N1 segment
Applied to: Extract Business Number Qualifier from N1 Segment & Extract Business Number from N1 Segment & Store Qualifier in GCCC-BUSINESS-NBR-QUAL
Action: Processing importer information from EDI BOL
Logic Flow:
IF Importer data exists in EDI BOL N1 segment
AND Processing importer information from EDI BOL
THEN:
• Extract business number qualifier from N1 segment and store in GCCC-BUSINESS-NBR-QUALandGCCS-N103-ID-CDE-QUAL
• Extract business number from N1 segment and store in GCCC-BUSINESS-NBRandGCCS-N104-ID-CDE
• Store importer name from N1 segment in GCCC-IMPORTERandGCCS-N102-NAME
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when business number qualifier is 'bn' or spaces and importer data found in au table and importer data found in edi s55 segment.
Trigger Criteria:
Context: Business number qualifier is 'BN' or spaces AND importer data found in AU table AND importer data found in EDI S55 segment
Applied to: Set CSA Indicator OFF
Action: Processing importer business number qualifier validation
Logic Flow:
IF Business number qualifier is 'BN' or spaces AND importer data found in AU table AND importer data found in EDI S55 segment
AND Processing importer business number qualifier validation
THEN:
• Set CSA indicator to OFF to disable CSA processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when business number qualifier is 'm5'.
Trigger Criteria:
Context: Business number qualifier is 'M5'
Applied to: Set CSA Indicator ON
Action: Processing importer business number qualifier validation
Logic Flow:
IF Business number qualifier is 'M5'
AND Processing importer business number qualifier validation
THEN:
• Set CSA indicator to ON to enable CSA processing
Business Justification: Dictates the expected operational logic and validation steps when invalid canadian customs code has been detected for a manifest port.
Trigger Criteria:
Context: An invalid Canadian customs code has been detected for a manifest port
Applied to: Set Error Message Number to INV-MFST-PORT-CA-CUSTOMS
Action: The system needs to retrieve the error message for INV-MFST-PORT-CA-CUSTOMS
Logic Flow:
IF An invalid Canadian customs code has been detected for a manifest port
AND The system needs to retrieve the error message for INV-MFST-PORT-CA-CUSTOMS
THEN:
• The system sets the error message number to INV-MFST-PORT-CA-CUSTOMS for message lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to lookup an error message in the ms table. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system needs to lookup an error message in the MS table
Applied to: Initialize Table Lookup Parameters
Action: Preparing to call the table lookup function
Logic Flow:
IF The system needs to lookup an error message in the MS table
AND Preparing to call the table lookup function
THEN:
• The system clears all table lookup parameters including key values, flags, and return codes
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when error message number is set and table lookup parameters are initialized. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The error message number is set and table lookup parameters are initialized
Applied to: Call GCCTBIO to Access MS Table
Action: The system calls GCCTBIO with function code 'GU' and table ID 'MS'
Logic Flow:
IF The error message number is set and table lookup parameters are initialized
AND The system calls GCCTBIO with function code 'GU' and table ID 'MS'
THEN:
• The system attempts to retrieve the message text from the MS table using the error message number as the key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system has attempted to retrieve a message from the ms table.
Trigger Criteria:
Context: The system has attempted to retrieve a message from the MS table
Applied to: Message Found in MS Table?
Action: The table lookup function returns a status
Logic Flow:
IF The system has attempted to retrieve a message from the MS table
AND The table lookup function returns a status
THEN:
• The system checks if the return flag equals SUCCESSFUL to determine if the message was found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when message record has been successfully retrieved from the ms table.
Trigger Criteria:
Context: A message record has been successfully retrieved from the MS table
Applied to: Retrieve English Error Message Text
Action: The system processes the retrieved message data
Logic Flow:
IF A message record has been successfully retrieved from the MS table
AND The system processes the retrieved message data
THEN:
• The system moves the English text field from the message table segment to the working message label
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when message lookup in the ms table was unsuccessful.
Trigger Criteria:
Context: The message lookup in the MS table was unsuccessful
Applied to: Set Empty Message Text
Action: The system needs to handle the missing message scenario
Logic Flow:
IF The message lookup in the MS table was unsuccessful
AND The system needs to handle the missing message scenario
THEN:
• The system clears the message table segment to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when error condition has occurred requiring message retrieval and a message error number is available. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An error condition has occurred requiring message retrieval and a message error number is available
Applied to: Error Message Retrieval Request
Action: The system needs to retrieve error message text from the message table
Logic Flow:
IF An error condition has occurred requiring message retrieval and a message error number is available
AND The system needs to retrieve error message text from the message table
THEN:
• The system should initialize table lookup parameters, set function code to 'GU', set table ID to 'MS', use the message error number as the key, and call the table access routine
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when table lookup operation has been performed on the message table.
Trigger Criteria:
Context: A table lookup operation has been performed on the message table
Applied to: Table Lookup Successful?
Action: The table lookup returns successfully
Logic Flow:
IF A table lookup operation has been performed on the message table
AND The table lookup returns successfully
THEN:
• The system should move the table segment to the message structure, extract the English text from the MS table, and move the text to the message label for display
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when table lookup operation has been performed on the message table.
Trigger Criteria:
Context: A table lookup operation has been performed on the message table
Applied to: Table Lookup Successful?
Action: The table lookup fails or returns an error
Logic Flow:
IF A table lookup operation has been performed on the message table
AND The table lookup fails or returns an error
THEN:
• The system should set the MS table segment to spaces to clear any invalid data
R-GCCCCADD-cbl-02839 (+11)File: GCCCCADD.cblBusiness Rule: Get EBSBCCM Segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when request to retrieve ebsbccm commodity segment data.
Trigger Criteria:
Context: A request to retrieve EBSBCCM commodity segment data
Applied to: Initialize EDI BOL I/O Parameters
Action: The system begins the EDI BOL segment retrieval process
Logic Flow:
IF A request to retrieve EBSBCCM commodity segment data
AND The system begins the EDI BOL segment retrieval process
THEN:
• The EDI BOL I/O parameters are cleared and initialized to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when edi bol i/o parameters are initialized.
Trigger Criteria:
Context: EDI BOL I/O parameters are initialized
Applied to: Set Segment Type to EBSBCCM
Action: The system prepares to retrieve commodity segment data
Logic Flow:
IF EDI BOL I/O parameters are initialized
AND The system prepares to retrieve commodity segment data
THEN:
• The segment type is set to 'EBSBCCM' to specify commodity segment retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when segment type is configured for ebsbccm.
Trigger Criteria:
Context: The segment type is configured for EBSBCCM
Applied to: Set Function Code to GU
Action: The system prepares the database retrieval operation
Logic Flow:
IF The segment type is configured for EBSBCCM
AND The system prepares the database retrieval operation
THEN:
• The function code is set to 'GU' to perform a get unique operation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when function code is set for database retrieval.
Trigger Criteria:
Context: The function code is set for database retrieval
Applied to: Set EDI BOL Key from Waybill
Action: The system needs to identify the specific bill of lading
Logic Flow:
IF The function code is set for database retrieval
AND The system needs to identify the specific bill of lading
THEN:
• The EDI BOL key from the waybill is assigned to the root key parameter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when edi bol key is configured for segment identification.
Trigger Criteria:
Context: The EDI BOL key is configured for segment identification
Applied to: Set Type to CM - Commodity
Action: The system needs to specify the commodity segment subtype
Logic Flow:
IF The EDI BOL key is configured for segment identification
AND The system needs to specify the commodity segment subtype
THEN:
• The type identifier is set to 'CM' to indicate commodity information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when commodity type identifier is set to cm.
Trigger Criteria:
Context: The commodity type identifier is set to CM
Applied to: Set Sequence Number
Action: The system needs to identify a specific commodity segment occurrence
Logic Flow:
IF The commodity type identifier is set to CM
AND The system needs to identify a specific commodity segment occurrence
THEN:
• The sequence number from the commodity sequence counter is assigned to the segment parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all segment retrieval parameters are configured.
Trigger Criteria:
Context: All segment retrieval parameters are configured
Applied to: Valid EDI BOL?
Action: The system checks for EDI BOL validity
Logic Flow:
IF All segment retrieval parameters are configured
AND The system checks for EDI BOL validity
THEN:
• If the EDI BOL is invalid, the system sets the EBSBCCM not found flag and skips segment retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol is valid and all parameters are set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The EDI BOL is valid and all parameters are set
Applied to: Call EBCLGIO to Retrieve Segment
Action: The system executes the segment retrieval operation
Logic Flow:
IF The EDI BOL is valid and all parameters are set
AND The system executes the segment retrieval operation
THEN:
• The EBCLGIO program is called with the configured parameters to retrieve the EBSBCCM segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when ebclgio segment retrieval operation has completed.
Trigger Criteria:
Context: The EBCLGIO segment retrieval operation has completed
Applied to: Segment Found?
Action: The system checks the retrieval status
Logic Flow:
IF The EBCLGIO segment retrieval operation has completed
AND The system checks the retrieval status
THEN:
• If the status code is spaces, the segment was found successfully, otherwise the segment was not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when commodity segment retrieval was successful.
Trigger Criteria:
Context: The commodity segment retrieval was successful
Applied to: Set EBSBCCM Found Flag
Action: The system processes the successful retrieval result
Logic Flow:
IF The commodity segment retrieval was successful
AND The system processes the successful retrieval result
THEN:
• The EBSBCCM found flag is set to true to indicate successful segment retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ebsbccm segment is found and the success flag is set.
Trigger Criteria:
Context: The EBSBCCM segment is found and the success flag is set
Applied to: Extract Lading Quantity
Action: The system processes the retrieved commodity data
Logic Flow:
IF The EBSBCCM segment is found and the success flag is set
AND The system processes the retrieved commodity data
THEN:
• The lading quantity (L0-LADING-QTY) is added to the running total of units
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when commodity segment retrieval was unsuccessful or edi bol is invalid.
Trigger Criteria:
Context: The commodity segment retrieval was unsuccessful or EDI BOL is invalid
Applied to: Set EBSBCCM Not Found Flag
Action: The system processes the failed retrieval result
Logic Flow:
IF The commodity segment retrieval was unsuccessful or EDI BOL is invalid
AND The system processes the failed retrieval result
THEN:
• The EBSBCCM not found flag is set to true to indicate unsuccessful segment retrieval
R-GCCCCADD-cbl-02851 (+11)File: GCCCCADD.cblBusiness Rule: Get EBSBCCR Weight Segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when request to retrieve weight data from edi bol weight segment.
Trigger Criteria:
Context: A request to retrieve weight data from EDI BOL weight segment
Applied to: Initialize EBWLGIO Parameters
Action: The system begins weight segment retrieval process
Logic Flow:
IF A request to retrieve weight data from EDI BOL weight segment
AND The system begins weight segment retrieval process
THEN:
• Communication parameters are cleared and accept status is set to GE for database access
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when communication parameters are initialized for weight segment retrieval.
Trigger Criteria:
Context: Communication parameters are initialized for weight segment retrieval
Applied to: Set Segment Type to EBSBCCR
Action: The system configures segment type for database query
Logic Flow:
IF Communication parameters are initialized for weight segment retrieval
AND The system configures segment type for database query
THEN:
• Segment type is set to EBSBCCR to target weight records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when segment type is configured for weight data retrieval.
Trigger Criteria:
Context: Segment type is configured for weight data retrieval
Applied to: Set Function Code to GU
Action: The system sets database operation type
Logic Flow:
IF Segment type is configured for weight data retrieval
AND The system sets database operation type
THEN:
• Function code is set to GU to retrieve unique weight record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when database function code is set for weight retrieval.
Trigger Criteria:
Context: Database function code is set for weight retrieval
Applied to: Set Root Key from EDI BOL Key
Action: The system configures shipment identification
Logic Flow:
IF Database function code is set for weight retrieval
AND The system configures shipment identification
THEN:
• Root key is set to EDI BOL key to target specific shipment weight data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when root key is configured for shipment identification.
Trigger Criteria:
Context: Root key is configured for shipment identification
Applied to: Set Type to CR
Action: The system sets record type for weight data
Logic Flow:
IF Root key is configured for shipment identification
AND The system sets record type for weight data
THEN:
• Type is set to CR to target commodity weight records
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record type is set to cr for commodity weight data.
Trigger Criteria:
Context: Record type is set to CR for commodity weight data
Applied to: Set Dependent Key to CR001
Action: The system specifies which commodity weight record to retrieve
Logic Flow:
IF Record type is set to CR for commodity weight data
AND The system specifies which commodity weight record to retrieve
THEN:
• Dependent key is set to CR001 to access the first weight record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all retrieval parameters are configured for weight segment access.
Trigger Criteria:
Context: All retrieval parameters are configured for weight segment access
Applied to: Valid EDI BOL?
Action: The system checks EDI BOL validity status
Logic Flow:
IF All retrieval parameters are configured for weight segment access
AND The system checks EDI BOL validity status
THEN:
• If EDI BOL is invalid, weight segment is marked as not found, otherwise proceed with database retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol validity check is performed.
Trigger Criteria:
Context: EDI BOL validity check is performed
Applied to: Set Weight Segment Not Found
Action: EDI BOL is determined to be invalid
Logic Flow:
IF EDI BOL validity check is performed
AND EDI BOL is determined to be invalid
THEN:
• Weight segment found flag is set to not found without attempting database retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when edi bol is valid and all retrieval parameters are set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: EDI BOL is valid and all retrieval parameters are set
Applied to: Call EBCLGIO to Retrieve Weight Data
Action: The system executes database retrieval operation
Logic Flow:
IF EDI BOL is valid and all retrieval parameters are set
AND The system executes database retrieval operation
THEN:
• EBCLGIO is called with communication parameters to retrieve weight segment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when database retrieval operation is executed.
Trigger Criteria:
Context: Database retrieval operation is executed
Applied to: Weight Data Retrieved Successfully?
Action: The system checks database operation status
Logic Flow:
IF Database retrieval operation is executed
AND The system checks database operation status
THEN:
• If status code is spaces (success), mark weight segment as found, otherwise mark as not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when database retrieval operation completed.
Trigger Criteria:
Context: Database retrieval operation completed
Applied to: Set Weight Segment Found Flag
Action: Database status indicates successful retrieval (status code is spaces)
Logic Flow:
IF Database retrieval operation completed
AND Database status indicates successful retrieval (status code is spaces)
THEN:
• Weight segment found flag is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when database retrieval operation completed.
Trigger Criteria:
Context: Database retrieval operation completed
Applied to: Set Weight Segment Not Found Flag
Action: Database status indicates retrieval failure (status code is not spaces)
Logic Flow:
IF Database retrieval operation completed
AND Database status indicates retrieval failure (status code is not spaces)
THEN:
• Weight segment found flag is set to false
R-GCCCCADD-cbl-02863 (+7)File: GCCCCADD.cblBusiness Rule: Extract Special Handling Code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment has special handling codes in positions 1 through 7.
Trigger Criteria:
Context: A shipment has special handling codes in positions 1 through 7
Applied to: Get Special Handling Code at Counter Position
Action: The system processes each special handling code position
Logic Flow:
IF A shipment has special handling codes in positions 1 through 7
AND The system processes each special handling code position
THEN:
• The system retrieves the special handling code from the current counter position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when special handling code has been retrieved from a shipment position.
Trigger Criteria:
Context: A special handling code has been retrieved from a shipment position
Applied to: Code = 'VA' OR 'EV' OR 'VS'?
Action: The code is 'VA' (Value Added) OR 'EV' (Event) OR 'VS' (Value Service)
Logic Flow:
IF A special handling code has been retrieved from a shipment position
AND The code is 'VA' (Value Added) OR 'EV' (Event) OR 'VS' (Value Service)
THEN:
• The system accepts the code as valid for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid special handling code has been identified.
Trigger Criteria:
Context: A valid special handling code has been identified
Applied to: Extract Code and Instruction
Action: The system processes the code
Logic Flow:
IF A valid special handling code has been identified
AND The system processes the code
THEN:
• The system extracts both the special handling code and its corresponding instruction into work fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid special handling code and instruction have been extracted.
Trigger Criteria:
Context: Valid special handling code and instruction have been extracted
Applied to: First Special Handling Slot Empty?
Action: The first special handling slot is empty
Logic Flow:
IF Valid special handling code and instruction have been extracted
AND The first special handling slot is empty
THEN:
• The system stores the code and instruction in the first slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid special handling code and instruction have been extracted and the first slot is occupied.
Trigger Criteria:
Context: Valid special handling code and instruction have been extracted AND the first slot is occupied
Applied to: Second Special Handling Slot Empty?
Action: The second special handling slot is empty
Logic Flow:
IF Valid special handling code and instruction have been extracted AND the first slot is occupied
AND The second special handling slot is empty
THEN:
• The system stores the code and instruction in the second slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid special handling code and instruction have been extracted and both first and second slots are occupied.
Trigger Criteria:
Context: Valid special handling code and instruction have been extracted AND both first and second slots are occupied
Applied to: Store in Third Slot
Action: The system needs to store the special handling information
Logic Flow:
IF Valid special handling code and instruction have been extracted AND both first and second slots are occupied
AND The system needs to store the special handling information
THEN:
• The system stores the code and instruction in the third slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when current special handling code position has been processed.
Trigger Criteria:
Context: The current special handling code position has been processed
Applied to: Increment Counter
Action: The system completes processing of the current position
Logic Flow:
IF The current special handling code position has been processed
AND The system completes processing of the current position
THEN:
• The system increments the counter to process the next position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system is processing special handling codes.
Trigger Criteria:
Context: The system is processing special handling codes
Applied to: Counter <= 7?
Action: The counter exceeds 7 positions
Logic Flow:
IF The system is processing special handling codes
AND The counter exceeds 7 positions
THEN:
• The system completes special handling code extraction processing
R-GCCCCADD-cbl-02871 (+12)File: GCCCCADD.cblBusiness Rule: Extract Special Handling Instructions
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when special handling codes need to be processed.
Trigger Criteria:
Context: Special handling codes need to be processed
Applied to: Initialize Counter to 1
Action: Starting the special handling extraction process
Logic Flow:
IF Special handling codes need to be processed
AND Starting the special handling extraction process
THEN:
• Counter is set to 1 to begin processing from the first array position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when counter is at a specific position in the special handling codes array.
Trigger Criteria:
Context: Counter is at a specific position in the special handling codes array
Applied to: Counter <= 7?
Action: Checking if more special handling codes need to be processed
Logic Flow:
IF Counter is at a specific position in the special handling codes array
AND Checking if more special handling codes need to be processed
THEN:
• Continue processing if counter is 7 or less, otherwise stop processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when counter is pointing to a valid position in the special handling codes array.
Trigger Criteria:
Context: Counter is pointing to a valid position in the special handling codes array
Applied to: Get Special Handling Code at Counter Position
Action: Processing special handling codes
Logic Flow:
IF Counter is pointing to a valid position in the special handling codes array
AND Processing special handling codes
THEN:
• Extract the special handling code from SPCL-HNDLG-CDE at the counter position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling code has been extracted from the array.
Trigger Criteria:
Context: A special handling code has been extracted from the array
Applied to: Code = 'VA', 'EV', or 'VS'?
Action: Validating the special handling code type
Logic Flow:
IF A special handling code has been extracted from the array
AND Validating the special handling code type
THEN:
• Process the code only if it equals 'VA', 'EV', or 'VS', otherwise skip to next position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when valid special handling code ('va', 'ev', or 'vs') has been identified.
Trigger Criteria:
Context: A valid special handling code ('VA', 'EV', or 'VS') has been identified
Applied to: Extract Instruction Text from SPCL-HNDLG-INST Array
Action: Extracting the corresponding instruction details
Logic Flow:
IF A valid special handling code ('VA', 'EV', or 'VS') has been identified
AND Extracting the corresponding instruction details
THEN:
• Retrieve the instruction text from SPCL-HNDLG-INST array at the same counter position
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid special handling code has been extracted.
Trigger Criteria:
Context: A valid special handling code has been extracted
Applied to: Move Code to Work Area
Action: Preparing the code for storage
Logic Flow:
IF A valid special handling code has been extracted
AND Preparing the code for storage
THEN:
• Move the special handling code to DESC-WORK-CODE work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling instruction text has been extracted.
Trigger Criteria:
Context: Special handling instruction text has been extracted
Applied to: Move Instruction Text to Work Area
Action: Preparing the instruction for storage
Logic Flow:
IF Special handling instruction text has been extracted
AND Preparing the instruction for storage
THEN:
• Move the instruction text to DESC-WORK-DESC work area
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when special handling information needs to be stored. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Special handling information needs to be stored
Applied to: First Special Handling Slot Empty?
Action: Checking storage slot availability
Logic Flow:
IF Special handling information needs to be stored
AND Checking storage slot availability
THEN:
• Use first slot ifWS-DESC-FW-SPCL-HNDLG(1) is empty (spaces), otherwise check next slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when first special handling storage slot is empty. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: First special handling storage slot is empty
Applied to: Store in First Special Handling Slot
Action: Storing special handling information
Logic Flow:
IF First special handling storage slot is empty
AND Storing special handling information
THEN:
• Move DESC-WORK-INFO to WS-DESC-FW-SPCL-HNDLG(1)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when first special handling storage slot is occupied and special handling information needs to be stored. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: First special handling storage slot is occupied and special handling information needs to be stored
Applied to: Second Special Handling Slot Empty?
Action: Checking second storage slot availability
Logic Flow:
IF First special handling storage slot is occupied and special handling information needs to be stored
AND Checking second storage slot availability
THEN:
• Use second slot ifWS-DESC-FW-SPCL-HNDLG(2) is empty (spaces), otherwise use third slot
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when first special handling storage slot is occupied and second slot is empty. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: First special handling storage slot is occupied and second slot is empty
Applied to: Store in Second Special Handling Slot
Action: Storing special handling information
Logic Flow:
IF First special handling storage slot is occupied and second slot is empty
AND Storing special handling information
THEN:
• Move DESC-WORK-INFO to WS-DESC-FW-SPCL-HNDLG(2)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when first and second special handling storage slots are occupied. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: First and second special handling storage slots are occupied
Applied to: Store in Third Special Handling Slot
Action: Storing special handling information
Logic Flow:
IF First and second special handling storage slots are occupied
AND Storing special handling information
THEN:
• Move DESC-WORK-INFO to WS-DESC-FW-SPCL-HNDLG(3)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when current special handling code has been processed (either stored or skipped).
Trigger Criteria:
Context: Current special handling code has been processed (either stored or skipped)
Applied to: Increment Counter
Action: Moving to the next array position
Logic Flow:
IF Current special handling code has been processed (either stored or skipped)
AND Moving to the next array position
THEN:
• Add 1 to the counter to point to the next special handling code position
R-GCCCCADD-cbl-02884 (+16)File: GCCCCADD.cblBusiness Rule: Read Hazmat Segment from EDI BOL
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when hazmat processing is starting for an edi bol. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Hazmat processing is starting for an EDI BOL
Applied to: Initialize CCM Sequence to 1
Action: The system begins to read hazmat commodity segments
Logic Flow:
IF Hazmat processing is starting for an EDI BOL
AND The system begins to read hazmat commodity segments
THEN:
• The CCM sequence counter is initialized to 1 to start reading from the first hazmat segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when valid edi bol key exists for the shipment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid EDI BOL key exists for the shipment
Applied to: Set EDI BOL Key Parameters
Action: The system prepares to read hazmat segments
Logic Flow:
IF A valid EDI BOL key exists for the shipment
AND The system prepares to read hazmat segments
THEN:
• The EDI BOL key is set as the root key parameter for segment retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to read hazmat commodity data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system needs to read hazmat commodity data
Applied to: Set Segment Type to EBSBCCM
Action: Configuring the segment retrieval parameters
Logic Flow:
IF The system needs to read hazmat commodity data
AND Configuring the segment retrieval parameters
THEN:
• The segment type is set to 'EBSBCCM' to target chemical hazmat segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to retrieve a specific hazmat segment.
Trigger Criteria:
Context: The system needs to retrieve a specific hazmat segment
Applied to: Set Function Code to GU
Action: Setting up the database access parameters
Logic Flow:
IF The system needs to retrieve a specific hazmat segment
AND Setting up the database access parameters
THEN:
• The function code is set to 'GU' to perform a get unique operation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system is processing hazmat commodity data.
Trigger Criteria:
Context: The system is processing hazmat commodity data
Applied to: Set Type to CH - Chemical Hazmat
Action: Specifying the type of hazmat segment to retrieve
Logic Flow:
IF The system is processing hazmat commodity data
AND Specifying the type of hazmat segment to retrieve
THEN:
• The type is set to 'CH' to identify chemical hazmat segments
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when ccm sequence counter is maintained for hazmat processing.
Trigger Criteria:
Context: A CCM sequence counter is maintained for hazmat processing
Applied to: Set Sequence Number
Action: Preparing to retrieve a specific hazmat segment
Logic Flow:
IF A CCM sequence counter is maintained for hazmat processing
AND Preparing to retrieve a specific hazmat segment
THEN:
• The sequence number parameter is set to the current CCM sequence value
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol key has been provided for hazmat processing.
Trigger Criteria:
Context: An EDI BOL key has been provided for hazmat processing
Applied to: Valid EDI BOL?
Action: The system attempts to access hazmat segments
Logic Flow:
IF An EDI BOL key has been provided for hazmat processing
AND The system attempts to access hazmat segments
THEN:
• If the EDI BOL is invalid, hazmat processing is marked as not found and terminated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when all segment retrieval parameters are configured and edi bol is valid. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All segment retrieval parameters are configured and EDI BOL is valid
Applied to: Call EBCLGIO to Read Segment
Action: The system executes the database call
Logic Flow:
IF All segment retrieval parameters are configured and EDI BOL is valid
AND The system executes the database call
THEN:
• The EBCLGIO program is called to retrieve the EBSBCCM hazmat segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when database call has been executed to retrieve a hazmat segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A database call has been executed to retrieve a hazmat segment
Applied to: Segment Found?
Action: The system checks the result of the database call
Logic Flow:
IF A database call has been executed to retrieve a hazmat segment
AND The system checks the result of the database call
THEN:
• If the segment is not found, hazmat processing is marked as not found, otherwise processing continues
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when hazmat segment has been successfully retrieved from the edi bol.
Trigger Criteria:
Context: A hazmat segment has been successfully retrieved from the EDI BOL
Applied to: Set Hazmat Found Flag
Action: The system processes the found segment
Logic Flow:
IF A hazmat segment has been successfully retrieved from the EDI BOL
AND The system processes the found segment
THEN:
• The hazmat found flag is set to indicate successful segment retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when hazmat segment has been successfully retrieved.
Trigger Criteria:
Context: A hazmat segment has been successfully retrieved
Applied to: Extract UN Number from LH1-UN-NA-ID-CD
Action: The system processes the hazmat data
Logic Flow:
IF A hazmat segment has been successfully retrieved
AND The system processes the hazmat data
THEN:
• The UN/NA identification code is extracted from the LH1-UN-NA-ID-CD field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when un/na identification code has been extracted from hazmat data.
Trigger Criteria:
Context: A UN/NA identification code has been extracted from hazmat data
Applied to: UN Number Starts with 'UN'?
Action: The system validates the identification code format
Logic Flow:
IF A UN/NA identification code has been extracted from hazmat data
AND The system validates the identification code format
THEN:
• If the code starts with 'UN', it is processed as a valid UN number, otherwise the sequence is incremented to check the next segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when identification code starting with 'un' has been found in hazmat data.
Trigger Criteria:
Context: An identification code starting with 'UN' has been found in hazmat data
Applied to: Set Hazmat Found Status
Action: The system confirms the UN number validity
Logic Flow:
IF An identification code starting with 'UN' has been found in hazmat data
AND The system confirms the UN number validity
THEN:
• The hazmat found status is set to indicate successful UN number identification
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when valid un number has been identified from hazmat data.
Trigger Criteria:
Context: A valid UN number has been identified from hazmat data
Applied to: Move UN Number to Output
Action: The system processes the validated UN number
Logic Flow:
IF A valid UN number has been identified from hazmat data
AND The system processes the validated UN number
THEN:
• The UN number is moved to the customs manifest UN number field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when current hazmat segment has been processed but no valid un number was found.
Trigger Criteria:
Context: The current hazmat segment has been processed but no valid UN number was found
Applied to: Increment CCM Sequence
Action: The system continues searching for hazmat data
Logic Flow:
IF The current hazmat segment has been processed but no valid UN number was found
AND The system continues searching for hazmat data
THEN:
• The CCM sequence counter is incremented by 1 to target the next segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when ccm sequence has been incremented.
Trigger Criteria:
Context: The CCM sequence has been incremented
Applied to: More Segments to Process?
Action: The system checks for continuation of hazmat processing
Logic Flow:
IF The CCM sequence has been incremented
AND The system checks for continuation of hazmat processing
THEN:
• If the sequence is within limits and no valid UN number has been found, processing continues with the next segment, otherwise processing ends
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when all hazmat segments have been processed or edi bol is invalid.
Trigger Criteria:
Context: All hazmat segments have been processed or EDI BOL is invalid
Applied to: Set Hazmat Not Found Flag
Action: No valid UN number has been identified
Logic Flow:
IF All hazmat segments have been processed or EDI BOL is invalid
AND No valid UN number has been identified
THEN:
• The hazmat not found flag is set to indicate unsuccessful hazmat processing
R-GCCCCADD-cbl-02901 (+3)File: GCCCCADD.cblBusiness Rule: Read LH3 Segment for Description
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when hazmat information sequence counter is set and ebsbchi hazmat segment exists for the current edi bol. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A hazmat information sequence counter is set and EBSBCHI hazmat segment exists for the current EDI BOL
Applied to: Read LH3 Segment for Description
Action: The system attempts to retrieve the LH3 proper shipping name from the EBSBCHI hazmat information segment
Logic Flow:
IF A hazmat information sequence counter is set and EBSBCHI hazmat segment exists for the current EDI BOL
AND The system attempts to retrieve the LH3 proper shipping name from the EBSBCHI hazmat information segment
THEN:
• If the EBSBCHI hazmat segment is found, extract the LH3 proper shipping name and store it in the commodity description danger field, otherwise no description is available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when hazmat information processing is required for the customs manifest.
Trigger Criteria:
Context: Hazmat information processing is required for the customs manifest
Applied to: Set Hazmat Information Sequence Counter
Action: The system begins processing LH3 hazmat description segments
Logic Flow:
IF Hazmat information processing is required for the customs manifest
AND The system begins processing LH3 hazmat description segments
THEN:
• The hazmat information sequence counter is set to 1 to start processing from the first sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when request to retrieve hazmat information from ebsbchi segment has been made.
Trigger Criteria:
Context: A request to retrieve hazmat information from EBSBCHI segment has been made
Applied to: EBSBCHI Hazmat Segment Found?
Action: The system checks for the existence of EBSBCHI hazmat segment with LH3 data
Logic Flow:
IF A request to retrieve hazmat information from EBSBCHI segment has been made
AND The system checks for the existence of EBSBCHI hazmat segment with LH3 data
THEN:
• If the segment is found and contains valid data, proceed to extract the proper shipping name, otherwise indicate no description is available
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when lh3 proper shipping name has been successfully extracted from the ebsbchi hazmat segment.
Trigger Criteria:
Context: The LH3 proper shipping name has been successfully extracted from the EBSBCHI hazmat segment
Applied to: Store Proper Shipping Name in Commodity Description Danger Field
Action: The system processes the extracted proper shipping name
Logic Flow:
IF The LH3 proper shipping name has been successfully extracted from the EBSBCHI hazmat segment
AND The system processes the extracted proper shipping name
THEN:
• The LH3 proper shipping name is stored in the commodity description danger field for inclusion in the customs manifest
Business Justification: Defines the strict business conditions required to proceed when transportation segment search is initiated.
Trigger Criteria:
Context: A transportation segment search is initiated
Applied to: Initialize Search Parameters
Action: The search parameters need to be initialized
Logic Flow:
IF A transportation segment search is initiated
AND The search parameters need to be initialized
THEN:
• The organization ID status is set to not found and the transportation segment found status is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when transportation segment search is being initialized.
Trigger Criteria:
Context: A transportation segment search is being initialized
Applied to: Set Sequence Counter to 1
Action: The sequence counter needs to be set for iteration
Logic Flow:
IF A transportation segment search is being initialized
AND The sequence counter needs to be set for iteration
THEN:
• The sequence counter is set to 1 to begin searching from the first sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when transportation segment needs to be retrieved from edi bol.
Trigger Criteria:
Context: A transportation segment needs to be retrieved from EDI BOL
Applied to: Prepare EBSNRTD Segment Request
Action: The segment request is being prepared
Logic Flow:
IF A transportation segment needs to be retrieved from EDI BOL
AND The segment request is being prepared
THEN:
• The segment type is set to EBSNRTD, function code is set to GU, operator is set to equals, type is set to TN, and the current sequence number is assigned
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when transportation segment request parameters are configured.
Trigger Criteria:
Context: Transportation segment request parameters are configured
Applied to: Execute EDI BOL Segment Retrieval
Action: The EDI BOL segment retrieval is executed
Logic Flow:
IF Transportation segment request parameters are configured
AND The EDI BOL segment retrieval is executed
THEN:
• The EBCLGIO service is called with the configured parameters to retrieve the transportation segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when transportation segment retrieval has been executed.
Trigger Criteria:
Context: A transportation segment retrieval has been executed
Applied to: Segment Found?
Action: The retrieval result needs to be validated
Logic Flow:
IF A transportation segment retrieval has been executed
AND The retrieval result needs to be validated
THEN:
• If the status code is spaces then the segment is found, otherwise the segment is not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when transportation segment has been successfully retrieved.
Trigger Criteria:
Context: A transportation segment has been successfully retrieved
Applied to: Organization ID Matches Target?
Action: The organization ID needs to be validated against the target
Logic Flow:
IF A transportation segment has been successfully retrieved
AND The organization ID needs to be validated against the target
THEN:
• If the retrieved organization ID equals the target organization ID then a match is found, otherwise continue searching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when retrieved organization id matches the target organization id.
Trigger Criteria:
Context: The retrieved organization ID matches the target organization ID
Applied to: Mark Organization ID as Found
Action: The search status needs to be updated
Logic Flow:
IF The retrieved organization ID matches the target organization ID
AND The search status needs to be updated
THEN:
• The organization ID found status is set to true
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when current transportation segment does not match the target organization id.
Trigger Criteria:
Context: The current transportation segment does not match the target organization ID
Applied to: Increment Sequence Counter
Action: The search needs to continue to the next sequence
Logic Flow:
IF The current transportation segment does not match the target organization ID
AND The search needs to continue to the next sequence
THEN:
• The sequence counter is incremented by 1
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when transportation segment search iteration has completed.
Trigger Criteria:
Context: A transportation segment search iteration has completed
Applied to: Continue Search?
Action: The continuation criteria needs to be evaluated
Logic Flow:
IF A transportation segment search iteration has completed
AND The continuation criteria needs to be evaluated
THEN:
• If the segment was not found then set transportation segment not found status to true, otherwiseif organization ID is not found then continue searching
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when transportation segment search has completed.
Trigger Criteria:
Context: The transportation segment search has completed
Applied to: Adjust Final Sequence Counter
Action: The final sequence counter needs to be adjusted
Logic Flow:
IF The transportation segment search has completed
AND The final sequence counter needs to be adjusted
THEN:
• The sequence counter is decremented by 1 to reflect the correct final sequence number
R-GCCCCADD-cbl-02915 (+3)File: GCCCCADD.cblBusiness Rule: Get MCOA Segment by Sequence
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when edi bol key exists and mcoa sequence number is provided.
Trigger Criteria:
Context: An EDI BOL key exists and MCOA sequence number is provided
Applied to: Get MCOA Segment by Sequence - Retrieve EBSMCOA segment data with sequence number validation
Action: System attempts to retrieve EBSMCOA segment with type 'OT' (Other)
Logic Flow:
IF An EDI BOL key exists and MCOA sequence number is provided
AND System attempts to retrieve EBSMCOA segment with type 'OT' (Other)
THEN:
• System successfully retrieves the MCOA segment data and sets found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mcoa sequence number is available for processing.
Trigger Criteria:
Context: MCOA sequence number is available for processing
Applied to: Set EDI BOL Key as Root Key
Action: System prepares to retrieve MCOA segment data
Logic Flow:
IF MCOA sequence number is available for processing
AND System prepares to retrieve MCOA segment data
THEN:
• System sets EDI BOL key as root key, MCOA sequence number, segment type as EBSMCOA, type as OT, and function code as GU
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mcoa segment has been successfully retrieved from edi bol.
Trigger Criteria:
Context: MCOA segment has been successfully retrieved from EDI BOL
Applied to: Segment Type is OT?
Action: System validates the segment type
Logic Flow:
IF MCOA segment has been successfully retrieved from EDI BOL
AND System validates the segment type
THEN:
• If segment type equals 'OT' then set MCOA found flag, otherwise set MCOA not found flag
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mcoa segment retrieval has been attempted.
Trigger Criteria:
Context: MCOA segment retrieval has been attempted
Applied to: Set MCOA Not Found Flag
Action: Segment retrieval fails or segment type is not 'OT'
Logic Flow:
IF MCOA segment retrieval has been attempted
AND Segment retrieval fails or segment type is not 'OT'
THEN:
• System sets MCOA not found flag to indicate unsuccessful retrieval
R-GCCCCADD-cbl-02919 (+10)File: GCCCCADD.cblBusiness Rule: Get MCOA Address Segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mcoa address segment retrieval is requested.
Trigger Criteria:
Context: A MCOA address segment retrieval is requested
Applied to: Set EDI BOL Key and Sequence Number
Action: The system prepares to retrieve address information
Logic Flow:
IF A MCOA address segment retrieval is requested
AND The system prepares to retrieve address information
THEN:
• The EDI BOL key is set from the stored key for record 55 processing and the MCOA sequence number is used as the sequence identifier
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when system needs to retrieve mcoa address information.
Trigger Criteria:
Context: The system needs to retrieve MCOA address information
Applied to: Set Segment Type to EBSMCOA
Action: Setting up the data retrieval parameters
Logic Flow:
IF The system needs to retrieve MCOA address information
AND Setting up the data retrieval parameters
THEN:
• The segment type is set to 'EBSMCOA' to identify the correct data structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when system is configured to retrieve mcoa segment data.
Trigger Criteria:
Context: The system is configured to retrieve MCOA segment data
Applied to: Set Type to ON for Address
Action: Specifying the type of MCOA data to retrieve
Logic Flow:
IF The system is configured to retrieve MCOA segment data
AND Specifying the type of MCOA data to retrieve
THEN:
• The type is set to 'ON' to indicate address information is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when retrieval parameters are configured for mcoa address data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The retrieval parameters are configured for MCOA address data
Applied to: Call EBCLGIO to Retrieve ON Segment
Action: The system executes the data retrieval operation
Logic Flow:
IF The retrieval parameters are configured for MCOA address data
AND The system executes the data retrieval operation
THEN:
• EBCLGIO is called to retrieve the ON segment from the MCOA data structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when data retrieval operation for mcoa address segment has been executed.
Trigger Criteria:
Context: A data retrieval operation for MCOA address segment has been executed
Applied to: ON Segment Found?
Action: The system checks the retrieval result
Logic Flow:
IF A data retrieval operation for MCOA address segment has been executed
AND The system checks the retrieval result
THEN:
• If the status code is spaces, the segment is considered found, otherwise it is not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mcoa address segment has been successfully retrieved.
Trigger Criteria:
Context: The MCOA address segment has been successfully retrieved
Applied to: Extract Address Line 1 from F6-ADDL-NAME-ADDR-1 & Extract Address Line 2 from F6-ADDL-NAME-ADDR-2
Action: The system processes the address information
Logic Flow:
IF The MCOA address segment has been successfully retrieved
AND The system processes the address information
THEN:
• The first address line is extracted from F6-ADDL-NAME-ADDR-1 field and stored in the address info field
• The second address line is extracted from F6-ADDL-NAME-ADDR-2 field and stored in the second address info field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mcoa address segment has been successfully retrieved and processed.
Trigger Criteria:
Context: The MCOA address segment has been successfully retrieved and processed
Applied to: Set Address Found Flag
Action: The system updates the processing status
Logic Flow:
IF The MCOA address segment has been successfully retrieved and processed
AND The system updates the processing status
THEN:
• The address found flag is set to indicate successful retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mcoa address segment could not be retrieved.
Trigger Criteria:
Context: The MCOA address segment could not be retrieved
Applied to: Set Default Address Line 1 to 'NA' & Clear Address Line 2
Action: The system handles the missing address information
Logic Flow:
IF The MCOA address segment could not be retrieved
AND The system handles the missing address information
THEN:
• The first address line is set to 'NA' as a default value
• The second address line is cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mcoa address segment could not be retrieved and default values have been set.
Trigger Criteria:
Context: The MCOA address segment could not be retrieved and default values have been set
Applied to: Set Address Not Found Flag
Action: The system updates the processing status
Logic Flow:
IF The MCOA address segment could not be retrieved and default values have been set
AND The system updates the processing status
THEN:
• The address not found flag is set to indicate unsuccessful retrieval
R-GCCCCADD-cbl-02930 (+7)File: GCCCCADD.cblBusiness Rule: Get MCOA City/State Segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when request to retrieve mcoa geographic segment data.
Trigger Criteria:
Context: A request to retrieve MCOA geographic segment data
Applied to: Initialize EBWLGIO Parameters
Action: The system initializes the retrieval parameters
Logic Flow:
IF A request to retrieve MCOA geographic segment data
AND The system initializes the retrieval parameters
THEN:
• The EDI BOL key, MCOA sequence number, segment type as EBSMCOA, type as OC, operator as equals, and function code as GU are set for the geographic data lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when properly initialized ebwlgio parameters for mcoa oc segment retrieval. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Properly initialized EBWLGIO parameters for MCOA OC segment retrieval
Applied to: Call EBCLGIO to Retrieve Segment
Action: The system calls EBCLGIO to retrieve the segment data
Logic Flow:
IF Properly initialized EBWLGIO parameters for MCOA OC segment retrieval
AND The system calls EBCLGIO to retrieve the segment data
THEN:
• The system attempts to fetch the geographic segment data from the EDI BOL database
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when attempt to retrieve mcoa oc geographic segment data.
Trigger Criteria:
Context: An attempt to retrieve MCOA OC geographic segment data
Applied to: Segment Found?
Action: The system checks the status code from the retrieval operation
Logic Flow:
IF An attempt to retrieve MCOA OC geographic segment data
AND The system checks the status code from the retrieval operation
THEN:
• If status code equals spaces, the segment is found; otherwise, the segment is not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when successfully retrieved mcoa oc geographic segment.
Trigger Criteria:
Context: A successfully retrieved MCOA OC geographic segment
Applied to: Extract City Name from F7-CITY-NAME, Extract State/Province Code from F7-STATE-PROV-CODE, Extract Postal Code from F7-POSTAL-CODE, Extract Country Code from F7-COUNTRY-CODE
Action: The system processes the segment data
Logic Flow:
IF A successfully retrieved MCOA OC geographic segment
AND The system processes the segment data
THEN:
• The city name, state/province code, postal code, and country code are extracted from the F7 fields in the segment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when successfully extracted geographic data from mcoa oc segment including city name, state/province code, postal code, and country code.
Trigger Criteria:
Context: Successfully extracted geographic data from MCOA OC segment including city name, state/province code, postal code, and country code
Applied to: Move Data to N4 Address Fields
Action: The system populates the address fields
Logic Flow:
IF Successfully extracted geographic data from MCOA OC segment including city name, state/province code, postal code, and country code
AND The system populates the address fields
THEN:
• The extracted data is moved to the corresponding N4 address fields (N401-CITY-NAME, N402-STATE-PROV-CDE, N403-POSTAL-CDE, N404-COUNTRY-CDE)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when successfully retrieved and processed mcoa oc geographic segment data.
Trigger Criteria:
Context: Successfully retrieved and processed MCOA OC geographic segment data
Applied to: Set Geographic Data Found Flag
Action: The system completes the data extraction and population
Logic Flow:
IF Successfully retrieved and processed MCOA OC geographic segment data
AND The system completes the data extraction and population
THEN:
• The geographic data found flag is set to indicate successful processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mcoa oc geographic segment data is not available or retrieval failed.
Trigger Criteria:
Context: MCOA OC geographic segment data is not available or retrieval failed
Applied to: Clear All N4 Address Fields
Action: The system handles the missing data condition
Logic Flow:
IF MCOA OC geographic segment data is not available or retrieval failed
AND The system handles the missing data condition
THEN:
• All N4 address fields (city name, state/province code, postal code, country code) are cleared to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when mcoa oc geographic segment data could not be retrieved or is not available.
Trigger Criteria:
Context: MCOA OC geographic segment data could not be retrieved or is not available
Applied to: Set Geographic Data Not Found Flag
Action: The system completes the failed retrieval processing
Logic Flow:
IF MCOA OC geographic segment data could not be retrieved or is not available
AND The system completes the failed retrieval processing
THEN:
• The geographic data not found flag is set to indicate unsuccessful processing
R-GCCCCADD-cbl-02938 (+6)File: GCCCCADD.cblBusiness Rule: Search 1: Specific Shipper CHOP + Consignee CHOP + Origin Station + Destination Road + Commodity Code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment root record exists with shipper chop information.
Trigger Criteria:
Context: A shipment root record exists with shipper CHOP information
Applied to: Set Shipper CHOP from SHIPROOT
Action: Preparing crossing table lookup parameters for broker determination
Logic Flow:
IF A shipment root record exists with shipper CHOP information
AND Preparing crossing table lookup parameters for broker determination
THEN:
• The shipper CHOP code from shipment root is assigned to the crossing table search parameter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment root record exists with consignee chop information.
Trigger Criteria:
Context: A shipment root record exists with consignee CHOP information
Applied to: Set Consignee CHOP from SHIPROOT
Action: Preparing crossing table lookup parameters for broker determination
Logic Flow:
IF A shipment root record exists with consignee CHOP information
AND Preparing crossing table lookup parameters for broker determination
THEN:
• The consignee CHOP code from shipment root is assigned to the crossing table search parameter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment root record contains origin station number.
Trigger Criteria:
Context: A shipment root record contains origin station number
Applied to: Convert Origin Station Number to Numeric
Action: Preparing crossing table lookup parameters for broker determination
Logic Flow:
IF A shipment root record contains origin station number
AND Preparing crossing table lookup parameters for broker determination
THEN:
• The origin station number is converted to numeric format and assigned to the crossing table search parameter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment root record contains destination road number.
Trigger Criteria:
Context: A shipment root record contains destination road number
Applied to: Build Destination SPLC Code with 'ROAD' + Road Number
Action: Preparing crossing table lookup parameters for broker determination
Logic Flow:
IF A shipment root record contains destination road number
AND Preparing crossing table lookup parameters for broker determination
THEN:
• The destination road number is converted to numeric format and concatenated with 'ROAD' prefix to form the destination SPLC code
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment commodity record exists with stcc code information.
Trigger Criteria:
Context: A shipment commodity record exists with STCC code information
Applied to: Set Commodity Code from SHIPCOMM
Action: Preparing crossing table lookup parameters for broker determination
Logic Flow:
IF A shipment commodity record exists with STCC code information
AND Preparing crossing table lookup parameters for broker determination
THEN:
• The commodity STCC code from shipment commodity is assigned to the crossing table search parameter
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all crossing table search parameters are populated with shipper chop, consignee chop, origin station number, destination splc code, and commodity code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All crossing table search parameters are populated with shipper CHOP, consignee CHOP, origin station number, destination SPLC code, and commodity code
Applied to: Execute GCCCROS2 Call with Exact Match Parameters
Action: Executing the first crossing table lookup attempt for broker determination
Logic Flow:
IF All crossing table search parameters are populated with shipper CHOP, consignee CHOP, origin station number, destination SPLC code, and commodity code
AND Executing the first crossing table lookup attempt for broker determination
THEN:
• The GCCCROS2 program is called with the exact match parameters to search for broker information
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when crossing table lookup has been executed with exact match parameters.
Trigger Criteria:
Context: A crossing table lookup has been executed with exact match parameters
Applied to: Broker Data Found?
Action: Evaluating the result of the crossing table search
Logic Flow:
IF A crossing table lookup has been executed with exact match parameters
AND Evaluating the result of the crossing table search
THEN:
• If broker data is found, set the data found flag to true, otherwise continue to the next search attempt
Business Justification: Establishes the required business protocol to be followed when crossing table lookup is required for broker assignment and the first lookup attempt with specific shipper chop has failed.
Trigger Criteria:
Context: A crossing table lookup is required for broker assignment AND the first lookup attempt with specific shipper CHOP has failed
Applied to: Set Wildcard Shipper CHOP to '*'
Action: The system performs a second lookup pattern with wildcard shipper CHOP set to '*' while keeping original consignee CHOP, wildcard origin station set to '*', destination road number from shipment root, and commodity code from shipment commodity data
Logic Flow:
IF A crossing table lookup is required for broker assignment AND the first lookup attempt with specific shipper CHOP has failed
AND The system performs a second lookup pattern with wildcard shipper CHOP set to '*' while keeping original consignee CHOP, wildcard origin station set to '*', destination road number from shipment root, and commodity code from shipment commodity data
THEN:
• The crossing table is searched with the wildcard shipper pattern AND if broker data is found then broker information is returned AND if no broker data is found then the system proceeds to the next search pattern
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when crossing table lookup with wildcard shipper chop is being performed.
Trigger Criteria:
Context: A crossing table lookup with wildcard shipper CHOP is being performed
Applied to: Set Wildcard Origin Station to '*'
Action: The system prepares the second search pattern parameters
Logic Flow:
IF A crossing table lookup with wildcard shipper CHOP is being performed
AND The system prepares the second search pattern parameters
THEN:
• The origin station parameter is set to wildcard value '*' to broaden the search criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when crossing table lookup with wildcard shipper chop is being performed and destination road number exists in shipment root data.
Trigger Criteria:
Context: A crossing table lookup with wildcard shipper CHOP is being performed AND destination road number exists in shipment root data
Applied to: Keep Destination Road Number
Action: The system prepares the second search pattern parameters
Logic Flow:
IF A crossing table lookup with wildcard shipper CHOP is being performed AND destination road number exists in shipment root data
AND The system prepares the second search pattern parameters
THEN:
• The destination road number from shipment root is preserved and used in the crossing table lookup with format 'ROAD' plus the 3-digit road number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when crossing table lookup with wildcard shipper chop is being performed and commodity code exists in shipment commodity data.
Trigger Criteria:
Context: A crossing table lookup with wildcard shipper CHOP is being performed AND commodity code exists in shipment commodity data
Applied to: Keep Original Commodity Code
Action: The system prepares the second search pattern parameters
Logic Flow:
IF A crossing table lookup with wildcard shipper CHOP is being performed AND commodity code exists in shipment commodity data
AND The system prepares the second search pattern parameters
THEN:
• The commodity code from shipment commodity data is preserved and used in the crossing table lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when all wildcard search parameters are prepared with wildcard shipper chop, original consignee chop, wildcard origin station, destination road number, and commodity code.
Trigger Criteria:
Context: All wildcard search parameters are prepared with wildcard shipper CHOP, original consignee CHOP, wildcard origin station, destination road number, and commodity code
Applied to: Execute Crossing Table Lookup
Action: The crossing table lookup is executed using GCCCROS2 program
Logic Flow:
IF All wildcard search parameters are prepared with wildcard shipper CHOP, original consignee CHOP, wildcard origin station, destination road number, and commodity code
AND The crossing table lookup is executed using GCCCROS2 program
THEN:
• The crossing table is searched with the wildcard pattern parameters AND the lookup result indicates whether broker data was found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when crossing table lookup with wildcard shipper chop has been executed.
Trigger Criteria:
Context: A crossing table lookup with wildcard shipper CHOP has been executed
Applied to: Broker Data Found?
Action: The system evaluates the lookup result status
Logic Flow:
IF A crossing table lookup with wildcard shipper CHOP has been executed
AND The system evaluates the lookup result status
THEN:
• If broker data is found then the system returns the broker information AND if no broker data is found then the system proceeds to the next search pattern
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when broker data has been found through wildcard crossing table lookup.
Trigger Criteria:
Context: Broker data has been found through wildcard crossing table lookup
Applied to: Return Broker Information
Action: The system processes the successful lookup result
Logic Flow:
IF Broker data has been found through wildcard crossing table lookup
AND The system processes the successful lookup result
THEN:
• The broker information from the crossing table segment is made available for manifest processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when wildcard shipper chop crossing table lookup has been executed and no broker data was found.
Trigger Criteria:
Context: The wildcard shipper CHOP crossing table lookup has been executed AND no broker data was found
Applied to: Proceed to Next Search Pattern
Action: The system evaluates the failed lookup result
Logic Flow:
IF The wildcard shipper CHOP crossing table lookup has been executed AND no broker data was found
AND The system evaluates the failed lookup result
THEN:
• The system proceeds to execute the next search pattern with different wildcard criteria
Business Justification: Establishes the required business protocol to be followed when previous broker lookup attempts with specific shipper chop, origin station, and commodity code have failed to find broker data.
Trigger Criteria:
Context: Previous broker lookup attempts with specific shipper CHOP, origin station, and commodity code have failed to find broker data
Applied to: Set Wildcard for Shipper CHOP
Action: The system executes the final wildcard search by setting wildcard values for shipper CHOP code and origin station while keeping the actual destination station number and commodity code from the shipment
Logic Flow:
IF Previous broker lookup attempts with specific shipper CHOP, origin station, and commodity code have failed to find broker data
AND The system executes the final wildcard search by setting wildcard values for shipper CHOP code and origin station while keeping the actual destination station number and commodity code from the shipment
THEN:
• The crossing table lookup is performed with maximum wildcard criteria to attempt finding any applicable broker assignment for the shipment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when broker lookup is being performed with maximum wildcard criteria.
Trigger Criteria:
Context: A broker lookup is being performed with maximum wildcard criteria
Applied to: Set Wildcard for Shipper CHOP
Action: The system needs to set the shipper CHOP code parameter for the crossing table lookup
Logic Flow:
IF A broker lookup is being performed with maximum wildcard criteria
AND The system needs to set the shipper CHOP code parameter for the crossing table lookup
THEN:
• The shipper CHOP code is set to the Canadian broker wildcard value instead of the actual shipper CHOP from the shipment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when broker lookup is being performed with maximum wildcard criteria and the shipper chop has been set to wildcard.
Trigger Criteria:
Context: A broker lookup is being performed with maximum wildcard criteria and the shipper CHOP has been set to wildcard
Applied to: Set Wildcard for Origin Station
Action: The system needs to set the origin station parameter for the crossing table lookup
Logic Flow:
IF A broker lookup is being performed with maximum wildcard criteria and the shipper CHOP has been set to wildcard
AND The system needs to set the origin station parameter for the crossing table lookup
THEN:
• The origin station is set to the Canadian broker wildcard value instead of the actual origin station number from the shipment
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when broker lookup is being performed with wildcard shipper chop and origin station values.
Trigger Criteria:
Context: A broker lookup is being performed with wildcard shipper CHOP and origin station values
Applied to: Keep Destination Station from Shiproot
Action: The system sets the destination station parameter for the crossing table lookup
Logic Flow:
IF A broker lookup is being performed with wildcard shipper CHOP and origin station values
AND The system sets the destination station parameter for the crossing table lookup
THEN:
• The destination station is set to the actual destination road number from the shipment root data, formatted as 'ROAD' plus the 3-digit road number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when broker lookup is being performed with wildcard shipper chop and origin station values and actual destination station.
Trigger Criteria:
Context: A broker lookup is being performed with wildcard shipper CHOP and origin station values and actual destination station
Applied to: Keep Commodity Code from Shipcomm
Action: The system sets the commodity code parameter for the crossing table lookup
Logic Flow:
IF A broker lookup is being performed with wildcard shipper CHOP and origin station values and actual destination station
AND The system sets the commodity code parameter for the crossing table lookup
THEN:
• The commodity code is set to the actual STCC code from the shipment commodity data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when all crossing table lookup parameters have been set with wildcard shipper chop, wildcard origin station, actual destination station, and actual commodity code.
Trigger Criteria:
Context: All crossing table lookup parameters have been set with wildcard shipper CHOP, wildcard origin station, actual destination station, and actual commodity code
Applied to: Execute Crossing Table Lookup with GCCCROS2
Action: The system executes the crossing table lookup
Logic Flow:
IF All crossing table lookup parameters have been set with wildcard shipper CHOP, wildcard origin station, actual destination station, and actual commodity code
AND The system executes the crossing table lookup
THEN:
• The GCCCROS2 program is called with the configured parameters to search for applicable broker assignment data
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when crossing table lookup with maximum wildcard criteria has been executed.
Trigger Criteria:
Context: The crossing table lookup with maximum wildcard criteria has been executed
Applied to: Broker Data Found?
Action: The system evaluates the lookup result
Logic Flow:
IF The crossing table lookup with maximum wildcard criteria has been executed
AND The system evaluates the lookup result
THEN:
• If the return code indicates data was found, the broker data is considered successfully retrieved, otherwise the lookup is considered unsuccessful
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when crossing table lookup with maximum wildcard criteria has been executed.
Trigger Criteria:
Context: The crossing table lookup with maximum wildcard criteria has been executed
Applied to: Return Success - Broker Data Retrieved
Action: The lookup result indicates that broker data was found
Logic Flow:
IF The crossing table lookup with maximum wildcard criteria has been executed
AND The lookup result indicates that broker data was found
THEN:
• The broker lookup process is marked as successful and the retrieved broker data is available for use
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when crossing table lookup with maximum wildcard criteria has been executed.
Trigger Criteria:
Context: The crossing table lookup with maximum wildcard criteria has been executed
Applied to: Continue to Next Search Strategy
Action: The lookup result indicates that no broker data was found
Logic Flow:
IF The crossing table lookup with maximum wildcard criteria has been executed
AND The lookup result indicates that no broker data was found
THEN:
• The system continues with the next step in the broker assignment process since all crossing table lookup attempts have been exhausted
R-GCCCCADD-cbl-02962 (+9)File: GCCCCADD.cblBusiness Rule: Generate Shipper Required Field Errors
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when record with sequence number is being processed for validation.
Trigger Criteria:
Context: A record with sequence number is being processed for validation
Applied to: Is this Shipper Record? SEQ = 0001
Action: The system checks if this is a shipper or consignee record
Logic Flow:
IF A record with sequence number is being processed for validation
AND The system checks if this is a shipper or consignee record
THEN:
• If sequence number equals 0001 or 0002, proceed with comprehensive validation, otherwise skip validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipper or consignee record is being validated and all address and contact fields are empty.
Trigger Criteria:
Context: A shipper or consignee record is being validated and all address and contact fields are empty
Applied to: Shipper Name Empty?
Action: The entity name field is empty or spaces
Logic Flow:
IF A shipper or consignee record is being validated and all address and contact fields are empty
AND The entity name field is empty or spaces
THEN:
• Generate error message indicating entity name is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when entity record has a name but address, city, state, postal or contact information exists.
Trigger Criteria:
Context: An entity record has a name but address, city, state, postal or contact information exists
Applied to: Shipper Address Empty?
Action: The address field is empty or spaces
Logic Flow:
IF An entity record has a name but address, city, state, postal or contact information exists
AND The address field is empty or spaces
THEN:
• Generate error message indicating address is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity record has address data populated.
Trigger Criteria:
Context: An entity record has address data populated
Applied to: Shipper City Empty?
Action: The city field is empty or spaces
Logic Flow:
IF An entity record has address data populated
AND The city field is empty or spaces
THEN:
• Generate error message indicating city is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity record has address data populated.
Trigger Criteria:
Context: An entity record has address data populated
Applied to: Shipper Country Empty?
Action: The country field is empty or spaces
Logic Flow:
IF An entity record has address data populated
AND The country field is empty or spaces
THEN:
• Generate error message indicating country is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when entity record has country code of canada, usa, or mexico and address data exists.
Trigger Criteria:
Context: An entity record has country code of Canada, USA, or Mexico and address data exists
Applied to: Shipper State Empty?
Action: The state/province field is empty or spaces
Logic Flow:
IF An entity record has country code of Canada, USA, or Mexico and address data exists
AND The state/province field is empty or spaces
THEN:
• Generate error message indicating state/province is required
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record has a postal code provided and address data exists.
Trigger Criteria:
Context: An entity record has a postal code provided and address data exists
Applied to: Shipper Postal Empty?
Action: The postal code length is less than 3 characters
Logic Flow:
IF An entity record has a postal code provided and address data exists
AND The postal code length is less than 3 characters
Business Justification: Dictates the expected operational logic and validation steps when required field validation has failed for an entity record.
Trigger Criteria:
Context: A required field validation has failed for an entity record
Applied to: Shipper Name Required
Action: The system needs to communicate the validation failure
Logic Flow:
IF A required field validation has failed for an entity record
AND The system needs to communicate the validation failure
THEN:
• Generate appropriate error message based on the specific missing field (name, address, city, state, postal, country)
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when validation error has been generated and message index is less than 10.
Trigger Criteria:
Context: A validation error has been generated and message index is less than 10
Applied to: Add Error to Message Array
Action: The system needs to store the error for user notification
Logic Flow:
IF A validation error has been generated and message index is less than 10
AND The system needs to store the error for user notification
THEN:
• Add the error message to the message array, increment message index, and clear temporary message fields
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when one or more validation errors have been detected during record processing.
Trigger Criteria:
Context: One or more validation errors have been detected during record processing
Applied to: Set Return Error Flag
Action: The system completes validation and needs to indicate failure status
Logic Flow:
IF One or more validation errors have been detected during record processing
AND The system completes validation and needs to indicate failure status
THEN:
• Set the return status to error to indicate validation failure
R-GCCCCADD-cbl-02972 (+9)File: GCCCCADD.cblBusiness Rule: Generate Consignee Required Field Errors
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when record with sequence number is being processed.
Trigger Criteria:
Context: A record with sequence number is being processed
Applied to: Is this Consignee Record? SEQ = 0002
Action: The system checks if the record sequence equals 0002
Logic Flow:
IF A record with sequence number is being processed
AND The system checks if the record sequence equals 0002
THEN:
• The system identifies this as a consignee record and proceeds with consignee-specific validation
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when consignee record is being validated.
Trigger Criteria:
Context: A consignee record is being validated
Applied to: All Consignee Fields Empty? Name, Address, City/State/Postal
Action: The consignee name is spaces AND address data is spaces AND city/state/postal data is spaces AND contact data is spaces
Logic Flow:
IF A consignee record is being validated
AND The consignee name is spaces AND address data is spaces AND city/state/postal data is spaces AND contact data is spaces
THEN:
• The system identifies this as a completely empty consignee record requiring all mandatory field error messages
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record with empty mandatory fields is being processed.
Trigger Criteria:
Context: A consignee record with empty mandatory fields is being processed
Applied to: Generate Consignee Name Required Error GCCS-E-GEN-CONSIGNEE-REQ
Action: The consignee name field is spaces
Logic Flow:
IF A consignee record with empty mandatory fields is being processed
AND The consignee name field is spaces
THEN:
• The system generates a consignee required error message using error code GCCS-E-GEN-CONSIGNEE-REQ
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record with empty mandatory fields is being processed.
Trigger Criteria:
Context: A consignee record with empty mandatory fields is being processed
Applied to: Generate Address Required Error GCCS-E-GEN-REQUIRED-N301
Action: The address field is spaces
Logic Flow:
IF A consignee record with empty mandatory fields is being processed
AND The address field is spaces
THEN:
• The system generates an address required error message using error code GCCS-E-GEN-REQUIRED-N301
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record with empty mandatory fields is being processed.
Trigger Criteria:
Context: A consignee record with empty mandatory fields is being processed
Applied to: Generate City Required Error GCCS-E-GEN-REQUIRED-N401
Action: The city field is spaces
Logic Flow:
IF A consignee record with empty mandatory fields is being processed
AND The city field is spaces
THEN:
• The system generates a city required error message using error code GCCS-E-GEN-REQUIRED-N401
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record with empty mandatory fields is being processed.
Trigger Criteria:
Context: A consignee record with empty mandatory fields is being processed
Applied to: Generate State Required Error GCCS-E-GEN-REQUIRED-N402
Action: The state/province field is spaces
Logic Flow:
IF A consignee record with empty mandatory fields is being processed
AND The state/province field is spaces
THEN:
• The system generates a state required error message using error code GCCS-E-GEN-REQUIRED-N402
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record with empty mandatory fields is being processed.
Trigger Criteria:
Context: A consignee record with empty mandatory fields is being processed
Applied to: Generate Postal Required Error GCCS-E-GEN-REQUIRED-N403
Action: The postal code field is spaces
Logic Flow:
IF A consignee record with empty mandatory fields is being processed
AND The postal code field is spaces
THEN:
• The system generates a postal code required error message using error code GCCS-E-GEN-REQUIRED-N403
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when consignee record with empty mandatory fields is being processed.
Trigger Criteria:
Context: A consignee record with empty mandatory fields is being processed
Applied to: Generate Country Required Error GCCS-E-GEN-REQUIRED-N404
Action: The country field is spaces
Logic Flow:
IF A consignee record with empty mandatory fields is being processed
AND The country field is spaces
THEN:
• The system generates a country required error message using error code GCCS-E-GEN-REQUIRED-N404
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when error messages have been generated for missing consignee fields.
Trigger Criteria:
Context: Error messages have been generated for missing consignee fields
Applied to: Add Error Messages to Message Array
Action: The message index is less than 10
Logic Flow:
IF Error messages have been generated for missing consignee fields
AND The message index is less than 10
THEN:
• The system adds each error message to the message array and increments the message index
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when validation errors have been generated and added to the message collection.
Trigger Criteria:
Context: Validation errors have been generated and added to the message collection
Applied to: Set Return Error Flag
Action: Error messages exist for the consignee record
Logic Flow:
IF Validation errors have been generated and added to the message collection
AND Error messages exist for the consignee record
THEN:
• The system sets the return status to error to indicate validation failure
R-GCCCCADD-cbl-02982 (+4)File: GCCCCADD.cblBusiness Rule: Extract City Name from Address String
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when address string containing city, state/province, and postal code in concatenated format.
Trigger Criteria:
Context: An address string containing city, state/province, and postal code in concatenated format
Applied to: Move Address String to Work Area
Action: The system processes the address for customs manifest creation
Logic Flow:
IF An address string containing city, state/province, and postal code in concatenated format
AND The system processes the address for customs manifest creation
THEN:
• The city name component is extracted and moved to the city name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address string containing city, state/province, and postal code information.
Trigger Criteria:
Context: An address string containing city, state/province, and postal code information
Applied to: Extract State/Province Code
Action: The address is being processed for customs manifest
Logic Flow:
IF An address string containing city, state/province, and postal code information
AND The address is being processed for customs manifest
THEN:
• The state/province code is extracted and assigned to the appropriate field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address string containing city, state/province, and postal code information.
Trigger Criteria:
Context: An address string containing city, state/province, and postal code information
Applied to: Extract Postal Code
Action: The address is being processed for customs manifest creation
Logic Flow:
IF An address string containing city, state/province, and postal code information
AND The address is being processed for customs manifest creation
THEN:
• The postal code is extracted and assigned to the postal code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when city name has been extracted from an address string.
Trigger Criteria:
Context: A city name has been extracted from an address string
Applied to: City Name >= 2 Characters?
Action: The city name length is validated
Logic Flow:
IF A city name has been extracted from an address string
AND The city name length is validated
THEN:
• If the city name has fewer than 2 characters, a minimum length error message is generated
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state/province code has been extracted from an address string.
Trigger Criteria:
Context: A state/province code has been extracted from an address string
Applied to: Extract State/Province Code
Action: The country determination process is executed
Logic Flow:
IF A state/province code has been extracted from an address string
AND The country determination process is executed
THEN:
• The corresponding country code is retrieved from the state-country table and assigned to the country field
R-GCCCCADD-cbl-02987 (+5)File: GCCCCADD.cblBusiness Rule: Extract State/Province Code from Address String
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when shipper address is stored in shpr-addr(2) as a concatenated string containing city, state/province, and postal code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A shipper address is stored in SHPR-ADDR(2) as a concatenated string containing city, state/province, and postal code
Applied to: Move Address String to WS-ADDRESS
Action: The system processes shipper address information for customs record creation
Logic Flow:
IF A shipper address is stored in SHPR-ADDR(2) as a concatenated string containing city, state/province, and postal code
AND The system processes shipper address information for customs record creation
THEN:
• The concatenated address string is moved to WS-ADDRESS for parsing into individual components
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when address string has been loaded into ws-address for parsing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An address string has been loaded into WS-ADDRESS for parsing
Applied to: Extract City Name from Address & Extract State/Province Code from Address & Extract Postal Code from Address
Action: The system extracts address components for customs documentation
Logic Flow:
IF An address string has been loaded into WS-ADDRESS for parsing
AND The system extracts address components for customs documentation
THEN:
• The city name component is extracted from WS-ADDRESSand assigned to WS-CITY-NAME, then moved to GCCS-N401-CITY-NAME
• The state/province code component is extracted from WS-ADDRESSand assigned to WS-STATE-PROV-CODE, then moved to GCCS-N402-STATE-PROV-CDE
• The postal code component is extracted from WS-ADDRESSand assigned to WS-POSTAL-CODE, then moved to GCCS-N403-POSTAL-CDE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when state/province code has been extracted from an address string. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A state/province code has been extracted from an address string
Applied to: Move Parsed Components to Output Fields
Action: The system needs to determine the corresponding country for customs purposes
Logic Flow:
IF A state/province code has been extracted from an address string
AND The system needs to determine the corresponding country for customs purposes
THEN:
• The system searches the TB-STATE-COUNTRY table using the state/province code as key and assigns the matching country code to WS-COUNTRY, then moves it to GCCS-N404-COUNTRY-CDE
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when consignee address is stored in cons-data(4) as a concatenated string containing city, state/province, and postal code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A consignee address is stored in CONS-DATA(4) as a concatenated string containing city, state/province, and postal code
Applied to: Move Address String to WS-ADDRESS
Action: The system processes consignee address information for customs record creation
Logic Flow:
IF A consignee address is stored in CONS-DATA(4) as a concatenated string containing city, state/province, and postal code
AND The system processes consignee address information for customs record creation
THEN:
• The concatenated address string is moved to WS-ADDRESS for parsing into individual components
R-GCCCCADD-cbl-02993 (+5)File: GCCCCADD.cblBusiness Rule: Extract Postal Code from Address String
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when address field contains concatenated address information.
Trigger Criteria:
Context: An address field contains concatenated address information
Applied to: Extract City Name Component
Action: The address field is moved to a work area for parsing
Logic Flow:
IF An address field contains concatenated address information
AND The address field is moved to a work area for parsing
THEN:
• The city name component is extracted and stored in the city name field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address field contains concatenated address information with city name already extracted.
Trigger Criteria:
Context: An address field contains concatenated address information with city name already extracted
Applied to: Extract State/Province Code
Action: The address parsing continues to the state/province component
Logic Flow:
IF An address field contains concatenated address information with city name already extracted
AND The address parsing continues to the state/province component
THEN:
• The state or province code is extracted and stored in the state/province code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when address field contains concatenated address information with city and state already extracted.
Trigger Criteria:
Context: An address field contains concatenated address information with city and state already extracted
Applied to: Extract Postal Code Component
Action: The address parsing continues to the postal code component
Logic Flow:
IF An address field contains concatenated address information with city and state already extracted
AND The address parsing continues to the postal code component
THEN:
• The postal code is extracted and stored in the postal code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when postal code has been extracted from an address field.
Trigger Criteria:
Context: A postal code has been extracted from an address field
Applied to: Validate Postal Code Length
Action: The postal code length is validated
Logic Flow:
IF A postal code has been extracted from an address field
AND The postal code length is validated
THEN:
• The system determines if the postal code meets the minimum 5 character requirement
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when postal code has been validated and found to be shorter than 5 characters.
Trigger Criteria:
Context: A postal code has been validated and found to be shorter than 5 characters
Applied to: Pad with Periods to 5 chars
Action: The postal code padding process is executed
Logic Flow:
IF A postal code has been validated and found to be shorter than 5 characters
AND The postal code padding process is executed
THEN:
• The postal code is padded with periods to reach exactly 5 characters in length
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when postal code has been extracted and processed (padded if necessary).
Trigger Criteria:
Context: A postal code has been extracted and processed (padded if necessary)
Applied to: Store Parsed Postal Code
Action: The postal code storage process is executed
Logic Flow:
IF A postal code has been extracted and processed (padded if necessary)
AND The postal code storage process is executed
THEN:
• The processed postal code is stored in the target postal code field
R-GCCCCADD-cbl-02999 (+10)File: GCCCCADD.cblBusiness Rule: Lookup CM Table with Destination Station Number
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when cm table lookup operation is requested.
Trigger Criteria:
Context: A CM table lookup operation is requested
Applied to: Initialize Table Access Parameters
Action: The system begins the lookup process
Logic Flow:
IF A CM table lookup operation is requested
AND The system begins the lookup process
THEN:
• All table access parameters are cleared and initialized to spaces
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when cm table lookup parameters are initialized.
Trigger Criteria:
Context: CM table lookup parameters are initialized
Applied to: Set Function Code to GU
Action: The system prepares for table access
Logic Flow:
IF CM table lookup parameters are initialized
AND The system prepares for table access
THEN:
• The function code is set to GU for unique record retrieval
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when table access function code is set to gu.
Trigger Criteria:
Context: Table access function code is set to GU
Applied to: Set Table ID to 'CM'
Action: The system specifies which table to access
Logic Flow:
IF Table access function code is set to GU
AND The system specifies which table to access
THEN:
• The table ID is set to 'CM' to identify the correct lookup table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when destination station number exists in shipment root data.
Trigger Criteria:
Context: Destination station number exists in shipment root data
Applied to: Convert Destination Station Number to Numeric
Action: The system prepares the search key for CM table lookup
Logic Flow:
IF Destination station number exists in shipment root data
AND The system prepares the search key for CM table lookup
THEN:
• The destination station number is converted to numeric format and stored in working storage
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when destination station number is converted to numeric format.
Trigger Criteria:
Context: Destination station number is converted to numeric format
Applied to: Set Station Number as Search Key
Action: The system sets up the search criteria for CM table
Logic Flow:
IF Destination station number is converted to numeric format
AND The system sets up the search criteria for CM table
THEN:
• The numeric station number is assigned as the sequence ID search key
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when all cm table lookup parameters are configured with station number as search key. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All CM table lookup parameters are configured with station number as search key
Applied to: Call GCCTBIO Table Access
Action: The system executes the table access call
Logic Flow:
IF All CM table lookup parameters are configured with station number as search key
AND The system executes the table access call
THEN:
• GCCTBIO is invoked with the configured parameters to perform the lookup
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when cm table lookup has been executed.
Trigger Criteria:
Context: CM table lookup has been executed
Applied to: Lookup Successful?
Action: The system checks the lookup result status
Logic Flow:
IF CM table lookup has been executed
AND The system checks the lookup result status
THEN:
• The return flag is evaluated to determine if lookup was successful
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when cm table lookup completed successfully.
Trigger Criteria:
Context: CM table lookup completed successfully
Applied to: Move Table Data to GCSTBRTCM
Action: The system processes the returned table data
Logic Flow:
IF CM table lookup completed successfully
AND The system processes the returned table data
THEN:
• The table segment data is moved to GCSTBRTCM structure for further processing
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cm table data is successfully loaded into gcstbrtcm.
Trigger Criteria:
Context: CM table data is successfully loaded into GCSTBRTCM
Applied to: Extract Port Manifest Information
Action: The system processes the CM table information
Logic Flow:
IF CM table data is successfully loaded into GCSTBRTCM
AND The system processes the CM table information
THEN:
• Port manifest upon data is extracted from the CM table record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when port manifest information is extracted from cm table data.
Trigger Criteria:
Context: Port manifest information is extracted from CM table data
Applied to: Set Sub-location Code from CM Data
Action: The system processes the manifest information
Logic Flow:
IF Port manifest information is extracted from CM table data
AND The system processes the manifest information
THEN:
• Sub-location code is set from the CM table sub-location code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when cm table lookup was unsuccessful.
Trigger Criteria:
Context: CM table lookup was unsuccessful
Applied to: Clear Sub-location Code
Action: The system handles the lookup failure
Logic Flow:
IF CM table lookup was unsuccessful
AND The system handles the lookup failure
THEN:
• Sub-location code is cleared to spaces
R-GCCCCADD-cbl-03010 (+9)File: GCCCCADD.cblBusiness Rule: Lookup MC Table with Port Manifest Upon
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when cm table lookup has been completed successfully and returned a port manifest upon value.
Trigger Criteria:
Context: A CM table lookup has been completed successfully and returned a port manifest upon value
Applied to: Initialize Table Search Parameters
Action: The system needs to perform an MC table lookup using the CM port manifest upon value
Logic Flow:
IF A CM table lookup has been completed successfully and returned a port manifest upon value
AND The system needs to perform an MC table lookup using the CM port manifest upon value
THEN:
• The system initializes table search parameters by clearing all search keys and flags
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup operation is being prepared.
Trigger Criteria:
Context: An MC table lookup operation is being prepared
Applied to: Set Function Code to GU
Action: The system needs to specify the database operation type
Logic Flow:
IF An MC table lookup operation is being prepared
AND The system needs to specify the database operation type
THEN:
• The system sets the function code to GU for retrieving a unique record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when table lookup operation is being configured.
Trigger Criteria:
Context: A table lookup operation is being configured
Applied to: Set Table ID to MC
Action: The system needs to specify which table to search
Logic Flow:
IF A table lookup operation is being configured
AND The system needs to specify which table to search
THEN:
• The system sets the table ID to MC to target the manifest customs table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when cm table lookup has returned a port manifest upon value.
Trigger Criteria:
Context: A CM table lookup has returned a port manifest upon value
Applied to: Use CM Port Manifest Upon as Search Key
Action: The system performs an MC table lookup
Logic Flow:
IF A CM table lookup has returned a port manifest upon value
AND The system performs an MC table lookup
THEN:
• The system uses the CM port manifest upon value as the search key for the MC table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when all mc table search parameters have been configured. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All MC table search parameters have been configured
Applied to: Execute GCCTBIO Call
Action: The system executes the table lookup
Logic Flow:
IF All MC table search parameters have been configured
AND The system executes the table lookup
THEN:
• The system calls GCCTBIO with the configured search parameters
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when mc table lookup has been executed.
Trigger Criteria:
Context: An MC table lookup has been executed
Applied to: Search Successful?
Action: The system evaluates the lookup result
Logic Flow:
IF An MC table lookup has been executed
AND The system evaluates the lookup result
THEN:
• The system checks if the return flag indicates successful completion
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mc table lookup has completed successfully.
Trigger Criteria:
Context: An MC table lookup has completed successfully
Applied to: Move Table Segment to GCSTBRTMC
Action: The system processes the successful lookup result
Logic Flow:
IF An MC table lookup has completed successfully
AND The system processes the successful lookup result
THEN:
• The system moves the returned table segment data to the MC table structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Defines the strict business conditions required to proceed when mc table record has been successfully retrieved and moved to the mc structure.
Trigger Criteria:
Context: An MC table record has been successfully retrieved and moved to the MC structure
Applied to: Extract Sub-Location Code from MC Record
Action: The system processes the MC record data
Logic Flow:
IF An MC table record has been successfully retrieved and moved to the MC structure
AND The system processes the MC record data
THEN:
• The system extracts the sub-location code from the MC record
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when sub-location code has been extracted from an mc table record.
Trigger Criteria:
Context: A sub-location code has been extracted from an MC table record
Applied to: Set Sub-Location Code to GCCC Structure
Action: The system updates the customs cargo control information
Logic Flow:
IF A sub-location code has been extracted from an MC table record
AND The system updates the customs cargo control information
THEN:
• The system assigns the extracted sub-location code to the GCCC structure
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when mc table lookup has failed.
Trigger Criteria:
Context: An MC table lookup has failed
Applied to: Set Sub-Location Code to Spaces
Action: The system handles the lookup failure
Logic Flow:
IF An MC table lookup has failed
AND The system handles the lookup failure
THEN:
• The system sets the sub-location code to spaces as a default value
R-GCCCCADD-cbl-03020 (+8)File: GCCCCADD.cblBusiness Rule: Lookup RF Table with Consignee CHOP and Station
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when customs manifest processing request is initiated.
Trigger Criteria:
Context: A customs manifest processing request is initiated
Applied to: Initialize RF Table Search Parameters
Action: The system prepares to lookup customer bonded status in the RF table
Logic Flow:
IF A customs manifest processing request is initiated
AND The system prepares to lookup customer bonded status in the RF table
THEN:
• The RF table search parameters are cleared and initialized to empty values
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when shipment root data contains consignee chop information.
Trigger Criteria:
Context: Shipment root data contains consignee CHOP information
Applied to: Set Consignee CHOP from Shipment
Action: The system prepares RF table lookup parameters
Logic Flow:
IF Shipment root data contains consignee CHOP information
AND The system prepares RF table lookup parameters
THEN:
• The consignee CHOP from shipment root is assigned to the RF table consignee CHOP search field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when destination station number is available from customs manifest data.
Trigger Criteria:
Context: Destination station number is available from customs manifest data
Applied to: Set Station Number from Destination
Action: The system prepares RF table lookup parameters
Logic Flow:
IF Destination station number is available from customs manifest data
AND The system prepares RF table lookup parameters
THEN:
• The destination station number is assigned to the RF table station search field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when table lookup operation is being configured.
Trigger Criteria:
Context: A table lookup operation is being configured
Applied to: Set Table ID to 'RF'
Action: The system needs to search the RF table for customer bonded status
Logic Flow:
IF A table lookup operation is being configured
AND The system needs to search the RF table for customer bonded status
THEN:
• The table identifier is set to 'RF' to specify the Registered Facility table
Rule Belongs to : GCCCCADD.cbl
Business Justification: Establishes the required business protocol to be followed when rf table search parameters are properly configured with consignee chop and station number.
Trigger Criteria:
Context: RF table search parameters are properly configured with consignee CHOP and station number
Applied to: Execute RF Table Search
Action: The system executes the RF table lookup
Logic Flow:
IF RF table search parameters are properly configured with consignee CHOP and station number
AND The system executes the RF table lookup
THEN:
• The table lookup is performed using the GCCTBIO service with the specified search criteria
Rule Belongs to : GCCCCADD.cbl
Business Justification: Governs the functional prerequisites and system routing when rf table lookup has been executed.
Trigger Criteria:
Context: An RF table lookup has been executed
Applied to: RF Record Found?
Action: The system evaluates the lookup results
Logic Flow:
IF An RF table lookup has been executed
AND The system evaluates the lookup results
THEN:
• If the return flag indicates 'SUCCESSFUL', the RF record is considered found, otherwise it is not found
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when rf table record has been successfully found and retrieved.
Trigger Criteria:
Context: An RF table record has been successfully found and retrieved
Applied to: Retrieve Sub-location Code from RF Record
Action: The system processes the RF record data
Logic Flow:
IF An RF table record has been successfully found and retrieved
AND The system processes the RF record data
THEN:
• The sub-location code is extracted from the RF record and assigned to the customs manifest sub-location code field
Rule Belongs to : GCCCCADD.cbl
Business Justification: Ensures correct system behavior and process compliance when rf table record has been successfully found for the consignee and station combination.
Trigger Criteria:
Context: An RF table record has been successfully found for the consignee and station combination
Applied to: Set Customer Bonded Indicator to TRUE
Action: The system updates the customer bonded status
Logic Flow:
IF An RF table record has been successfully found for the consignee and station combination
AND The system updates the customer bonded status
THEN:
• The customer bonded indicator is set to TRUE indicating the customer has bonded facility status
Rule Belongs to : GCCCCADD.cbl
Business Justification: Dictates the expected operational logic and validation steps when no rf table record was found for the consignee and station combination.
Trigger Criteria:
Context: No RF table record was found for the consignee and station combination
Applied to: Set Customer Bonded Indicator to FALSE
Action: The system updates the customer bonded status
Logic Flow:
IF No RF table record was found for the consignee and station combination
AND The system updates the customer bonded status
THEN:
• The customer bonded indicator is set to FALSE indicating the customer does not have bonded facility status
Business Justification: Defines the strict business conditions required to proceed when cargo release process is being initiated.
Trigger Criteria:
Context: A cargo release process is being initiated
Applied to: Set Manual Release Flag
Action: The system processes a manual release request
Logic Flow:
IF A cargo release process is being initiated
AND The system processes a manual release request
THEN:
• The message ID should be set to GCW123 and the manual release flag should be set to true
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo release request contains a cargo control number key. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo release request contains a cargo control number key
Applied to: Copy Cargo Control Number
Action: The system processes the release request
Logic Flow:
IF A cargo release request contains a cargo control number key
AND The system processes the release request
THEN:
• The cargo control number key should be copied to the GCW123 message structure
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manual cargo release is being processed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A manual cargo release is being processed
Applied to: Copy Cargo Control Number
Action: The system prepares the release message
Logic Flow:
IF A manual cargo release is being processed
AND The system prepares the release message
THEN:
• The release quantity field should be set to spaces (cleared)
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo release request contains a release reason. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo release request contains a release reason
Applied to: Copy Release Reason to Comments
Action: The system processes the release request
Logic Flow:
IF A cargo release request contains a release reason
AND The system processes the release request
THEN:
• The release reason should be copied to the GCW123 comments field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo release has been processed.
Trigger Criteria:
Context: A cargo release has been processed
Applied to: Generate Release Notification Message
Action: The cargo is not classified as export cargo
Logic Flow:
IF A cargo release has been processed
AND The cargo is not classified as export cargo
THEN:
• A release notification message (GCT1231E) should be generated and sent
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release is being processed.
Trigger Criteria:
Context: A manifest cancel release is being processed
Applied to: Is CSA Cargo?
Action: The cargo has CSA indicator turned on
Logic Flow:
IF A manifest cancel release is being processed
AND The cargo has CSA indicator turned on
THEN:
• The cargo status must be set to CSA-DLV (CSA Delivery)
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release is being processed.
Trigger Criteria:
Context: A manifest cancel release is being processed
Applied to: Create Audit Trail Information
Action: The status has been determined
Logic Flow:
IF A manifest cancel release is being processed
AND The status has been determined
THEN:
• The system must record the current machine date as unreleased date, current user ID as unreleasing user, and preserve the original release date
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release is being processed.
Trigger Criteria:
Context: A manifest cancel release is being processed
Applied to: Clear Release Information
Action: Audit trail information has been created
Logic Flow:
IF A manifest cancel release is being processed
AND Audit trail information has been created
THEN:
• The system must clear all existing release information fields
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release is being processed.
Trigger Criteria:
Context: A manifest cancel release is being processed
Applied to: Set Unreleasing Reason
Action: Release information has been cleared
Logic Flow:
IF A manifest cancel release is being processed
AND Release information has been cleared
THEN:
• The system must set the unrelease reason in the cargo release reason field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release is being processed.
Trigger Criteria:
Context: A manifest cancel release is being processed
Applied to: Lookup Station Information
Action: Unreleasing reason has been set
Logic Flow:
IF A manifest cancel release is being processed
AND Unreleasing reason has been set
THEN:
• The system must attempt to lookup the station number using the manifest destination station name, andif successful use the looked-up station number, otherwise use the existing destination station number
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release is being processed.
Trigger Criteria:
Context: A manifest cancel release is being processed
Applied to: In-Transit Status Z or E?
Action: The cargo in-transit status is 'Z' (zone) or 'E' (export)
Logic Flow:
IF A manifest cancel release is being processed
AND The cargo in-transit status is 'Z' (zone) or 'E' (export)
THEN:
• The system must update the in-transit status to LOCAL
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release is being processed.
Trigger Criteria:
Context: A manifest cancel release is being processed
Applied to: Is Master Manifest?
Action: The manifest is identified as a master manifest
Logic Flow:
IF A manifest cancel release is being processed
AND The manifest is identified as a master manifest
THEN:
• The system must invoke the master manifest cancel release processing program (GCCCANRL)
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release is being processed and csa indicator is off.
Trigger Criteria:
Context: A manifest cancel release is being processed and CSA indicator is off
Applied to: Original Sent Status Empty OR Follower Manifest?
Action: The original CCN sent status is empty OR the manifest is a follower manifest
Logic Flow:
IF A manifest cancel release is being processed and CSA indicator is off
AND The original CCN sent status is empty OR the manifest is a follower manifest
THEN:
• The cargo status must be set to MANUAL
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release is being processed and csa indicator is off.
Trigger Criteria:
Context: A manifest cancel release is being processed and CSA indicator is off
Applied to: Set Status to SENT
Action: The original CCN sent status is not empty AND the manifest is not a follower manifest
Logic Flow:
IF A manifest cancel release is being processed and CSA indicator is off
AND The original CCN sent status is not empty AND the manifest is not a follower manifest
THEN:
• The cargo status must be set to SENT
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest cancel release has been processed.
Trigger Criteria:
Context: A manifest cancel release has been processed
Applied to: Create Cargo Release Removal Log
Action: All status updates and master manifest processing (if applicable) are complete
Logic Flow:
IF A manifest cancel release has been processed
AND All status updates and master manifest processing (if applicable) are complete
THEN:
• The system must create a cargo release removal log entry with action code LOG-CARGO-RELEASE-REMOVEDand spawn the logging message (GCT1051E)
R-GCCCCREL-cbl-00028File: GCCCCREL.cblBusiness Rule: CSA Cargo Status Management
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo release cancellation is being processed.
Trigger Criteria:
Context: A cargo release cancellation is being processed
Applied to: Set Cargo Status to CSA-DLV
Action: The CSA indicator is turned on for the cargo
Logic Flow:
IF A cargo release cancellation is being processed
AND The CSA indicator is turned on for the cargo
THEN:
• The cargo status must be set to CSA-DLV (CSA Delivery)
R-GCCCCREL-cbl-00029 (+2)File: GCCCCREL.cblBusiness Rule: Manifest Status Determination
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest cancel release process is being executed.
Trigger Criteria:
Context: A manifest cancel release process is being executed
Applied to: CSA Indicator On?
Action: The CSA indicator is ON
Logic Flow:
IF A manifest cancel release process is being executed
AND The CSA indicator is ON
THEN:
• The manifest status should be set to CSA-DLV
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest cancel release process is being executed and csa indicator is off.
Trigger Criteria:
Context: A manifest cancel release process is being executed and CSA indicator is OFF
Applied to: Original Sent Status Empty OR Follower Manifest?
Action: The original CCN sent status is empty OR the manifest is a follower manifest
Logic Flow:
IF A manifest cancel release process is being executed and CSA indicator is OFF
AND The original CCN sent status is empty OR the manifest is a follower manifest
THEN:
• The manifest status should be set to MANUAL
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest cancel release process is being executed and csa indicator is off.
Trigger Criteria:
Context: A manifest cancel release process is being executed and CSA indicator is OFF
Applied to: Set Status to SENT
Action: The original CCN sent status is not empty AND the manifest is not a follower manifest
Logic Flow:
IF A manifest cancel release process is being executed and CSA indicator is OFF
AND The original CCN sent status is not empty AND the manifest is not a follower manifest
Business Justification: Governs the functional prerequisites and system routing when cancel release operation is being processed.
Trigger Criteria:
Context: A cancel release operation is being processed
Applied to: Capture Current Date as Unreleasing Date & Capture Current User ID as Unreleasing User & Clear Previous Release Information
Action: The system processes the cancel release request
Logic Flow:
IF A cancel release operation is being processed
AND The system processes the cancel release request
THEN:
• The current machine date is captured and stored as the unreleasing date
• The current ACF2 user ID is captured and stored as the unreleasing user
• All release information fields are cleared to spaces
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when cancel release operation is being processed and cargo has an existing release date.
Trigger Criteria:
Context: A cancel release operation is being processed and cargo has an existing release date
Applied to: Preserve Original Release Date
Action: The system processes the cancel release request
Logic Flow:
IF A cancel release operation is being processed and cargo has an existing release date
AND The system processes the cancel release request
THEN:
• The original release date is preserved in a separate field before clearing current release information
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when cancel release operation is being processed with an unreleasing reason.
Trigger Criteria:
Context: A cancel release operation is being processed with an unreleasing reason
Applied to: Record Unreleasing Reason
Action: The system processes the cancel release request
Logic Flow:
IF A cancel release operation is being processed with an unreleasing reason
AND The system processes the cancel release request
THEN:
• The unreleasing reason is stored in the cargo release reason field
R-GCCCCREL-cbl-00037 (+7)File: GCCCCREL.cblBusiness Rule: Station Information Lookup
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when station lookup operation needs to be performed.
Trigger Criteria:
Context: A station lookup operation needs to be performed
Applied to: Initialize Station Lookup Parameters
Action: The system prepares to lookup station information
Logic Flow:
IF A station lookup operation needs to be performed
AND The system prepares to lookup station information
THEN:
• All lookup parameters are cleared and function code is set to retrieve data
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when station lookup operation is being performed.
Trigger Criteria:
Context: A station lookup operation is being performed
Applied to: Set Table ID to 'MC' for Station Master
Action: The system needs to specify which table to query
Logic Flow:
IF A station lookup operation is being performed
AND The system needs to specify which table to query
THEN:
• The table ID is set to 'MC' to identify the station master table
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest with a destination station name exists.
Trigger Criteria:
Context: A manifest with a destination station name exists
Applied to: Use Manifest Destination Station Name as Key
Action: The system performs a station lookup
Logic Flow:
IF A manifest with a destination station name exists
AND The system performs a station lookup
THEN:
• The manifest destination station name is used as the search key
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when station lookup parameters are initialized and search key is set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Station lookup parameters are initialized and search key is set
Applied to: Call Station Table Lookup Service
Action: The system needs to retrieve station information
Logic Flow:
IF Station lookup parameters are initialized and search key is set
AND The system needs to retrieve station information
THEN:
• The GCCTBIO service is called with the station lookup parameters
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when station lookup has been performed.
Trigger Criteria:
Context: A station lookup has been performed
Applied to: Extract Station Number from Retrieved Record
Action: The lookup service returns a successful result with return flag equal to '0'
Logic Flow:
IF A station lookup has been performed
AND The lookup service returns a successful result with return flag equal to '0'
THEN:
• The station number is extracted from the retrieved station master record
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when station lookup has been performed.
Trigger Criteria:
Context: A station lookup has been performed
Applied to: Initialize Empty Station Record
Action: The lookup service fails to find the station (return flag is not '0')
Logic Flow:
IF A station lookup has been performed
AND The lookup service fails to find the station (return flag is not '0')
THEN:
• The station master record structure is initialized to empty values
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when station number has been successfully retrieved from the station master table.
Trigger Criteria:
Context: A station number has been successfully retrieved from the station master table
Applied to: Set Station Number for Indexing
Action: The system needs to set the destination station number for indexing
Logic Flow:
IF A station number has been successfully retrieved from the station master table
AND The system needs to set the destination station number for indexing
THEN:
• The retrieved station number is assigned to the destination station number for index field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when station lookup has failed to find the station in the master table.
Trigger Criteria:
Context: A station lookup has failed to find the station in the master table
Applied to: Use Original Destination Station Number
Action: The system needs to assign a destination station number for indexing
Logic Flow:
IF A station lookup has failed to find the station in the master table
AND The system needs to assign a destination station number for indexing
THEN:
• The original destination station number from the manifest is used as the destination station number for index
Business Justification: Ensures correct system behavior and process compliance when cargo manifest is being processed for cancel release. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo manifest is being processed for cancel release
Applied to: Call GCCCANRL Subprogram for Specialized Cancel Release Processing
Action: The manifest is identified as a master manifest type
Logic Flow:
IF A cargo manifest is being processed for cancel release
AND The manifest is identified as a master manifest type
THEN:
• The system calls the GCCCANRL subprogram with the common control block and CCN key to perform specialized master manifest cancel release processing
Business Justification: Governs the functional prerequisites and system routing when cargo release removal operation needs to be logged.
Trigger Criteria:
Context: A cargo release removal operation needs to be logged
Applied to: Initialize Log Entry Structure
Action: The system begins the audit logging process
Logic Flow:
IF A cargo release removal operation needs to be logged
AND The system begins the audit logging process
THEN:
• The log entry structure is initialized to clear any previous data
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when audit log entry is being created for cargo release removal.
Trigger Criteria:
Context: An audit log entry is being created for cargo release removal
Applied to: Set Action Code to 'Cargo Release Removed'
Action: The system sets the action code in the log entry
Logic Flow:
IF An audit log entry is being created for cargo release removal
AND The system sets the action code in the log entry
THEN:
• The action code is set to LOG-CARGO-RELEASE-REMOVED to identify the type of operation
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when audit log entry is being created for cargo release removal.
Trigger Criteria:
Context: An audit log entry is being created for cargo release removal
Applied to: Mark as Canadian Cargo
Action: The system sets the cargo type classification
Logic Flow:
IF An audit log entry is being created for cargo release removal
AND The system sets the cargo type classification
THEN:
• The cargo type is set to GCX105-CA-CARGO to indicate Canadian cargo
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when audit log entry is being created.
Trigger Criteria:
Context: An audit log entry is being created
Applied to: Set Security Level to High Values
Action: The system sets the security level
Logic Flow:
IF An audit log entry is being created
AND The system sets the security level
THEN:
• The security byte is set to HIGH-VALUES to indicate maximum security classification
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when audit log entry is being created. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An audit log entry is being created
Applied to: Copy Current Date to Log
Action: The system records the date of the operation
Logic Flow:
IF An audit log entry is being created
AND The system records the date of the operation
THEN:
• The current machine century and date are copied to GCX105-WORK-CENTURYandGCX105-WORK-YYMMDD, then formatted as GCX105-DATE
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when audit log entry is being created. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An audit log entry is being created
Applied to: Copy Current Time to Log
Action: The system records the time of the operation
Logic Flow:
IF An audit log entry is being created
AND The system records the time of the operation
THEN:
• The current machine time from CC-MACHINE-TIME is copied to GCX105-TIME in the log entry
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo release removal is being logged. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo release removal is being logged
Applied to: Copy Cargo Control Number to Log
Action: The system records the cargo identifier
Logic Flow:
IF A cargo release removal is being logged
AND The system records the cargo identifier
THEN:
• The cargo control number from GCCC-CCN-KEY is copied to GCX105-TRAIN-OR-US-CCN in the log entry
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo release removal operation is being logged. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo release removal operation is being logged
Applied to: Copy Transaction Code to Log
Action: The system records the originating transaction
Logic Flow:
IF A cargo release removal operation is being logged
AND The system records the originating transaction
THEN:
• The transaction code from CC-TRANS-CODE is copied to GCX105-SENDING-TRANSACTION in the log entry
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo release removal is being performed by a user. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo release removal is being performed by a user
Applied to: Copy User ID to Log
Action: The system creates the audit log entry
Logic Flow:
IF A cargo release removal is being performed by a user
AND The system creates the audit log entry
THEN:
• The user ID from CC-ACF2-USERID is copied to GCX105-ACF2-ID in the log entry
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when complete audit log entry has been prepared for cargo release removal.
Trigger Criteria:
Context: A complete audit log entry has been prepared for cargo release removal
Applied to: Send Log Message to Audit System
Action: The system sends the log message to the audit system
Logic Flow:
IF A complete audit log entry has been prepared for cargo release removal
AND The system sends the log message to the audit system
THEN:
• The log entry is transmitted via GCT1051E message to the external audit system for processing
Business Justification: Dictates the expected operational logic and validation steps when cargo release process is initiated.
Trigger Criteria:
Context: A cargo release process is initiated
Applied to: Set Message ID to GCW123
Action: The system prepares release notification message
Logic Flow:
IF A cargo release process is initiated
AND The system prepares release notification message
THEN:
• The message ID is set to GCW123 and manual release flag is set to true
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when release notification message is being prepared. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A release notification message is being prepared
Applied to: Copy Cargo Control Number to Message
Action: The system processes cargo control information
Logic Flow:
IF A release notification message is being prepared
AND The system processes cargo control information
THEN:
• The cargo control number from the release request is copied to the message CCN key field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manual release notification is being prepared.
Trigger Criteria:
Context: A manual release notification is being prepared
Applied to: Clear Release Quantity Field
Action: The system sets up message fields
Logic Flow:
IF A manual release notification is being prepared
AND The system sets up message fields
THEN:
• The release quantity field is cleared to spaces
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when release request contains a release reason. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A release request contains a release reason
Applied to: Copy Release Reason to Comments
Action: The system prepares the notification message
Logic Flow:
IF A release request contains a release reason
AND The system prepares the notification message
THEN:
• The release reason is copied to the message comments field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo release notification is being processed.
Trigger Criteria:
Context: A cargo release notification is being processed
Applied to: Is Cargo Export Type?
Action: The system checks if the cargo is classified as export type
Logic Flow:
IF A cargo release notification is being processed
AND The system checks if the cargo is classified as export type
THEN:
• If cargo is export type, notification generation is skipped; otherwise notification is generated
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when non-export cargo release notification is ready to be sent.
Trigger Criteria:
Context: A non-export cargo release notification is ready to be sent
Applied to: Send Message via CIMS
Action: The system processes the notification request
Logic Flow:
IF A non-export cargo release notification is ready to be sent
AND The system processes the notification request
THEN:
• The GCT1231E message is prepared, sent via CIMS, logged, and the message queue is purged
R-GCCCCREL-cbl-00063 (+4)File: GCCCCREL.cblBusiness Rule: Manifest Data Retrieval
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when manifest data retrieval operation is initiated.
Trigger Criteria:
Context: A manifest data retrieval operation is initiated
Applied to: Setup Retrieval Parameters
Action: The system prepares to access manifest data
Logic Flow:
IF A manifest data retrieval operation is initiated
AND The system prepares to access manifest data
THEN:
• The retrieval parameters are set to target Canadian manifest cargo records with GET UNIQUE function and no index usage
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo control number key is provided in the release request.
Trigger Criteria:
Context: A cargo control number key is provided in the release request
Applied to: Set Cargo Control Number Key
Action: The system prepares to retrieve manifest data
Logic Flow:
IF A cargo control number key is provided in the release request
AND The system prepares to retrieve manifest data
THEN:
• The cargo control number key is assigned to the manifest record key field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest retrieval parameters are configured and cargo control number key is set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Manifest retrieval parameters are configured and cargo control number key is set
Applied to: Call Data Access Service
Action: The system needs to access manifest data
Logic Flow:
IF Manifest retrieval parameters are configured and cargo control number key is set
AND The system needs to access manifest data
THEN:
• The Canadian cargo data access service is called with the configured parameters and manifest record structure
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when data access service call has been executed for manifest retrieval. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A data access service call has been executed for manifest retrieval
Applied to: Manifest Record Found?
Action: The system evaluates the retrieval results
Logic Flow:
IF A data access service call has been executed for manifest retrieval
AND The system evaluates the retrieval results
THEN:
• The system determines whether the manifest data is within valid range and accessible
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest record retrieval attempt has failed.
Trigger Criteria:
Context: A manifest record retrieval attempt has failed
Applied to: Generate Error Message
Action: The manifest data is not found or not within valid range
Logic Flow:
IF A manifest record retrieval attempt has failed
AND The manifest data is not found or not within valid range
THEN:
• An error message 'CAN NOT LOCATE MANIFEST FOR RELEASE/CANCEL RELEASE' is generated and error handling is invoked
R-GCCCCREL-cbl-00068 (+3)File: GCCCCREL.cblBusiness Rule: Manifest Data Update
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest record needs to be updated.
Trigger Criteria:
Context: A manifest record needs to be updated
Applied to: Initialize Update Parameters
Action: The system begins the update process
Logic Flow:
IF A manifest record needs to be updated
AND The system begins the update process
THEN:
• All update control parameters are cleared and reset to initial state
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is preparing to update manifest data.
Trigger Criteria:
Context: The system is preparing to update manifest data
Applied to: Set Target Segment to Canadian Manifest Cargo
Action: The target segment needs to be identified
Logic Flow:
IF The system is preparing to update manifest data
AND The target segment needs to be identified
THEN:
• The system sets the target to Canadian manifest cargo segment (GCSCCRT)
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when target segment has been identified as canadian manifest cargo.
Trigger Criteria:
Context: The target segment has been identified as Canadian manifest cargo
Applied to: Set Function to Replace Record
Action: The update function type needs to be specified
Logic Flow:
IF The target segment has been identified as Canadian manifest cargo
AND The update function type needs to be specified
THEN:
• The system sets the function to replace (REPL) the existing record
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when update parameters are initialized and function is set to replace.
Trigger Criteria:
Context: Update parameters are initialized and function is set to replace
Applied to: Execute Manifest Record Update
Action: The system executes the manifest update
Logic Flow:
IF Update parameters are initialized and function is set to replace
AND The system executes the manifest update
THEN:
• The Canadian manifest cargo record is updated with the modified release information using the GCCCCIO program
R-GCCCCREL-cbl-00072 (+4)File: GCCCCREL.cblBusiness Rule: Create Audit Trail Information
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo release is being canceled.
Trigger Criteria:
Context: A cargo release is being canceled
Applied to: Capture Current Machine Date as Unrelease Date & Record Current User ID as Unreleasing User & Clear Previous Release Information & Set Unrelease Reason Code
Action: The cancel release process is initiated
Logic Flow:
IF A cargo release is being canceled
AND The cancel release process is initiated
THEN:
• The current machine date should be recorded as the unrelease date
• The current user's ACF2 user ID should be recorded as the unreleasing user
• All release information fields should be cleared to spaces
• The unrelease reason should be recorded in the release reason field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo release is being canceled and has an existing release date.
Trigger Criteria:
Context: A cargo release is being canceled and has an existing release date
Applied to: Preserve Original Release Date
Action: The cancel release process is initiated
Logic Flow:
IF A cargo release is being canceled and has an existing release date
AND The cancel release process is initiated
THEN:
• The original release date should be preserved in the original release date field
R-GCCCCREL-cbl-00077 (+6)File: GCCCCREL.cblBusiness Rule: Call Station Table Lookup Service
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when station table lookup is requested. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A station table lookup is requested
Applied to: Initialize Lookup Parameters
Action: The system prepares to call the station lookup service
Logic Flow:
IF A station table lookup is requested
AND The system prepares to call the station lookup service
THEN:
• All lookup parameters are cleared and function code is set to GU (Get Unique)
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when station lookup parameters are being configured.
Trigger Criteria:
Context: Station lookup parameters are being configured
Applied to: Set Table ID to 'MC'
Action: The system needs to identify which table to search
Logic Flow:
IF Station lookup parameters are being configured
AND The system needs to identify which table to search
THEN:
• The table ID is set to 'MC' to indicate station master table
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest record with destination station name exists.
Trigger Criteria:
Context: A manifest record with destination station name exists
Applied to: Set Station Name from Manifest
Action: The system prepares station lookup parameters
Logic Flow:
IF A manifest record with destination station name exists
AND The system prepares station lookup parameters
THEN:
• The manifest destination station name is copied to the lookup key field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when station lookup parameters are properly initialized with table id and station name. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Station lookup parameters are properly initialized with table ID and station name
Applied to: Call GCCTBIO Service
Action: The system needs to retrieve station details
Logic Flow:
IF Station lookup parameters are properly initialized with table ID and station name
AND The system needs to retrieve station details
THEN:
• The GCCTBIO service is called with all required parameters
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when station table lookup service has been called.
Trigger Criteria:
Context: Station table lookup service has been called
Applied to: Station Found?
Action: The system receives a return flag from the lookup service
Logic Flow:
IF Station table lookup service has been called
AND The system receives a return flag from the lookup service
THEN:
• If return flag equals '0' then station is found, otherwise station is not found
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when station lookup was successful with return flag '0'.
Trigger Criteria:
Context: Station lookup was successful with return flag '0'
Applied to: Extract Station Number from Result
Action: The system processes the lookup result
Logic Flow:
IF Station lookup was successful with return flag '0'
AND The system processes the lookup result
THEN:
• The station number from the lookup result is extracted and assigned to the destination station number for index
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when station lookup failed with return flag not equal to '0'.
Trigger Criteria:
Context: Station lookup failed with return flag not equal to '0'
Applied to: Initialize Empty Station Record
Action: The system needs to handle the lookup failure
Logic Flow:
IF Station lookup failed with return flag not equal to '0'
AND The system needs to handle the lookup failure
THEN:
• The station record is initialized to empty values and the existing destination station number is used for indexing
R-GCCCCREL-cbl-00084 (+9)File: GCCCCREL.cblBusiness Rule: Send Log Message to Audit System
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo release removal audit log message is being prepared.
Trigger Criteria:
Context: A cargo release removal audit log message is being prepared
Applied to: Set Security Level to High
Action: The system initializes the security settings for the log message
Logic Flow:
IF A cargo release removal audit log message is being prepared
AND The system initializes the security settings for the log message
THEN:
• The security byte must be set to high values to indicate maximum security level
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when cargo release removal is being logged.
Trigger Criteria:
Context: A cargo release removal is being logged
Applied to: Populate Cargo Control Number
Action: The system prepares the audit log message
Logic Flow:
IF A cargo release removal is being logged
AND The system prepares the audit log message
THEN:
• The cargo control number from the manifest record must be copied to the audit log train or US CCN field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when audit log message is being created for cargo release removal.
Trigger Criteria:
Context: An audit log message is being created for cargo release removal
Applied to: Set Cargo Type as Canadian
Action: The system sets the cargo type classification
Logic Flow:
IF An audit log message is being created for cargo release removal
AND The system sets the cargo type classification
THEN:
• The cargo type must be set to CA-CARGO to indicate Canadian cargo
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo release removal audit log is being prepared.
Trigger Criteria:
Context: A cargo release removal audit log is being prepared
Applied to: Add Transaction Code
Action: The system captures transaction details
Logic Flow:
IF A cargo release removal audit log is being prepared
AND The system captures transaction details
THEN:
• The transaction code from the common communication area must be copied to the sending transaction field in the audit log
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when user performs a cargo release removal action.
Trigger Criteria:
Context: A user performs a cargo release removal action
Applied to: Add User ID
Action: The system creates the audit log entry
Logic Flow:
IF A user performs a cargo release removal action
AND The system creates the audit log entry
THEN:
• The ACF2 user ID from the common communication area must be recorded in the audit log ACF2 ID field
Rule Belongs to : GCCCCREL.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo release removal action is being logged.
Trigger Criteria:
Context: A cargo release removal action is being logged
Applied to: Add Current Date and Time
Action: The system prepares timestamp information
Logic Flow:
IF A cargo release removal action is being logged
AND The system prepares timestamp information
THEN:
• The machine century, date, and time from the common communication area must be copied to the audit log work date and time fields
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when all audit log data elements have been populated.
Trigger Criteria:
Context: All audit log data elements have been populated
Applied to: Format Log Message
Action: The system prepares to send the audit message
Logic Flow:
IF All audit log data elements have been populated
AND The system prepares to send the audit message
THEN:
• The complete audit input structure must be moved to the formatted log message structure
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when formatted audit log message is ready for transmission.
Trigger Criteria:
Context: A formatted audit log message is ready for transmission
Applied to: Send Message to Audit Queue
Action: The system initiates message sending
Logic Flow:
IF A formatted audit log message is ready for transmission
AND The system initiates message sending
THEN:
• The CIMS program must be called with CHNG function to send the message to the alternate PCB queue
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when audit message has been queued for processing.
Trigger Criteria:
Context: An audit message has been queued for processing
Applied to: Write Message to Log
Action: The system writes the message to the log
Logic Flow:
IF An audit message has been queued for processing
AND The system writes the message to the log
THEN:
• The WRITMSGL program must be called with the message code, message content, message length, and module name
Rule Belongs to : GCCCCREL.cbl
Business Justification: Establishes the required business protocol to be followed when audit message has been successfully written to the log system.
Trigger Criteria:
Context: An audit message has been successfully written to the log system
Applied to: Purge Message Queue
Action: The system completes message processing
Logic Flow:
IF An audit message has been successfully written to the log system
AND The system completes message processing
THEN:
• The CIMS program must be called with PURG function to purge the message from the alternate PCB queue
R-GCCCCREL-cbl-00094 (+4)File: GCCCCREL.cblBusiness Rule: Send Message via CIMS
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo release is being processed with message content prepared.
Trigger Criteria:
Context: A cargo release is being processed with message content prepared
Applied to: Send Message to Queue
Action: The release operation is not an export type
Logic Flow:
IF A cargo release is being processed with message content prepared
AND The release operation is not an export type
THEN:
• The system sends a GCT1231E notification message through CIMS messaging system
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when notification message needs to be sent.
Trigger Criteria:
Context: A notification message needs to be sent
Applied to: Initialize CIMS Session
Action: The message sending process begins
Logic Flow:
IF A notification message needs to be sent
AND The message sending process begins
THEN:
• The system calls CIMS with CHNG parameter to initialize the messaging session
Rule Belongs to : GCCCCREL.cbl
Business Justification: Ensures correct system behavior and process compliance when release notification needs to be sent.
Trigger Criteria:
Context: A release notification needs to be sent
Applied to: Prepare Message Content
Action: The message preparation process starts
Logic Flow:
IF A release notification needs to be sent
AND The message preparation process starts
THEN:
• The system copies GCX123-INPUT to GCT1231E-MSGand clears the accept status
Rule Belongs to : GCCCCREL.cbl
Business Justification: Defines the strict business conditions required to proceed when cims session is initialized and message content is prepared.
Trigger Criteria:
Context: The CIMS session is initialized and message content is prepared
Applied to: Send Message to Queue
Action: The actual message transmission occurs
Logic Flow:
IF The CIMS session is initialized and message content is prepared
AND The actual message transmission occurs
THEN:
• The system calls WRITMSGL with message code, content, length and module name parameters
Rule Belongs to : GCCCCREL.cbl
Business Justification: Dictates the expected operational logic and validation steps when message has been sent through cims.
Trigger Criteria:
Context: A message has been sent through CIMS
Applied to: Terminate CIMS Session
Action: The message transmission is complete
Logic Flow:
IF A message has been sent through CIMS
AND The message transmission is complete
THEN:
• The system calls CIMS with PURG parameter to terminate the session
Business Justification: Defines the strict business conditions required to proceed when manifest processing request is initiated with input parameters containing a ccn key.
Trigger Criteria:
Context: A manifest processing request is initiated with input parameters containing a CCN key
Applied to: Set CCN Key from Input Parameter
Action: The initialization process begins
Logic Flow:
IF A manifest processing request is initiated with input parameters containing a CCN key
AND The initialization process begins
THEN:
• The system sets the CCN key from the input parameter to enable manifest data retrieval
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to retrieve manifest data from the database.
Trigger Criteria:
Context: The system needs to retrieve manifest data from the database
Applied to: Set Database Access Parameters
Action: Database access parameters are being configured
Logic Flow:
IF The system needs to retrieve manifest data from the database
AND Database access parameters are being configured
THEN:
• The system sets accept status to 'GE', clears the database interface structure, sets fetch-all flag to true, sets function to GU (Get Unique), and sets index-not-used flag to true
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest processing initialization is starting.
Trigger Criteria:
Context: The manifest processing initialization is starting
Applied to: Set Idler Car Not Found Flag
Action: System flags are being initialized
Logic Flow:
IF The manifest processing initialization is starting
AND System flags are being initialized
THEN:
• The system sets the idler car not found flag to true
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when database access parameters are configured and ccn key is set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Database access parameters are configured and CCN key is set
Applied to: Call Database Access Module GCCCCIO2
Action: The system needs to retrieve manifest data
Logic Flow:
IF Database access parameters are configured and CCN key is set
AND The system needs to retrieve manifest data
THEN:
• The system calls the GCCCCIO2 module with all required parameters including CCCOM, GCWCCIO2, manifest segments, and working storage arrays
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when database access module gccccio2 has been called.
Trigger Criteria:
Context: The database access module GCCCCIO2 has been called
Applied to: Database Access Successful?
Action: The system checks the result of the database operation
Logic Flow:
IF The database access module GCCCCIO2 has been called
AND The system checks the result of the database operation
THEN:
• If the error number field is spaces, the operation is considered successful; otherwise it is considered an error
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when database access completed successfully with no error number.
Trigger Criteria:
Context: Database access completed successfully with no error number
Applied to: Move Retrieved Manifest Data to Working Storage
Action: Manifest data needs to be loaded into working storage
Logic Flow:
IF Database access completed successfully with no error number
AND Manifest data needs to be loaded into working storage
THEN:
• The system moves the first occurrence of GCSCCS53 data from the working storage array to the GCSCCS53 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when database access completed successfully with no error number.
Trigger Criteria:
Context: Database access completed successfully with no error number
Applied to: Move Additional Segment Data to Working Storage
Action: Additional segment data needs to be loaded into working storage
Logic Flow:
IF Database access completed successfully with no error number
AND Additional segment data needs to be loaded into working storage
THEN:
• The system moves the first occurrence of GCSCCS55 data from the working storage array to the GCSCCS55 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when database access operation failed with an error number greater than spaces.
Trigger Criteria:
Context: Database access operation failed with an error number greater than spaces
Applied to: Display Database Error Message
Action: The system needs to handle the database error
Logic Flow:
IF Database access operation failed with an error number greater than spaces
AND The system needs to handle the database error
THEN:
• The system sets the error message to 'UNABLE TO LOCATE MANIFEST IN DATABASE' and calls the error handler 'CERR'
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest data has been successfully retrieved and loaded. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Manifest data has been successfully retrieved and loaded
Applied to: Set Action Code from Input
Action: The system needs to set the action code for processing
Logic Flow:
IF Manifest data has been successfully retrieved and loaded
AND The system needs to set the action code for processing
THEN:
• The system moves the action code from the input parameter GCWS309C-ACT-CDE to the working storage action field WS-ACTION
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when action code has been set and manifest data is loaded.
Trigger Criteria:
Context: The action code has been set and manifest data is loaded
Applied to: Check Automotive Release Requirements
Action: The initialization process needs to complete
Logic Flow:
IF The action code has been set and manifest data is loaded
AND The initialization process needs to complete
THEN:
• The system performs the D210-CHECK-AUTOMOTIVE-RELEASE procedure to validate automotive release requirements
Business Justification: Governs the functional prerequisites and system routing when manifest transaction is being processed with an action code.
Trigger Criteria:
Context: A manifest transaction is being processed with an action code
Applied to: Action Code = '04', '05', or '06'?
Action: The action code is '04', '05', or '06'
Logic Flow:
IF A manifest transaction is being processed with an action code
AND The action code is '04', '05', or '06'
THEN:
• The system should evaluate border arrival date and pre-emanifest status for amendment processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest transaction has action code '04', '05', or '06'.
Trigger Criteria:
Context: A manifest transaction has action code '04', '05', or '06'
Applied to: Border Arrival Date exists AND Not Pre-Emanifest?
Action: The border arrival date is not empty AND the manifest is not a pre-emanifest
Logic Flow:
IF A manifest transaction has action code '04', '05', or '06'
AND The border arrival date is not empty AND the manifest is not a pre-emanifest
THEN:
• The system should apply post-emanifest amendment processing rules
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest has action code '04', '05', or '06' and has border arrival date and is not pre-emanifest.
Trigger Criteria:
Context: A manifest has action code '04', '05', or '06' AND has border arrival date AND is not pre-emanifest
Applied to: Set Purpose Code to 'CO'
Action: Post-emanifest amendment processing is triggered
Logic Flow:
IF A manifest has action code '04', '05', or '06' AND has border arrival date AND is not pre-emanifest
AND Post-emanifest amendment processing is triggered
THEN:
• The transaction purpose code should be set to 'CO'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest qualifies for post-emanifest amendment processing.
Trigger Criteria:
Context: A manifest qualifies for post-emanifest amendment processing
Applied to: Set Post-Emanifest Amendment Flag
Action: The purpose code is set to 'CO'
Logic Flow:
IF A manifest qualifies for post-emanifest amendment processing
AND The purpose code is set to 'CO'
THEN:
• The post-emanifest amendment flag should be set to true
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest transaction is being processed.
Trigger Criteria:
Context: A manifest transaction is being processed
Applied to: Use Original Action Code as Purpose Code
Action: The action code is not '04', '05', or '06' OR border arrival date is empty OR it is a pre-emanifest
Logic Flow:
IF A manifest transaction is being processed
AND The action code is not '04', '05', or '06' OR border arrival date is empty OR it is a pre-emanifest
THEN:
• The original action code should be used as the transaction purpose code
Business Justification: Defines the strict business conditions required to proceed when shipment manifest with consignee chop and commodity code fields.
Trigger Criteria:
Context: A shipment manifest with consignee CHOP and commodity code fields
Applied to: Consignee CHOP and Commodity Code present?
Action: The system checks for automotive release eligibility
Logic Flow:
IF A shipment manifest with consignee CHOP and commodity code fields
AND The system checks for automotive release eligibility
THEN:
• The system should only proceed with AU table lookup if both consignee CHOP and commodity code are not spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when valid consignee chop and commodity code are present.
Trigger Criteria:
Context: Valid consignee CHOP and commodity code are present
Applied to: Access AU Table with CHOP and Commodity Code
Action: The system performs AU table lookup
Logic Flow:
IF Valid consignee CHOP and commodity code are present
AND The system performs AU table lookup
THEN:
• The system should query the AU table with table ID 'AU', CHOP as key-chop, and commodity code as key-commodity
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when au table lookup has been performed with consignee chop and commodity code.
Trigger Criteria:
Context: AU table lookup has been performed with consignee CHOP and commodity code
Applied to: AU Table entry found?
Action: The system checks the lookup result
Logic Flow:
IF AU table lookup has been performed with consignee CHOP and commodity code
AND The system checks the lookup result
THEN:
• The system should set NON-AUTOMOTIVE flag if no matching AU table entry is found, otherwise proceed with automotive type evaluation
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when valid au table entry exists for the shipment.
Trigger Criteria:
Context: A valid AU table entry exists for the shipment
Applied to: Origin Country is US, CA, or blank?
Action: The system evaluates origin country for automotive eligibility
Logic Flow:
IF A valid AU table entry exists for the shipment
AND The system evaluates origin country for automotive eligibility
THEN:
• The system should consider the shipment eligible for automotive processing if origin country is 'US', 'CA', or blank spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when valid au table entry exists and origin country is not us, ca, or blank.
Trigger Criteria:
Context: A valid AU table entry exists and origin country is not US, CA, or blank
Applied to: Origin Country is MX and AU Type 2nd char is 'C'?
Action: The system evaluates Mexican origin shipments
Logic Flow:
IF A valid AU table entry exists and origin country is not US, CA, or blank
AND The system evaluates Mexican origin shipments
THEN:
• The system should consider the shipment eligible for automotive processing if origin country is 'MX' and the second character of AU type is 'C'
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when shipment meets origin country requirements for automotive processing.
Trigger Criteria:
Context: The shipment meets origin country requirements for automotive processing
Applied to: CSA Indicator is OFF?
Action: The system checks CSA indicator status
Logic Flow:
IF The shipment meets origin country requirements for automotive processing
AND The system checks CSA indicator status
THEN:
• The system should only set AUTOMOTIVE flag to TRUE if CSA indicator is OFF, otherwise set NON-AUTOMOTIVE flag
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when all automotive eligibility criteria are satisfied (valid au entry, eligible origin country, csa indicator off).
Trigger Criteria:
Context: All automotive eligibility criteria are satisfied (valid AU entry, eligible origin country, CSA indicator OFF)
Applied to: Set AUTOMOTIVE flag to TRUE
Action: The system finalizes automotive classification
Logic Flow:
IF All automotive eligibility criteria are satisfied (valid AU entry, eligible origin country, CSA indicator OFF)
AND The system finalizes automotive classification
THEN:
• The system should set the AUTOMOTIVE flag to TRUE to enable automotive-specific processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when any automotive eligibility criteria fails (missing chop/commodity, no au entry, ineligible origin country, or csa indicator on).
Trigger Criteria:
Context: Any automotive eligibility criteria fails (missing CHOP/commodity, no AU entry, ineligible origin country, or CSA indicator ON)
Applied to: Set NON-AUTOMOTIVE flag to TRUE
Action: The system finalizes automotive classification
Logic Flow:
IF Any automotive eligibility criteria fails (missing CHOP/commodity, no AU entry, ineligible origin country, or CSA indicator ON)
AND The system finalizes automotive classification
THEN:
• The system should set the NON-AUTOMOTIVE flag to TRUE as the default processing mode
R-GCCS309C-cbl-00059 (+6)File: GCCS309C.cblBusiness Rule: Transmission Number Generation
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when transaction is being processed.
Trigger Criteria:
Context: A transaction is being processed
Applied to: Set Prefix to 036 for GCT036
Action: The transaction type is 'GCT036'
Logic Flow:
IF A transaction is being processed
AND The transaction type is 'GCT036'
THEN:
• The transmission prefix should be set to 036
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when transaction is being processed.
Trigger Criteria:
Context: A transaction is being processed
Applied to: Set Prefix to 002 for GCT0021E
Action: The transaction type is 'GCT0021E'
Logic Flow:
IF A transaction is being processed
AND The transaction type is 'GCT0021E'
THEN:
• The transmission prefix should be set to 002
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when transaction is being processed.
Trigger Criteria:
Context: A transaction is being processed
Applied to: Set Prefix to 125 for GCT1251E
Action: The transaction type is 'GCT1251E'
Logic Flow:
IF A transaction is being processed
AND The transaction type is 'GCT1251E'
THEN:
• The transmission prefix should be set to 125
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when transaction is being processed.
Trigger Criteria:
Context: A transaction is being processed
Applied to: Set Prefix to 011 for GCT0111E
Action: The transaction type is 'GCT0111E'
Logic Flow:
IF A transaction is being processed
AND The transaction type is 'GCT0111E'
THEN:
• The transmission prefix should be set to 011
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when transaction is being processed.
Trigger Criteria:
Context: A transaction is being processed
Applied to: Set Prefix to 901 for Other Transactions
Action: The transaction type is not 'GCT036', 'GCT0021E', 'GCT1251E', or 'GCT0111E'
Logic Flow:
IF A transaction is being processed
AND The transaction type is not 'GCT036', 'GCT0021E', 'GCT1251E', or 'GCT0111E'
THEN:
• The transmission prefix should be set to 901
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when transmission prefix has been determined.
Trigger Criteria:
Context: A transmission prefix has been determined
Applied to: Get Machine Time from System
Action: The system needs to generate a unique transmission number
Logic Flow:
IF A transmission prefix has been determined
AND The system needs to generate a unique transmission number
THEN:
• The current machine time should be retrieved from the system
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when transmission prefix has been determined and machine time has been retrieved.
Trigger Criteria:
Context: A transmission prefix has been determined and machine time has been retrieved
Applied to: Combine Prefix with Machine Time
Action: The system generates the transmission number
Logic Flow:
IF A transmission prefix has been determined and machine time has been retrieved
AND The system generates the transmission number
THEN:
• The transmission number should be created by combining the prefix with the machine time
Business Justification: Defines the strict business conditions required to proceed when manifest transaction needs to be processed.
Trigger Criteria:
Context: A manifest transaction needs to be processed
Applied to: Evaluate Transaction Type
Action: The system evaluates the transaction type from GCWS309C-TRANSACTION
Logic Flow:
IF A manifest transaction needs to be processed
AND The system evaluates the transaction type from GCWS309C-TRANSACTION
THEN:
• The system assigns transmission prefix 036 for GCT036, 002 for GCT0021E, 125 for GCT1251E, 011 for GCT0111E, or 901 for any other transaction type
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when transmission number needs to be generated.
Trigger Criteria:
Context: A transmission number needs to be generated
Applied to: Use Machine Time as Base Transmission Number
Action: The system creates a new transmission
Logic Flow:
IF A transmission number needs to be generated
AND The system creates a new transmission
THEN:
• The system uses the current machine time from CCCOM as the transmission number
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when new transmission needs to be created.
Trigger Criteria:
Context: A new transmission needs to be created
Applied to: Initialize Root Transmission Segment
Action: The system prepares the root transmission segment
Logic Flow:
IF A new transmission needs to be created
AND The system prepares the root transmission segment
THEN:
• The system initializes A9RT-TRANSMISSION-SEGMENT to clear any previous data
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when root transmission segment is being configured.
Trigger Criteria:
Context: A root transmission segment is being configured
Applied to: Set Transaction Set to '309'
Action: The system sets up the transaction details
Logic Flow:
IF A root transmission segment is being configured
AND The system sets up the transaction details
THEN:
• The system assigns '309' as the transaction set type in A9RT-TRANSACTION-SET
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when root transmission segment is being prepared. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A root transmission segment is being prepared
Applied to: Clear Read and Delete Flag
Action: The system configures transmission properties
Logic Flow:
IF A root transmission segment is being prepared
AND The system configures transmission properties
THEN:
• The system sets A9RT-READ-AND-DELETE-FLAG to spaces to prevent automatic deletion
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when transmission creation attempt fails due to duplicate transmission number.
Trigger Criteria:
Context: A transmission creation attempt fails due to duplicate transmission number
Applied to: Creation Successful?
Action: The system receives a non-space status code from CCCOM indicating failure
Logic Flow:
IF A transmission creation attempt fails due to duplicate transmission number
AND The system receives a non-space status code from CCCOM indicating failure
THEN:
• The system increments TRANSMISSION-NUMB by 1 and retries the creation process until successful
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when root transmission segment is fully configured with transmission number and transaction set.
Trigger Criteria:
Context: A root transmission segment is fully configured with transmission number and transaction set
Applied to: Attempt to Create Root Transaction
Action: The system needs to create the root transaction
Logic Flow:
IF A root transmission segment is fully configured with transmission number and transaction set
AND The system needs to create the root transaction
THEN:
• The system calls A200-CREATE-TRANS-ROOT to persist the transmission segment
R-GCCS309C-cbl-00076 (+5)File: GCCS309C.cblBusiness Rule: ST Segment Processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when new st segment needs to be created for edi transmission.
Trigger Criteria:
Context: A new ST segment needs to be created for EDI transmission
Applied to: Initialize ST segment structure
Action: The ST segment processing begins
Logic Flow:
IF A new ST segment needs to be created for EDI transmission
AND The ST segment processing begins
THEN:
• The ST segment structure is initialized, sequence number is incremented by 1, and ST identifier is set to 'ST '
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest transaction is being processed.
Trigger Criteria:
Context: A manifest transaction is being processed
Applied to: Notify Customs?
Action: The system checks if GCWS309C-NOTIFY-CUSTOMS flag is set
Logic Flow:
IF A manifest transaction is being processed
AND The system checks if GCWS309C-NOTIFY-CUSTOMS flag is set
THEN:
• If customs notification is required, proceed to emanifest type check, otherwise skip to transaction type setting
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when customs notification is required for the manifest.
Trigger Criteria:
Context: Customs notification is required for the manifest
Applied to: Pre-Emanifest or Post-Emanifest?
Action: The system evaluates GCCC-NOT-PRE-EMANIFEST flag
Logic Flow:
IF Customs notification is required for the manifest
AND The system evaluates GCCC-NOT-PRE-EMANIFEST flag
THEN:
• IfGCCC-NOT-PRE-EMANIFEST is true, set destination to 5040 (309-DESTINATION-5040), otherwise set destination to standard (309-DESTINATION)
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when st segment is being created for manifest transmission.
Trigger Criteria:
Context: An ST segment is being created for manifest transmission
Applied to: Set transaction type to '309'
Action: The transaction type needs to be assigned
Logic Flow:
IF An ST segment is being created for manifest transmission
AND The transaction type needs to be assigned
THEN:
• The transaction type is set to '309' in the ST-02-TRANSACTION field
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when destination and transaction type have been determined.
Trigger Criteria:
Context: The destination and transaction type have been determined
Applied to: Move destination to ST-01 field
Action: The ST segment fields need to be populated
Logic Flow:
IF The destination and transaction type have been determined
AND The ST segment fields need to be populated
THEN:
• The WORK-DESTINATION value is moved to ST-01-DESTINATION field and '309' is moved to ST-02-TRANSACTION field
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when st segment data has been populated with destination and transaction type.
Trigger Criteria:
Context: The ST segment data has been populated with destination and transaction type
Applied to: Create ST segment in transmission
Action: The segment needs to be added to the transmission
Logic Flow:
IF The ST segment data has been populated with destination and transaction type
AND The segment needs to be added to the transmission
THEN:
• The ST segment is moved to transmission data, sequence number is assigned, and the segment is created in the transmission via C200-CREATE-TRANS-DEPT
Business Justification: Dictates the expected operational logic and validation steps when manifest is being processed for edi transmission.
Trigger Criteria:
Context: A manifest is being processed for EDI transmission
Applied to: Set SCAC code to 'CPRS'
Action: The M10 segment is being created
Logic Flow:
IF A manifest is being processed for EDI transmission
AND The M10 segment is being created
THEN:
• The SCAC code field is set to 'CPRS'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest is being processed for edi transmission.
Trigger Criteria:
Context: A manifest is being processed for EDI transmission
Applied to: Set transport type code to 'R' for Rail
Action: The M10 segment transport type is being set
Logic Flow:
IF A manifest is being processed for EDI transmission
AND The M10 segment transport type is being set
THEN:
• The transport type code is set to 'R' indicating rail transportation
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest is being processed for edi transmission.
Trigger Criteria:
Context: A manifest is being processed for EDI transmission
Applied to: Set quantity to 1
Action: The M10 segment quantity is being set
Logic Flow:
IF A manifest is being processed for EDI transmission
AND The M10 segment quantity is being set
THEN:
• The quantity is set to 1
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has an origin country specified.
Trigger Criteria:
Context: A manifest has an origin country specified
Applied to: Set country code from manifest origin country
Action: The M10 segment country code is being set
Logic Flow:
IF A manifest has an origin country specified
AND The M10 segment country code is being set
THEN:
• The country code is set to the value from the manifest origin country field
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest is being processed for rail transportation.
Trigger Criteria:
Context: A manifest is being processed for rail transportation
Applied to: Set vessel name to 'TRAIN'
Action: The M10 segment vessel name is being set
Logic Flow:
IF A manifest is being processed for rail transportation
AND The M10 segment vessel name is being set
THEN:
• The vessel name is set to 'TRAIN'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has a ccn creation date field.
Trigger Criteria:
Context: A manifest has a CCN creation date field
Applied to: CCN creation date valid?
Action: The flight voyage number needs to be determined
Logic Flow:
IF A manifest has a CCN creation date field
AND The flight voyage number needs to be determined
THEN:
• If the CCN creation date is not numeric or equals zero, use machine date; otherwise use the CCN creation date
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when ccn creation date is not numeric or equals zero.
Trigger Criteria:
Context: The CCN creation date is not numeric or equals zero
Applied to: Use machine date for flight/voyage number
Action: The flight voyage number is being calculated
Logic Flow:
IF The CCN creation date is not numeric or equals zero
AND The flight voyage number is being calculated
THEN:
• The machine century and machine date are concatenated and used as the flight voyage number
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when ccn creation date is numeric and non-zero.
Trigger Criteria:
Context: The CCN creation date is numeric and non-zero
Applied to: Convert CCN creation date to flight/voyage number
Action: The flight voyage number is being calculated
Logic Flow:
IF The CCN creation date is numeric and non-zero
AND The flight voyage number is being calculated
THEN:
• If the year is less than 90, prefix with '20'; otherwise prefix with '19', then convert to Julian format
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest is being processed.
Trigger Criteria:
Context: A manifest is being processed
Applied to: Arrival indicator or specific program?
Action: The manifest type code needs to be determined
Logic Flow:
IF A manifest is being processed
AND The manifest type code needs to be determined
THEN:
• If arrival indicator is 'Y' or the calling program is 'GCX148', set manifest type to 'A' for Arrival
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest is being processed.
Trigger Criteria:
Context: A manifest is being processed
Applied to: Post-emanifest amendment conditions?
Action: The transaction purpose code needs to be determined
Logic Flow:
IF A manifest is being processed
AND The transaction purpose code needs to be determined
THEN:
• If action code is '04', '05', or '06' AND border arrival date exists AND not pre-emanifest, set purpose to 'CO'; otherwise use the action code
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when arrival indicator is 'y' or the calling program is 'gcx148'.
Trigger Criteria:
Context: The arrival indicator is 'Y' or the calling program is 'GCX148'
Applied to: Set manifest type to 'A' for Arrival
Action: The manifest type code is being set
Logic Flow:
IF The arrival indicator is 'Y' or the calling program is 'GCX148'
AND The manifest type code is being set
THEN:
• The manifest type code is set to 'A' indicating an arrival manifest
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest is not for arrival and not processed by gcx148.
Trigger Criteria:
Context: The manifest is not for arrival and not processed by GCX148
Applied to: Canadian customs north train ID exists?
Action: The manifest type code needs to be determined
Logic Flow:
IF The manifest is not for arrival and not processed by GCX148
AND The manifest type code needs to be determined
THEN:
• If Canadian customs north train ID is spaces, check for specific programs; otherwise set to customs type
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when canadian customs north train id is spaces.
Trigger Criteria:
Context: The Canadian customs north train ID is spaces
Applied to: Specific program GCX146 or GCX147?
Action: The manifest type code needs to be determined
Logic Flow:
IF The Canadian customs north train ID is spaces
AND The manifest type code needs to be determined
THEN:
• If the calling program is 'GCX146' or 'GCX147', set to customs type; otherwise set to pre-manifest type
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when either the canadian customs north train id exists or the calling program is 'gcx146' or 'gcx147'.
Trigger Criteria:
Context: Either the Canadian customs north train ID exists or the calling program is 'GCX146' or 'GCX147'
Applied to: Set manifest type to 'C' for Customs
Action: The manifest type code is being set
Logic Flow:
IF Either the Canadian customs north train ID exists or the calling program is 'GCX146' or 'GCX147'
AND The manifest type code is being set
THEN:
• The manifest type code is set to 'C' indicating a customs manifest
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest is not for arrival, not processed by specific customs programs, and has no canadian customs north train id.
Trigger Criteria:
Context: The manifest is not for arrival, not processed by specific customs programs, and has no Canadian customs north train ID
Applied to: Set manifest type to 'P' for Pre-manifest
Action: The manifest type code is being set
Logic Flow:
IF The manifest is not for arrival, not processed by specific customs programs, and has no Canadian customs north train ID
AND The manifest type code is being set
THEN:
• The manifest type code is set to 'P' indicating a pre-manifest
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest has a ccn key.
Trigger Criteria:
Context: A manifest has a CCN key
Applied to: Set reference number to CCN key
Action: The M10 segment reference number is being set
Logic Flow:
IF A manifest has a CCN key
AND The M10 segment reference number is being set
THEN:
• The reference number is set to the CCN key value
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when action code is '04', '05', or '06' and border arrival date is not spaces and the manifest is not pre-emanifest.
Trigger Criteria:
Context: The action code is '04', '05', or '06' AND border arrival date is not spaces AND the manifest is not pre-emanifest
Applied to: Set purpose code to 'CO' for amendment
Action: The transaction purpose code is being set
Logic Flow:
IF The action code is '04', '05', or '06' AND border arrival date is not spaces AND the manifest is not pre-emanifest
AND The transaction purpose code is being set
THEN:
• The purpose code is set to 'CO' and the post-emanifest amendment flag is set to true
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when conditions for post-emanifest amendment are not met.
Trigger Criteria:
Context: The conditions for post-emanifest amendment are not met
Applied to: Set purpose code to action code
Action: The transaction purpose code is being set
Logic Flow:
IF The conditions for post-emanifest amendment are not met
AND The transaction purpose code is being set
THEN:
• The purpose code is set to the original action code value
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has an in-transit status.
Trigger Criteria:
Context: A manifest has an in-transit status
Applied to: In-transit status is 'T'?
Action: The application type needs to be determined
Logic Flow:
IF A manifest has an in-transit status
AND The application type needs to be determined
THEN:
• If in-transit status is 'T', set application type to '29'; otherwise set to '27'
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when in-transit status is 't'.
Trigger Criteria:
Context: The in-transit status is 'T'
Applied to: Set application type to '29'
Action: The application type is being set
Logic Flow:
IF The in-transit status is 'T'
AND The application type is being set
THEN:
• The application type is set to '29'
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when in-transit status is not 't'.
Trigger Criteria:
Context: The in-transit status is not 'T'
Applied to: Set application type to '27'
Action: The application type is being set
Logic Flow:
IF The in-transit status is not 'T'
AND The application type is being set
THEN:
• The application type is set to '27'
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when m10 segment has been populated with data.
Trigger Criteria:
Context: The M10 segment has been populated with data
Applied to: Replace underscores with spaces in segment
Action: The segment is being prepared for transmission
Logic Flow:
IF The M10 segment has been populated with data
AND The segment is being prepared for transmission
THEN:
• All underscore characters in the segment are replaced with spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when m10 segment has been formatted and populated.
Trigger Criteria:
Context: The M10 segment has been formatted and populated
Applied to: Add segment to EDI transmission
Action: The segment is ready for transmission
Logic Flow:
IF The M10 segment has been formatted and populated
AND The segment is ready for transmission
THEN:
• The segment is added to the EDI transmission with an incremented sequence number
Business Justification: Ensures correct system behavior and process compliance when p4 segment processing request is initiated.
Trigger Criteria:
Context: A P4 segment processing request is initiated
Applied to: Initialize P4 segment structure
Action: The system begins P4 segment creation
Logic Flow:
IF A P4 segment processing request is initiated
AND The system begins P4 segment creation
THEN:
• The P4 segment structure is initialized to empty values and the segment identifier is set to 'P4'
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when p4 segment is being processed with manifest data available.
Trigger Criteria:
Context: A P4 segment is being processed with manifest data available
Applied to: Set location ID from manifest from-station name
Action: The system sets the location identifier
Logic Flow:
IF A P4 segment is being processed with manifest data available
AND The system sets the location identifier
THEN:
• The P4 location ID field is populated with the manifest from-station name
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when p4 segment is being processed with destination type information.
Trigger Criteria:
Context: A P4 segment is being processed with destination type information
Applied to: Check destination type
Action: The system evaluates the destination type for ETA date assignment
Logic Flow:
IF A P4 segment is being processed with destination type information
AND The system evaluates the destination type for ETA date assignment
THEN:
• If destination is 309-DESTINATION, use current machine date; otherwise, use border arrival ETA logic
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when p4 segment is being processed and destination type is 309-destination.
Trigger Criteria:
Context: A P4 segment is being processed and destination type is 309-DESTINATION
Applied to: Set ETA date to current machine date
Action: The system assigns the ETA date
Logic Flow:
IF A P4 segment is being processed and destination type is 309-DESTINATION
AND The system assigns the ETA date
THEN:
• The P4 ETA date is set to the concatenation of current machine century and machine date
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when p4 segment is being processed for non-309-destination type.
Trigger Criteria:
Context: A P4 segment is being processed for non-309-DESTINATION type
Applied to: Border arrival ETA exists?
Action: The system checks for existing border arrival ETA
Logic Flow:
IF A P4 segment is being processed for non-309-DESTINATION type
AND The system checks for existing border arrival ETA
THEN:
• If border arrival ETA is spaces or low-values, calculate new ETA; otherwise, use existing ETA
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when p4 segment is being processed and border arrival eta is empty. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A P4 segment is being processed and border arrival ETA is empty
Applied to: Calculate ETA by adding days to waybill date
Action: The system calculates a new ETA date
Logic Flow:
IF A P4 segment is being processed and border arrival ETA is empty
AND The system calculates a new ETA date
THEN:
• The system adds WS-DAYS-FOR-ETA to the waybill date using date calculation service and updates the border arrival ETA if successful
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when p4 segment is being processed and border arrival eta contains valid data.
Trigger Criteria:
Context: A P4 segment is being processed and border arrival ETA contains valid data
Applied to: Use existing border arrival ETA
Action: The system assigns the ETA date
Logic Flow:
IF A P4 segment is being processed and border arrival ETA contains valid data
AND The system assigns the ETA date
THEN:
• The P4 ETA date is set to the existing border arrival ETA value
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when p4 segment is being processed.
Trigger Criteria:
Context: A P4 segment is being processed
Applied to: Set quantity to 1
Action: The system sets the quantity field
Logic Flow:
IF A P4 segment is being processed
AND The system sets the quantity field
THEN:
• The P4 quantity field is set to 1
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when p4 segment is being processed.
Trigger Criteria:
Context: A P4 segment is being processed
Applied to: Clear ID code and time fields
Action: The system sets optional fields
Logic Flow:
IF A P4 segment is being processed
AND The system sets optional fields
THEN:
• The P4 ID code and time fields are set to spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when p4 segment is ready for transmission.
Trigger Criteria:
Context: A P4 segment is ready for transmission
Applied to: Add sequence number
Action: The system assigns sequence numbering
Logic Flow:
IF A P4 segment is ready for transmission
AND The system assigns sequence numbering
THEN:
• The sequence number is incremented by 1 and assigned to the P4 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when p4 segment contains underscore characters.
Trigger Criteria:
Context: A P4 segment contains underscore characters
Applied to: Replace underscores with spaces
Action: The system formats the segment for transmission
Logic Flow:
IF A P4 segment contains underscore characters
AND The system formats the segment for transmission
THEN:
• All underscore characters in the P4 segment are replaced with spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when p4 segment has been formatted and sequenced.
Trigger Criteria:
Context: A P4 segment has been formatted and sequenced
Applied to: Store P4 segment data
Action: The system prepares for transmission
Logic Flow:
IF A P4 segment has been formatted and sequenced
AND The system prepares for transmission
THEN:
• The P4 segment data is moved to the transmission data field
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when p4 segment is ready with transmission data.
Trigger Criteria:
Context: A P4 segment is ready with transmission data
Applied to: Create transmission department record
Action: The system creates the transmission record
Logic Flow:
IF A P4 segment is ready with transmission data
AND The system creates the transmission record
THEN:
• The system calls the transmission department creation process with proper status code
Business Justification: Defines the strict business conditions required to proceed when manifest amendment processing request is initiated.
Trigger Criteria:
Context: A manifest amendment processing request is initiated
Applied to: Initialize M13 segment structure
Action: The M13 segment processing begins
Logic Flow:
IF A manifest amendment processing request is initiated
AND The M13 segment processing begins
THEN:
• The M13 segment structure should be initialized to clear any previous data
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when m13 segment is being created for manifest amendment.
Trigger Criteria:
Context: An M13 segment is being created for manifest amendment
Applied to: Set segment identifier to 'M13'
Action: The segment identifier needs to be set
Logic Flow:
IF An M13 segment is being created for manifest amendment
AND The segment identifier needs to be set
THEN:
• The segment identifier should be set to 'M13'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when m13 manifest amendment segment is being created.
Trigger Criteria:
Context: An M13 manifest amendment segment is being created
Applied to: Set SCAC code to 'CPRS'
Action: The carrier identification needs to be specified
Logic Flow:
IF An M13 manifest amendment segment is being created
AND The carrier identification needs to be specified
THEN:
• The SCAC code should be set to 'CPRS' for Canadian Pacific Railway
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has an originating station name.
Trigger Criteria:
Context: A manifest has an originating station name
Applied to: Set location ID from manifest from-station name
Action: Creating an M13 amendment segment
Logic Flow:
IF A manifest has an originating station name
AND Creating an M13 amendment segment
THEN:
• The location ID should be populated with the manifest from-station name
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has a valid ccn key.
Trigger Criteria:
Context: A manifest has a valid CCN key
Applied to: Set BOL/WB number from CCN key
Action: Creating an M13 amendment segment
Logic Flow:
IF A manifest has a valid CCN key
AND Creating an M13 amendment segment
THEN:
• The BOL/WB number should be set to the CCN key value
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when m13 amendment segment is being created.
Trigger Criteria:
Context: An M13 amendment segment is being created
Applied to: Amendment code exists?
Action: The amendment code needs to be determined
Logic Flow:
IF An M13 amendment segment is being created
AND The amendment code needs to be determined
THEN:
• If amendment code exists and is not spaces or low-values, use the existing code; otherwise use default code '60'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest contains an amendment code that is not spaces or low-values.
Trigger Criteria:
Context: A manifest contains an amendment code that is not spaces or low-values
Applied to: Use existing amendment code from manifest
Action: Creating an M13 amendment segment
Logic Flow:
IF A manifest contains an amendment code that is not spaces or low-values
AND Creating an M13 amendment segment
THEN:
• The existing amendment code from the manifest should be used
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest amendment code is spaces or low-values.
Trigger Criteria:
Context: A manifest amendment code is spaces or low-values
Applied to: Set default amendment code to '60'
Action: Creating an M13 amendment segment
Logic Flow:
IF A manifest amendment code is spaces or low-values
AND Creating an M13 amendment segment
THEN:
• The amendment code should be set to default value '60'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when m13 segment is ready for transmission.
Trigger Criteria:
Context: An M13 segment is ready for transmission
Applied to: Increment sequence number
Action: The segment needs to be sequenced
Logic Flow:
IF An M13 segment is ready for transmission
AND The segment needs to be sequenced
THEN:
• The sequence number should be incremented by 1
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when m13 segment contains underscore characters.
Trigger Criteria:
Context: An M13 segment contains underscore characters
Applied to: Replace underscores with spaces in segment
Action: Preparing the segment for transmission
Logic Flow:
IF An M13 segment contains underscore characters
AND Preparing the segment for transmission
THEN:
• All underscore characters should be replaced with spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when m13 segment has been formatted and sequenced.
Trigger Criteria:
Context: An M13 segment has been formatted and sequenced
Applied to: Store M13 segment in transmission data
Action: The segment is ready for transmission
Logic Flow:
IF An M13 segment has been formatted and sequenced
AND The segment is ready for transmission
THEN:
• The M13 segment should be stored in the transmission data structure
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when m13 segment is stored in transmission data.
Trigger Criteria:
Context: An M13 segment is stored in transmission data
Applied to: Create transmission department record
Action: The segment needs to be processed through the transmission system
Logic Flow:
IF An M13 segment is stored in transmission data
AND The segment needs to be processed through the transmission system
THEN:
• A transmission department record should be created
Business Justification: Defines the strict business conditions required to proceed when system needs to create an m11 segment for bill of lading information.
Trigger Criteria:
Context: The system needs to create an M11 segment for bill of lading information
Applied to: Initialize M11 segment structure
Action: M11 segment processing begins
Logic Flow:
IF The system needs to create an M11 segment for bill of lading information
AND M11 segment processing begins
THEN:
• The M11 segment structure should be initialized to clear any previous data
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when m11 segment is being created for bill of lading information.
Trigger Criteria:
Context: An M11 segment is being created for bill of lading information
Applied to: Set segment identifier to 'M11'
Action: The segment identifier needs to be set
Logic Flow:
IF An M11 segment is being created for bill of lading information
AND The segment identifier needs to be set
THEN:
• The segment identifier should be set to 'M11'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has a ccn key identifier.
Trigger Criteria:
Context: A manifest has a CCN key identifier
Applied to: Set BOL/Waybill number from CCN key
Action: Creating the M11 segment for bill of lading information
Logic Flow:
IF A manifest has a CCN key identifier
AND Creating the M11 segment for bill of lading information
THEN:
• The CCN key should be assigned as the BOL/Waybill number
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has an originating station name.
Trigger Criteria:
Context: A manifest has an originating station name
Applied to: Set location ID from manifest from-station name
Action: Creating the M11 segment location information
Logic Flow:
IF A manifest has an originating station name
AND Creating the M11 segment location information
THEN:
• The manifest from-station name should be assigned as the location identifier
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest contains lading quantity information.
Trigger Criteria:
Context: A manifest contains lading quantity information
Applied to: Set lading quantity from manifest data
Action: Creating the M11 segment quantity information
Logic Flow:
IF A manifest contains lading quantity information
AND Creating the M11 segment quantity information
THEN:
• The manifest lading quantity should be assigned to the M11 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has a lading quantity qualifier.
Trigger Criteria:
Context: A manifest has a lading quantity qualifier
Applied to: Set manifest unit code from quantity qualifier
Action: Creating the M11 segment unit information
Logic Flow:
IF A manifest has a lading quantity qualifier
AND Creating the M11 segment unit information
THEN:
• The lading quantity qualifier should be assigned as the manifest unit code
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest contains weight information.
Trigger Criteria:
Context: A manifest contains weight information
Applied to: Set weight from manifest data
Action: Creating the M11 segment weight information
Logic Flow:
IF A manifest contains weight information
AND Creating the M11 segment weight information
THEN:
• The manifest weight should be assigned to the M11 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest has a weight unit qualifier.
Trigger Criteria:
Context: A manifest has a weight unit qualifier
Applied to: Weight unit is KG?
Action: The weight unit qualifier is 'KG ' or ' KG'
Logic Flow:
IF A manifest has a weight unit qualifier
AND The weight unit qualifier is 'KG ' or ' KG'
THEN:
• The weight unit code should be set to 'K' for kilograms, otherwise set to 'L' for pounds
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest has a consolidated indicator.
Trigger Criteria:
Context: A manifest has a consolidated indicator
Applied to: Shipment is consolidated?
Action: The consolidated indicator is 'Y'
Logic Flow:
IF A manifest has a consolidated indicator
AND The consolidated indicator is 'Y'
THEN:
• The BOL type code should be set to 'Y', otherwise it should be left as spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest has an origin station name.
Trigger Criteria:
Context: A manifest has an origin station name
Applied to: Set place of receipt from origin station name
Action: Creating the M11 segment place of receipt information
Logic Flow:
IF A manifest has an origin station name
AND Creating the M11 segment place of receipt information
THEN:
• The origin station name should be assigned as the place of receipt
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when m11 segment requires a scac code.
Trigger Criteria:
Context: An M11 segment requires a SCAC code
Applied to: Set SCAC code to 'CPRS'
Action: Setting the primary SCAC code
Logic Flow:
IF An M11 segment requires a SCAC code
AND Setting the primary SCAC code
THEN:
• The SCAC code should be set to 'CPRS'
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when m11 segment has additional scac fields.
Trigger Criteria:
Context: An M11 segment has additional SCAC fields
Applied to: Clear additional SCAC fields
Action: Processing the M11 segment
Logic Flow:
IF An M11 segment has additional SCAC fields
AND Processing the M11 segment
THEN:
• The additional SCAC fields should be set to spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when m11 segment is being prepared for transmission.
Trigger Criteria:
Context: An M11 segment is being prepared for transmission
Applied to: Add sequence number
Action: The segment needs a sequence number
Logic Flow:
IF An M11 segment is being prepared for transmission
AND The segment needs a sequence number
THEN:
• The sequence number should be incremented by 1 and assigned to the segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when m11 segment contains underscore characters.
Trigger Criteria:
Context: An M11 segment contains underscore characters
Applied to: Replace underscores with spaces in segment
Action: Preparing the segment for transmission
Logic Flow:
IF An M11 segment contains underscore characters
AND Preparing the segment for transmission
THEN:
• All underscore characters should be replaced with spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when formatted m11 segment is ready for transmission.
Trigger Criteria:
Context: A formatted M11 segment is ready for transmission
Applied to: Store M11 segment in transmission data
Action: Storing the segment data
Logic Flow:
IF A formatted M11 segment is ready for transmission
AND Storing the segment data
THEN:
• The M11 segment should be moved to the transmission data field
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when m11 segment is stored in transmission data with a sequence number.
Trigger Criteria:
Context: An M11 segment is stored in transmission data with a sequence number
Applied to: Create transmission department record
Action: The segment is ready for transmission
Logic Flow:
IF An M11 segment is stored in transmission data with a sequence number
AND The segment is ready for transmission
THEN:
• A transmission department record should be created through the C200-CREATE-TRANS-DEPT procedure
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for n9 reference segments.
Trigger Criteria:
Context: A manifest is being processed for N9 reference segments
Applied to: Destination Type Check
Action: The destination type is 309-DESTINATION-5040
Logic Flow:
IF A manifest is being processed for N9 reference segments
AND The destination type is 309-DESTINATION-5040
THEN:
• Skip ETA and CSA indicator N9 segment creation and proceed directly to previous CCN processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for n9 reference segments.
Trigger Criteria:
Context: A manifest is being processed for N9 reference segments
Applied to: Previous CCN Exists?
Action: Previous CCN (GCCC-PREV-CCN) is not spaces
Logic Flow:
IF A manifest is being processed for N9 reference segments
AND Previous CCN (GCCC-PREV-CCN) is not spaces
THEN:
• Create N9 segment with identifier 'N9', reference qualifier 'XP', and previous CCN as reference number
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest is being processed and destination type is not 309-destination-5040.
Trigger Criteria:
Context: A manifest is being processed and destination type is not 309-DESTINATION-5040
Applied to: Create ETA Reference N9 Segment
Action: Processing N9 reference segments
Logic Flow:
IF A manifest is being processed and destination type is not 309-DESTINATION-5040
AND Processing N9 reference segments
THEN:
• Create N9 segment with identifier 'N9', reference qualifier '76', reference number 'ETD', and border arrival ETA date
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest is being processed for csa indicator n9 segment and destination type is not 309-destination-5040.
Trigger Criteria:
Context: A manifest is being processed for CSA indicator N9 segment and destination type is not 309-DESTINATION-5040
Applied to: CSA Indicator Status
Action: The CSA indicator is on (GCCC-CSA-IND-ON is true)
Logic Flow:
IF A manifest is being processed for CSA indicator N9 segment and destination type is not 309-DESTINATION-5040
AND The CSA indicator is on (GCCC-CSA-IND-ON is true)
THEN:
• Set N9 reference number to '01', otherwise set to '00'
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest has in-transit status 'l' and destination type is not 309-destination-5040.
Trigger Criteria:
Context: A manifest has in-transit status 'L' and destination type is not 309-DESTINATION-5040
Applied to: Access Export Destination Table
Action: Processing in-transit status validation
Logic Flow:
IF A manifest has in-transit status 'L' and destination type is not 309-DESTINATION-5040
AND Processing in-transit status validation
THEN:
• Access table with function code 'GU', table ID 'EX', and destination station number as sequence ID
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for in-transit status and destination type is not 309-destination-5040.
Trigger Criteria:
Context: A manifest is being processed for in-transit status and destination type is not 309-DESTINATION-5040
Applied to: Transit Status Validation
Action: In-transit status is 'T', or (status is 'L' and origin country is not 'CA' and table lookup is successful), or (status is 'E' and origin country is not 'CA')
Logic Flow:
IF A manifest is being processed for in-transit status and destination type is not 309-DESTINATION-5040
AND In-transit status is 'T', or (status is 'L' and origin country is not 'CA' and table lookup is successful), or (status is 'E' and origin country is not 'CA')
THEN:
• Create N9 segment with identifier 'N9', reference qualifier 'KD', and reference number 'IN-TRANSIT'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has additional previous ccns stored in array gccc-prev-add-ccns.
Trigger Criteria:
Context: A manifest has additional previous CCNs stored in array GCCC-PREV-ADD-CCNS
Applied to: Loop Through Additional Previous CCNs
Action: Processing additional previous CCNs from index 1 to 4
Logic Flow:
IF A manifest has additional previous CCNs stored in array GCCC-PREV-ADD-CCNS
AND Processing additional previous CCNs from index 1 to 4
THEN:
• For each non-space CCN, create N9 segment with same reference qualifier 'XP' and the CCN as reference number
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has stored n9 reference data in arrays gccc-n901-ref-num-qual and gccc-n902-ref-num.
Trigger Criteria:
Context: A manifest has stored N9 reference data in arrays GCCC-N901-REF-NUM-QUAL and GCCC-N902-REF-NUM
Applied to: Loop Through Stored N9 References
Action: Processing stored references from index 1 to 10 and reference qualifier is not spaces, high-values, or low-values
Logic Flow:
IF A manifest has stored N9 reference data in arrays GCCC-N901-REF-NUM-QUAL and GCCC-N902-REF-NUM
AND Processing stored references from index 1 to 10 and reference qualifier is not spaces, high-values, or low-values
THEN:
• Create N9 segment with identifier 'N9', stored reference qualifier, and stored reference number
Business Justification: Establishes the required business protocol to be followed when entity records exist in the database with a maximum sequence of gcsccs99-s55-max-seq.
Trigger Criteria:
Context: Entity records exist in the database with a maximum sequence of GCSCCS99-S55-MAX-SEQ
Applied to: Loop through entity records from database
Action: The system processes entity records sequentially from position 1
Logic Flow:
IF Entity records exist in the database with a maximum sequence of GCSCCS99-S55-MAX-SEQ
AND The system processes entity records sequentially from position 1
THEN:
• The system continues processing until it reaches the maximum sequence number or encounters an empty record (spaces or low-values)
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record at a specific sequence position.
Trigger Criteria:
Context: An entity record at a specific sequence position
Applied to: Entity record exists?
Action: The system checks if the entity cargo data is not equal to spaces
Logic Flow:
IF An entity record at a specific sequence position
AND The system checks if the entity cargo data is not equal to spaces
THEN:
• The system proceeds with entity processing if data exists, otherwise skips to the next record
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest with customs notification requirements.
Trigger Criteria:
Context: A manifest with customs notification requirements
Applied to: Destination type check
Action: The system evaluates the destination type
Logic Flow:
IF A manifest with customs notification requirements
AND The system evaluates the destination type
THEN:
• The system classifies as 4040 destination if309-DESTINATION is true, otherwise as 5040 destination
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity record with a 4040 destination type.
Trigger Criteria:
Context: An entity record with a 4040 destination type
Applied to: Validate entity code for 4040 destination
Action: The system validates the entity ID code (GCCS-N101-ENTITY-ID-CDE) against the valid 4040 N1 code table
Logic Flow:
IF An entity record with a 4040 destination type
AND The system validates the entity ID code (GCCS-N101-ENTITY-ID-CDE) against the valid 4040 N1 code table
THEN:
• The system proceeds with processing if the code is valid, otherwise skips the entity record
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity record with a 5040 destination type.
Trigger Criteria:
Context: An entity record with a 5040 destination type
Applied to: Check consignee-importer address mapping
Action: The system processes the entity for consignee-importer address mapping
Logic Flow:
IF An entity record with a 5040 destination type
AND The system processes the entity for consignee-importer address mapping
THEN:
• The system executes the Canadian importer check procedure (N20625-CHECK-CN-IMPORTER)
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record with a 5040 destination type after consignee-importer mapping.
Trigger Criteria:
Context: An entity record with a 5040 destination type after consignee-importer mapping
Applied to: Validate entity code for 5040 destination
Action: The system validates the entity ID code (GCCS-N101-ENTITY-ID-CDE) against the valid 5040 N1 code table
Logic Flow:
IF An entity record with a 5040 destination type after consignee-importer mapping
AND The system validates the entity ID code (GCCS-N101-ENTITY-ID-CDE) against the valid 5040 N1 code table
THEN:
• The system proceeds with address validation if the code is valid, otherwise skips the entity record
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity record with valid entity code for 5040 destination.
Trigger Criteria:
Context: An entity record with valid entity code for 5040 destination
Applied to: Complete address available?
Action: The system checks address completeness for US or Canadian entities
Logic Flow:
IF An entity record with valid entity code for 5040 destination
AND The system checks address completeness for US or Canadian entities
THEN:
• The system requires city name, country code, postal code (for US/CA), and state/province code (for US/CA) to be present, otherwise the entity is considered incomplete
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record with incomplete address information for 5040 destination. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An entity record with incomplete address information for 5040 destination
Applied to: Copy consignee address to importer if incomplete
Action: The address validation fails due to missing required components
Logic Flow:
IF An entity record with incomplete address information for 5040 destination
AND The address validation fails due to missing required components
THEN:
• The system initializes (clears) the entity record (GCSCCS55) to spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when validated entity record with complete address information.
Trigger Criteria:
Context: A validated entity record with complete address information
Applied to: Create N1 entity segment with ID and name
Action: The system creates the N1 entity segment
Logic Flow:
IF A validated entity record with complete address information
AND The system creates the N1 entity segment
THEN:
• The system populates the N1 segment with identifier 'N1', entity ID code, entity name, ID code qualifier, and ID code from the entity record
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity record with n1 segment created.
Trigger Criteria:
Context: An entity record with N1 segment created
Applied to: N3 address data exists?
Action: The system checks for N3 address data availability
Logic Flow:
IF An entity record with N1 segment created
AND The system checks for N3 address data availability
THEN:
• The system proceeds to create N3 segment if address information (GCSCCS55-N3-DATA) is not spaces, otherwise skips to N4 processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record with available n3 address data.
Trigger Criteria:
Context: An entity record with available N3 address data
Applied to: Create N3 address segment
Action: The system creates the N3 address segment
Logic Flow:
IF An entity record with available N3 address data
AND The system creates the N3 address segment
THEN:
• The system populates the N3 segment with identifier 'N3', primary address line, and secondary address line from the entity record
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when entity record with n1 and optionally n3 segments created.
Trigger Criteria:
Context: An entity record with N1 and optionally N3 segments created
Applied to: N4 city/state data exists?
Action: The system checks for N4 location data availability
Logic Flow:
IF An entity record with N1 and optionally N3 segments created
AND The system checks for N4 location data availability
THEN:
• The system proceeds to create N4 segment if location information (GCSCCS55-N4-DATA) is not spaces, otherwise continues to next entity
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record with available n4 location data.
Trigger Criteria:
Context: An entity record with available N4 location data
Applied to: Create N4 location segment with city, state, postal code, country
Action: The system creates the N4 location segment
Logic Flow:
IF An entity record with available N4 location data
AND The system creates the N4 location segment
THEN:
• The system populates city name, postal code, and country code in standard positions, but maps state/province code to position 2 for 309-DESTINATIONor position 7 for other destinations
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when all entity records have been processed.
Trigger Criteria:
Context: All entity records have been processed
Applied to: Create Canadian Pacific Railway entity
Action: The system creates the railway entity segment
Logic Flow:
IF All entity records have been processed
AND The system creates the railway entity segment
THEN:
• The system creates an N1 segment with identifier 'N1', entity ID code 'RR', and name 'CANADIAN PACIFIC RAILWAY'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when canadian pacific railway entity segment has been created.
Trigger Criteria:
Context: The Canadian Pacific Railway entity segment has been created
Applied to: Create CPR address segment
Action: The system creates the CPR address segment
Logic Flow:
IF The Canadian Pacific Railway entity segment has been created
AND The system creates the CPR address segment
THEN:
• The system creates an N3 segment with identifier 'N3' and address '7550 OGDENDALE RD S.E.'
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when canadian pacific railway address segment has been created.
Trigger Criteria:
Context: The Canadian Pacific Railway address segment has been created
Applied to: Create CPR location segment
Action: The system creates the CPR location segment
Logic Flow:
IF The Canadian Pacific Railway address segment has been created
AND The system creates the CPR location segment
THEN:
• The system creates an N4 segment with city 'CALGARY', country 'CA', postal code 'T2C 4X9', and maps province code 'AB' to position 2 for 309-DESTINATIONor position 7 for other destinations
Business Justification: Establishes the required business protocol to be followed when manifest requires m12 segment processing for customs.
Trigger Criteria:
Context: A manifest requires M12 segment processing for customs
Applied to: Set in-bond type code to '61'
Action: The system creates the M12 segment
Logic Flow:
IF A manifest requires M12 segment processing for customs
AND The system creates the M12 segment
THEN:
• The in-bond type code is set to '61'
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when m12 segment processing is required.
Trigger Criteria:
Context: M12 segment processing is required
Applied to: Initialize M12 segment structure
Action: The system begins M12 segment creation
Logic Flow:
IF M12 segment processing is required
AND The system begins M12 segment creation
THEN:
• The M12 segment structure is initialized to clear any previous values
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when m12 segment structure is initialized.
Trigger Criteria:
Context: M12 segment structure is initialized
Applied to: Set segment identifier to 'M12'
Action: The system populates the segment identifier
Logic Flow:
IF M12 segment structure is initialized
AND The system populates the segment identifier
THEN:
• The segment identifier is set to 'M12'
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when m12 segment is populated with required data.
Trigger Criteria:
Context: M12 segment is populated with required data
Applied to: Prepare transmission data
Action: The system prepares the segment for transmission
Logic Flow:
IF M12 segment is populated with required data
AND The system prepares the segment for transmission
THEN:
• The M12 segment data is moved to the transmission data structure
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when m12 segment is ready for transmission.
Trigger Criteria:
Context: M12 segment is ready for transmission
Applied to: Increment sequence number
Action: The system assigns sequence numbering
Logic Flow:
IF M12 segment is ready for transmission
AND The system assigns sequence numbering
THEN:
• The sequence number is incremented by 1 and assigned to the M12 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when m12 segment is prepared with all required data and sequence number.
Trigger Criteria:
Context: M12 segment is prepared with all required data and sequence number
Applied to: Create M12 segment for customs processing
Action: The system creates the segment for transmission
Logic Flow:
IF M12 segment is prepared with all required data and sequence number
AND The system creates the segment for transmission
THEN:
• The M12 segment is created in the transmission system for customs processing
R-GCCS309C-cbl-00204 (+5)File: GCCS309C.cblBusiness Rule: R4 Port Processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest is being processed for r4 origin port segment creation.
Trigger Criteria:
Context: A manifest is being processed for R4 origin port segment creation
Applied to: Set Port Function Code 'O' for Origin / Set Port Function Code 'J' for Junction
Action: The system checks the destination type (309-DESTINATION vs other)
Logic Flow:
IF A manifest is being processed for R4 origin port segment creation
AND The system checks the destination type (309-DESTINATION vs other)
THEN:
• If destination type is 309-DESTINATION, set port function code to 'O' (Origin), otherwise set port function code to 'J' (Junction)
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest is being processed with origin country code and in-transit status.
Trigger Criteria:
Context: A manifest is being processed with origin country code and in-transit status
Applied to: Override Country Code to 'CA'
Action: The in-transit status equals 'R' (return status)
Logic Flow:
IF A manifest is being processed with origin country code and in-transit status
AND The in-transit status equals 'R' (return status)
THEN:
• Override the country code to 'CA' regardless of the original origin country
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest is being processed for customs district r4 segment with port function code '4'.
Trigger Criteria:
Context: A manifest is being processed for customs district R4 segment with port function code '4'
Applied to: Use Manifest From Trans Code / Use Manifest To Trans Code
Action: The system checks the CSA indicator status
Logic Flow:
IF A manifest is being processed for customs district R4 segment with port function code '4'
AND The system checks the CSA indicator status
THEN:
• If CSA indicator is ON, use manifest from transaction code as location identifier, otherwise use manifest to transaction code as location identifier
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest is being processed for destination port r4 segment.
Trigger Criteria:
Context: A manifest is being processed for destination port R4 segment
Applied to: Set Sub-Location Code as Terminal Name
Action: The destination type is NOT 309-DESTINATION
Logic Flow:
IF A manifest is being processed for destination port R4 segment
AND The destination type is NOT 309-DESTINATION
THEN:
• Set the sub-location code as the terminal name in the R4 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest is being processed for final destination r4 segment creation.
Trigger Criteria:
Context: A manifest is being processed for final destination R4 segment creation
Applied to: Set Port Function Code 'E' for Export / Set Port Function Code 'R' for Rail
Action: The system checks the destination type (309-DESTINATION vs other)
Logic Flow:
IF A manifest is being processed for final destination R4 segment creation
AND The system checks the destination type (309-DESTINATION vs other)
THEN:
• If destination type is 309-DESTINATION, set port function code to 'E' (Export), otherwise set port function code to 'R' (Rail destination)
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest is being processed for origin and final destination r4 segments.
Trigger Criteria:
Context: A manifest is being processed for origin and final destination R4 segments
Applied to: Set Destination Station State Code
Action: The system processes state/province codes for different destination types
Logic Flow:
IF A manifest is being processed for origin and final destination R4 segments
AND The system processes state/province codes for different destination types
THEN:
• For 309-DESTINATION, assign origin station state code to R4-08-PROV-STATE-CODE for origin segment, and for non-309 destinations, assign origin station state code to R4-08-PROV-STATE-CODE for origin segment and destination station state code to R4-08-PROV-STATE-CODE for final destination segment
R-GCCS309C-cbl-00210 (+6)File: GCCS309C.cblBusiness Rule: VID Equipment Processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest record with equipment information is being processed for vid segment creation.
Trigger Criteria:
Context: A manifest record with equipment information is being processed for VID segment creation
Applied to: Set Equipment Description to 'CN' - Container / Set Equipment Description to 'RR' - Rail Car
Action: The system checks the conveying car field in the manifest data
Logic Flow:
IF A manifest record with equipment information is being processed for VID segment creation
AND The system checks the conveying car field in the manifest data
THEN:
• If conveying car field contains data, set equipment description code to 'CN' for container, otherwise set to 'RR' for rail car
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when vid segment is being created for equipment identification.
Trigger Criteria:
Context: A VID segment is being created for equipment identification
Applied to: Set Equipment Initial from Manifest
Action: The equipment initial field is populated from manifest data
Logic Flow:
IF A VID segment is being created for equipment identification
AND The equipment initial field is populated from manifest data
THEN:
• The equipment car initial from manifest is assigned to the VID equipment initial field
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when vid segment is being created for equipment identification.
Trigger Criteria:
Context: A VID segment is being created for equipment identification
Applied to: Set Equipment Number from Manifest
Action: The equipment number field is populated from manifest data
Logic Flow:
IF A VID segment is being created for equipment identification
AND The equipment number field is populated from manifest data
THEN:
• The equipment car number from manifest is assigned to the VID equipment number field
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when vid segment requires an equipment initial identifier.
Trigger Criteria:
Context: A VID segment requires an equipment initial identifier
Applied to: Default Equipment Initial to 'NONZ'
Action: The equipment car initial field in manifest data is empty or spaces
Logic Flow:
IF A VID segment requires an equipment initial identifier
AND The equipment car initial field in manifest data is empty or spaces
THEN:
• Set the equipment initial to default value 'NONZ'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when vid segment requires an equipment number identifier.
Trigger Criteria:
Context: A VID segment requires an equipment number identifier
Applied to: Default Equipment Number to '00000000'
Action: The equipment car number field in manifest data is empty, spaces, or contains zeros
Logic Flow:
IF A VID segment requires an equipment number identifier
AND The equipment car number field in manifest data is empty, spaces, or contains zeros
THEN:
• Set the equipment number to default value '00000000'
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when vid segment is being created with equipment status information.
Trigger Criteria:
Context: A VID segment is being created with equipment status information
Applied to: Set Load/Empty Status from Manifest
Action: The load empty status field is populated from manifest data
Logic Flow:
IF A VID segment is being created with equipment status information
AND The load empty status field is populated from manifest data
THEN:
• The load empty status from manifest is assigned to the VID load empty status code field
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when vid segment is being prepared for equipment identification.
Trigger Criteria:
Context: A VID segment is being prepared for equipment identification
Applied to: Clear Seal Number Fields
Action: Seal number fields need to be initialized
Logic Flow:
IF A VID segment is being prepared for equipment identification
AND Seal number fields need to be initialized
THEN:
• Set both seal number fields to spaces as seal data is processed in separate segments
R-GCCS309C-cbl-00217 (+8)File: GCCS309C.cblBusiness Rule: M7 Seal Processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when seal processing operation is in progress with a current seal counter position.
Trigger Criteria:
Context: A seal processing operation is in progress with a current seal counter position
Applied to: Seal counter ≤ 20 AND seal number exists?
Action: The system checks if more seals need to be processed
Logic Flow:
IF A seal processing operation is in progress with a current seal counter position
AND The system checks if more seals need to be processed
THEN:
• Continue processing if seal counter is 20 or less AND the seal number at current position is not empty or low-values, otherwise stop processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when new m7 segment needs to be created for seal numbers.
Trigger Criteria:
Context: A new M7 segment needs to be created for seal numbers
Applied to: Initialize M7 segment
Action: The system starts processing a group of up to 4 seals
Logic Flow:
IF A new M7 segment needs to be created for seal numbers
AND The system starts processing a group of up to 4 seals
THEN:
• Initialize the M7 segment structure to clear any previous data
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when initialized m7 segment structure.
Trigger Criteria:
Context: An initialized M7 segment structure
Applied to: Set M7 identifier
Action: The system needs to identify the segment type
Logic Flow:
IF An initialized M7 segment structure
AND The system needs to identify the segment type
THEN:
• Set the M7 identifier to 'M7 ' to indicate this is a seal number segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when seal counter position pointing to a potential seal number.
Trigger Criteria:
Context: A seal counter position pointing to a potential seal number
Applied to: First seal number valid?
Action: The system checks if the first seal number is valid (not spaces or low-values)
Logic Flow:
IF A seal counter position pointing to a potential seal number
AND The system checks if the first seal number is valid (not spaces or low-values)
THEN:
• If valid, move the seal number to M7-01-SEAL-NUMBER field
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when seal counter incremented to the next position after processing first seal.
Trigger Criteria:
Context: A seal counter incremented to the next position after processing first seal
Applied to: Second seal number valid?
Action: The system checks if the second seal number is valid (not spaces or low-values)
Logic Flow:
IF A seal counter incremented to the next position after processing first seal
AND The system checks if the second seal number is valid (not spaces or low-values)
THEN:
• If valid, move the seal number to M7-02-SEAL-NUMBER field
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when seal counter incremented to the next position after processing second seal.
Trigger Criteria:
Context: A seal counter incremented to the next position after processing second seal
Applied to: Third seal number valid?
Action: The system checks if the third seal number is valid (not spaces or low-values)
Logic Flow:
IF A seal counter incremented to the next position after processing second seal
AND The system checks if the third seal number is valid (not spaces or low-values)
THEN:
• If valid, move the seal number to M7-03-SEAL-NUMBER field
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when seal counter incremented to the next position after processing third seal.
Trigger Criteria:
Context: A seal counter incremented to the next position after processing third seal
Applied to: Fourth seal number valid?
Action: The system checks if the fourth seal number is valid (not spaces or low-values)
Logic Flow:
IF A seal counter incremented to the next position after processing third seal
AND The system checks if the fourth seal number is valid (not spaces or low-values)
THEN:
• If valid, move the seal number to M7-04-SEAL-NUMBER field
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when populated m7 segment with seal numbers.
Trigger Criteria:
Context: A populated M7 segment with seal numbers
Applied to: Format M7 segment
Action: The system prepares the segment for transmission
Logic Flow:
IF A populated M7 segment with seal numbers
AND The system prepares the segment for transmission
THEN:
• Replace all underscore characters with spaces in the M7 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when formatted m7 segment with seal numbers and sequence number incremented.
Trigger Criteria:
Context: A formatted M7 segment with seal numbers and sequence number incremented
Applied to: Create M7 transmission segment
Action: The system creates the transmission segment
Logic Flow:
IF A formatted M7 segment with seal numbers and sequence number incremented
AND The system creates the transmission segment
THEN:
• Move the M7 segment to transmission data, set accept status to spaces, and perform transmission creation
Business Justification: Ensures correct system behavior and process compliance when manifest record requires n10 segment processing.
Trigger Criteria:
Context: A manifest record requires N10 segment processing
Applied to: Initialize N10 segment
Action: The N10 processing begins
Logic Flow:
IF A manifest record requires N10 segment processing
AND The N10 processing begins
THEN:
• The N10 segment structure is initialized to empty values
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest contains lading quantity information.
Trigger Criteria:
Context: A manifest contains lading quantity information
Applied to: Set lading quantity from manifest
Action: Processing the N10 segment for quantity data
Logic Flow:
IF A manifest contains lading quantity information
AND Processing the N10 segment for quantity data
THEN:
• The manifest lading quantity is assigned to the N10 quantity field
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest contains shipper load and count information.
Trigger Criteria:
Context: A manifest contains shipper load and count information
Applied to: Set shipper load and count description
Action: Processing the N10 segment description field
Logic Flow:
IF A manifest contains shipper load and count information
AND Processing the N10 segment description field
THEN:
• The shipper load and count data is assigned to the N10 free form description field
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest has weight unit qualifier of 'kg ' or ' kg'.
Trigger Criteria:
Context: A manifest has weight unit qualifier of 'KG ' or ' KG'
Applied to: Set weight unit code to 'K' for KG
Action: Determining the weight unit code for N10 segment
Logic Flow:
IF A manifest has weight unit qualifier of 'KG ' or ' KG'
AND Determining the weight unit code for N10 segment
THEN:
• The weight unit code is set to 'K'
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest has weight unit qualifier of 'lb ' or ' lb'.
Trigger Criteria:
Context: A manifest has weight unit qualifier of 'LB ' or ' LB'
Applied to: Set weight unit code to 'L' for LB
Action: Determining the weight unit code for N10 segment
Logic Flow:
IF A manifest has weight unit qualifier of 'LB ' or ' LB'
AND Determining the weight unit code for N10 segment
THEN:
• The weight unit code is set to 'L'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest has weight unit qualifier that is not 'kg', ' kg', 'lb', or ' lb'.
Trigger Criteria:
Context: A manifest has weight unit qualifier that is not 'KG', ' KG', 'LB', or ' LB'
Applied to: Set weight unit code to 'E' for other
Action: Determining the weight unit code for N10 segment
Logic Flow:
IF A manifest has weight unit qualifier that is not 'KG', ' KG', 'LB', or ' LB'
AND Determining the weight unit code for N10 segment
THEN:
• The weight unit code is set to 'E'
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest contains weight information.
Trigger Criteria:
Context: A manifest contains weight information
Applied to: Set weight from manifest
Action: Processing the N10 segment weight field
Logic Flow:
IF A manifest contains weight information
AND Processing the N10 segment weight field
THEN:
• The manifest weight value is assigned to the N10 weight field
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest record represents an idler car (ws-idler-car-found is true). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A manifest record represents an idler car (WS-IDLER-CAR-FOUND is true)
Applied to: Set quantity to zero for idler
Action: Setting the quantity for the N10 segment
Logic Flow:
IF A manifest record represents an idler car (WS-IDLER-CAR-FOUND is true)
AND Setting the quantity for the N10 segment
THEN:
• The quantity is set to zero regardless of the original lading quantity
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest record is not an idler car (ws-idler-car-found is false). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A manifest record is not an idler car (WS-IDLER-CAR-FOUND is false)
Applied to: Keep original lading quantity
Action: Setting the quantity for the N10 segment
Logic Flow:
IF A manifest record is not an idler car (WS-IDLER-CAR-FOUND is false)
AND Setting the quantity for the N10 segment
THEN:
• The original lading quantity from the manifest is retained
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest contains lading quantity qualifier information.
Trigger Criteria:
Context: A manifest contains lading quantity qualifier information
Applied to: Set manifest unit code
Action: Processing the N10 segment unit code field
Logic Flow:
IF A manifest contains lading quantity qualifier information
AND Processing the N10 segment unit code field
THEN:
• The lading quantity qualifier is assigned to the N10 manifest unit code field
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when all n10 segment fields have been populated with manifest data.
Trigger Criteria:
Context: All N10 segment fields have been populated with manifest data
Applied to: Create primary N10 segment
Action: Creating the primary N10 transmission segment
Logic Flow:
IF All N10 segment fields have been populated with manifest data
AND Creating the primary N10 transmission segment
THEN:
• The N10 segment is created and added to the transmission with incremented sequence number
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest contains lading description information.
Trigger Criteria:
Context: A manifest contains lading description information
Applied to: Extract lading description from manifest
Action: Processing description data for additional N10 segments
Logic Flow:
IF A manifest contains lading description information
AND Processing description data for additional N10 segments
THEN:
• The lading description is extracted and prepared for segment creation
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when lading description data exists in an array format.
Trigger Criteria:
Context: Lading description data exists in an array format
Applied to: Process description array
Action: Processing the description array for N10 segments
Logic Flow:
IF Lading description data exists in an array format
AND Processing the description array for N10 segments
THEN:
• Each non-empty description line is identified for individual N10 segment creation
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when description processing is in progress with a current description index.
Trigger Criteria:
Context: Description processing is in progress with a current description index
Applied to: More description lines?
Action: Checking for additional description lines to process
Logic Flow:
IF Description processing is in progress with a current description index
AND Checking for additional description lines to process
THEN:
• Continue processing if description index is within bounds and description line is not empty, otherwise end processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when additional description lines exist for processing.
Trigger Criteria:
Context: Additional description lines exist for processing
Applied to: Create additional N10 segment
Action: Creating additional N10 segments for description data
Logic Flow:
IF Additional description lines exist for processing
AND Creating additional N10 segments for description data
THEN:
• A new N10 segment structure is initialized for description-only content
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when n10 segment is being created for description-only content.
Trigger Criteria:
Context: An N10 segment is being created for description-only content
Applied to: Set quantity to zero for description
Action: Setting the quantity field for the description N10 segment
Logic Flow:
IF An N10 segment is being created for description-only content
AND Setting the quantity field for the description N10 segment
THEN:
• The quantity is set to zero since this segment contains only descriptive text
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when specific description line from the description array is being processed.
Trigger Criteria:
Context: A specific description line from the description array is being processed
Applied to: Set description text
Action: Setting the description field for an N10 segment
Logic Flow:
IF A specific description line from the description array is being processed
AND Setting the description field for an N10 segment
THEN:
• The description line text is assigned to the N10 free form description field
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when n10 segment with description text and zero quantity is prepared.
Trigger Criteria:
Context: An N10 segment with description text and zero quantity is prepared
Applied to: Create description N10 segment
Action: Creating the description N10 transmission segment
Logic Flow:
IF An N10 segment with description text and zero quantity is prepared
AND Creating the description N10 transmission segment
THEN:
• The N10 segment is created and added to the transmission with incremented sequence number
Business Justification: Establishes the required business protocol to be followed when lading description expansion process needs to be started.
Trigger Criteria:
Context: A lading description expansion process needs to be started
Applied to: Start Lading Description Expansion
Action: The system begins processing extended lading descriptions
Logic Flow:
IF A lading description expansion process needs to be started
AND The system begins processing extended lading descriptions
THEN:
• The description index is initialized to position 1 to begin sequential processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when system is processing lading descriptions sequentially.
Trigger Criteria:
Context: The system is processing lading descriptions sequentially
Applied to: Description index > 500?
Action: The description index reaches or exceeds position 500
Logic Flow:
IF The system is processing lading descriptions sequentially
AND The description index reaches or exceeds position 500
THEN:
• The description expansion process terminates to prevent exceeding system limits
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is at a specific description index position.
Trigger Criteria:
Context: The system is at a specific description index position
Applied to: Current description position empty?
Action: The description content at the current position is empty or contains only spaces
Logic Flow:
IF The system is at a specific description index position
AND The description content at the current position is empty or contains only spaces
THEN:
• The system skips processing for this position and moves to the next index
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when valid description exists at the current index position.
Trigger Criteria:
Context: A valid description exists at the current index position
Applied to: Create N10 segment for description
Action: The system processes the description content
Logic Flow:
IF A valid description exists at the current index position
AND The system processes the description content
THEN:
• A new N10 segment is created to hold the description data
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when n10 segment is being created for description content.
Trigger Criteria:
Context: An N10 segment is being created for description content
Applied to: Set segment identifier to 'N10'
Action: The segment identifier field needs to be populated
Logic Flow:
IF An N10 segment is being created for description content
AND The segment identifier field needs to be populated
THEN:
• The segment identifier is set to 'N10' to comply with EDI standards
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when n10 segment is being created specifically for description text.
Trigger Criteria:
Context: An N10 segment is being created specifically for description text
Applied to: Set quantity to zero
Action: The quantity field needs to be populated
Logic Flow:
IF An N10 segment is being created specifically for description text
AND The quantity field needs to be populated
THEN:
• The quantity is set to zero since this segment contains only descriptive information
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid description text exists at the current index position.
Trigger Criteria:
Context: Valid description text exists at the current index position
Applied to: Move description text to free form description field
Action: The N10 segment is being populated with content
Logic Flow:
IF Valid description text exists at the current index position
AND The N10 segment is being populated with content
THEN:
• The description text is moved to the free form description field of the N10 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when new n10 segment has been created for description content.
Trigger Criteria:
Context: A new N10 segment has been created for description content
Applied to: Increment sequence number
Action: The segment needs to be assigned a sequence number
Logic Flow:
IF A new N10 segment has been created for description content
AND The segment needs to be assigned a sequence number
THEN:
• The sequence number is incremented by 1 to maintain proper EDI transmission ordering
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when n10 segment has been fully populated with description data and sequence number.
Trigger Criteria:
Context: An N10 segment has been fully populated with description data and sequence number
Applied to: Create dependent segment in transmission
Action: The segment is ready for transmission
Logic Flow:
IF An N10 segment has been fully populated with description data and sequence number
AND The segment is ready for transmission
THEN:
• The segment is created as a dependent segment in the EDI transmission structure
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when current description position has been processed or skipped.
Trigger Criteria:
Context: The current description position has been processed or skipped
Applied to: Increment description index
Action: The system needs to continue with the next description position
Logic Flow:
IF The current description position has been processed or skipped
AND The system needs to continue with the next description position
THEN:
• The description index is incremented by 1 to move to the next position
Business Justification: Governs the functional prerequisites and system routing when manifest contains commodity information.
Trigger Criteria:
Context: A manifest contains commodity information
Applied to: UN Number exists and not 'NA'? AND Commodity danger description exists?
Action: The system checks for hazardous material processing requirements
Logic Flow:
IF A manifest contains commodity information
AND The system checks for hazardous material processing requirements
THEN:
• Processing continues only if UN number exists, is not 'NA', and commodity danger description is present, otherwise hazmat processing is skipped
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest has valid hazardous material information and destination type is determined.
Trigger Criteria:
Context: A manifest has valid hazardous material information and destination type is determined
Applied to: Destination Type Check
Action: The system processes H1 hazardous material segment
Logic Flow:
IF A manifest has valid hazardous material information and destination type is determined
AND The system processes H1 hazardous material segment
THEN:
• If destination is 309-DESTINATION, use full UN number in H1-01 field, otherwise use only last 4 digits of UN number
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when valid hazardous material information exists and destination type is determined.
Trigger Criteria:
Context: Valid hazardous material information exists and destination type is determined
Applied to: Initialize H1 Segment AND Set Full UN Number in H1-01 AND Set Last 4 Digits of UN Number in H1-01 AND Set Commodity Danger Description in H1-04 AND Clear Contact and Packing Group Fields
Action: The system creates H1 hazardous material segment
Logic Flow:
IF Valid hazardous material information exists and destination type is determined
AND The system creates H1 hazardous material segment
THEN:
• Initialize H1 segment, set appropriate UN number format in H1-01, set commodity danger description in H1-04, and clear contact and packing group fields to spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when h1 segment has been created and description lines are available for processing.
Trigger Criteria:
Context: H1 segment has been created and description lines are available for processing
Applied to: Process H2 Description Segments AND Initialize H2 Segment AND Description Line Available? AND Set Description in H2-01
Action: The system processes H2 description segments
Logic Flow:
IF H1 segment has been created and description lines are available for processing
AND The system processes H2 description segments
THEN:
• For each available description line up to 8 lines, initialize H2 segment and set description text in H2-01 field
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when h2 description segment contains a single character in the first position and spaces in positions 2-29.
Trigger Criteria:
Context: An H2 description segment contains a single character in the first position and spaces in positions 2-29
Applied to: Format Single Character Descriptions
Action: The system formats the H2 description field
Logic Flow:
IF An H2 description segment contains a single character in the first position and spaces in positions 2-29
AND The system formats the H2 description field
THEN:
• Append a period after the single character to create proper formatting (e.g., 'A' becomes 'A.')
R-GCCS309C-cbl-00259 (+12)File: GCCS309C.cblBusiness Rule: Idler Car Processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest record with shipment classification data.
Trigger Criteria:
Context: A manifest record with shipment classification data
Applied to: Is Idler Shipment?
Action: The system evaluates the shipment type for idler car processing
Logic Flow:
IF A manifest record with shipment classification data
AND The system evaluates the shipment type for idler car processing
THEN:
• The system identifies whether the shipment is an idler shipment based on the GCCC-IDLER-SHIPMENT flag
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when idler shipment that requires follower car processing.
Trigger Criteria:
Context: An idler shipment that requires follower car processing
Applied to: Notify Customs?
Action: The system checks notification requirements
Logic Flow:
IF An idler shipment that requires follower car processing
AND The system checks notification requirements
THEN:
• The system verifies that customs notification flag GCWS309C-NOTIFY-CUSTOMS is enabled
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when idler shipment requiring customs notification.
Trigger Criteria:
Context: An idler shipment requiring customs notification
Applied to: Initialize Follower Processing
Action: The system begins follower car processing
Logic Flow:
IF An idler shipment requiring customs notification
AND The system begins follower car processing
THEN:
• The system initializes the end-of-followers flag to SPACES and sets the database function to GU (Get Unique)
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when initialized follower processing environment.
Action: The system prepares to search for follower cars
Logic Flow:
IF Initialized follower processing environment
AND The system prepares to search for follower cars
THEN:
• The system assigns the main manifest CCN key (GCCC-CCN-KEY) to the follower search key (GCB0RT-CCN-KEY)
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when search key established for follower cars.
Trigger Criteria:
Context: A search key established for follower cars
Applied to: Get Next Idler Car
Action: The system requests the next idler car record
Logic Flow:
IF A search key established for follower cars
AND The system requests the next idler car record
THEN:
• The system calls the database interface to retrieve the next follower car using the current function code
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when database call to retrieve the next follower car. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A database call to retrieve the next follower car
Applied to: End of Followers?
Action: The system evaluates the database response
Logic Flow:
IF A database call to retrieve the next follower car
AND The system evaluates the database response
THEN:
• If the database status code is not SPACES, the system sets the end-of-followers flag to 'Y', otherwise continues processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when successfully retrieved follower car record.
Trigger Criteria:
Context: A successfully retrieved follower car record
Applied to: Is Follower Manifest?
Action: The system validates the follower car data
Logic Flow:
IF A successfully retrieved follower car record
AND The system validates the follower car data
THEN:
• The system checks ifGCCC-FOLLOWER-MFST flag indicates a valid manifest entry
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid follower manifest record.
Trigger Criteria:
Context: A valid follower manifest record
Applied to: Create VID Segment for Follower
Action: The system processes the follower car equipment information
Logic Flow:
IF A valid follower manifest record
AND The system processes the follower car equipment information
THEN:
• The system creates a VID (Vehicle Identification) segment containing the follower car details
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when follower car with vid segment created.
Trigger Criteria:
Context: A follower car with VID segment created
Applied to: Destination Type?
Action: The system evaluates the destination configuration
Logic Flow:
IF A follower car with VID segment created
AND The system evaluates the destination configuration
THEN:
• If the destination is 309-DESTINATION type, the system proceeds with N10 description processing, otherwise skips to next follower
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when follower car with 309 destination type.
Trigger Criteria:
Context: A follower car with 309 destination type
Applied to: Create N10 Description Segment
Action: The system processes the follower car cargo description
Logic Flow:
IF A follower car with 309 destination type
AND The system processes the follower car cargo description
THEN:
• The system creates an N10 segment containing quantity and description information for the follower car
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when follower car with n10 description segment created.
Trigger Criteria:
Context: A follower car with N10 description segment created
Applied to: Has Hazardous Material?
Action: The system checks for hazardous material indicators
Logic Flow:
IF A follower car with N10 description segment created
AND The system checks for hazardous material indicators
THEN:
• IfUN-NUMBER is not SPACES and not starting with 'NA' and commodity danger description is not SPACES, the system identifies hazardous material presence
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when follower car identified as containing hazardous materials.
Trigger Criteria:
Context: A follower car identified as containing hazardous materials
Applied to: Create H1-H2 Hazmat Segments
Action: The system processes the hazardous material information
Logic Flow:
IF A follower car identified as containing hazardous materials
AND The system processes the hazardous material information
THEN:
• The system creates H1 and H2 segments containing the UN number, hazard class, and danger descriptions for the follower car
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when completion of current follower car processing (with or without additional segments).
Trigger Criteria:
Context: Completion of current follower car processing (with or without additional segments)
Applied to: Continue to Next Follower
Action: The system prepares for the next iteration
Logic Flow:
IF Completion of current follower car processing (with or without additional segments)
AND The system prepares for the next iteration
THEN:
• The system changes the database function to GN (Get Next) and returns to retrieve the next follower car
Business Justification: Governs the functional prerequisites and system routing when manifest with consignee chop and commodity code information.
Trigger Criteria:
Context: A manifest with consignee CHOP and commodity code information
Applied to: Access AU Table for Automotive Check
Action: Both consignee CHOP and commodity code are not empty
Logic Flow:
IF A manifest with consignee CHOP and commodity code information
AND Both consignee CHOP and commodity code are not empty
THEN:
• Retrieve automotive type information from AU table using CHOP and commodity code as lookup keys
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when au table entry is successfully retrieved and origin country and csa indicator are available.
Trigger Criteria:
Context: An AU table entry is successfully retrieved and origin country and CSA indicator are available
Applied to: Set Automotive Flag Based on Country and CSA Status
Action: Origin country is US, CA, or blank OR origin country is MX and AU type second character is C, AND CSA indicator is off
Logic Flow:
IF An AU table entry is successfully retrieved and origin country and CSA indicator are available
AND Origin country is US, CA, or blank OR origin country is MX and AU type second character is C, AND CSA indicator is off
THEN:
• Set automotive flag to true, otherwise set to false
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest with from-station information.
Trigger Criteria:
Context: A manifest with from-station information
Applied to: Access SC Table for Station Codes
Action: Station code lookup is performed using from-station as key
Logic Flow:
IF A manifest with from-station information
AND Station code lookup is performed using from-station as key
THEN:
• Retrieve corresponding station code entry from SC table
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when station code lookup has been performed.
Trigger Criteria:
Context: A station code lookup has been performed
Applied to: Retrieve Station Code Entry for From-Station
Action: SC table entry is not found OR Canadian station code is '0000'
Logic Flow:
IF A station code lookup has been performed
AND SC table entry is not found OR Canadian station code is '0000'
THEN:
• Generate error message indicating SC table entry not found for the station
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with in-transit status of 'l' (local).
Trigger Criteria:
Context: A shipment with in-transit status of 'L' (Local)
Applied to: Access EX Table for Export Destination
Action: Export destination lookup is performed using destination station number
Logic Flow:
IF A shipment with in-transit status of 'L' (Local)
AND Export destination lookup is performed using destination station number
THEN:
• Retrieve export destination entry from EX table if available
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when transit status and origin country information are available.
Trigger Criteria:
Context: Transit status and origin country information are available
Applied to: Store Export Destination Information
Action: Transit status is 'T' OR (transit status is 'L' and origin country is not CA and export destination lookup is successful) OR (transit status is 'E' and origin country is not CA)
Logic Flow:
IF Transit status and origin country information are available
AND Transit status is 'T' OR (transit status is 'L' and origin country is not CA and export destination lookup is successful) OR (transit status is 'E' and origin country is not CA)
THEN:
• Add reference segment with qualifier 'KD' and value 'IN-TRANSIT'
R-GCCS309C-cbl-00278 (+11)File: GCCS309C.cblBusiness Rule: Date Conversion
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest record with ccn creation date field.
Trigger Criteria:
Context: A manifest record with CCN creation date field
Applied to: Is CCN Creation Date Numeric and Not Zero?
Action: The CCN creation date is not numeric or equals zero
Logic Flow:
IF A manifest record with CCN creation date field
AND The CCN creation date is not numeric or equals zero
THEN:
• Use current machine century and date for EDI processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when ccn creation date is not numeric or equals zero.
Trigger Criteria:
Context: CCN creation date is not numeric or equals zero
Applied to: Use Current Machine Date
Action: Date conversion process requires a valid date
Logic Flow:
IF CCN creation date is not numeric or equals zero
AND Date conversion process requires a valid date
THEN:
• Concatenate machine century and machine date into Gregorian format for input date
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when valid numeric ccn creation date that is not zero.
Trigger Criteria:
Context: A valid numeric CCN creation date that is not zero
Applied to: Extract Year from CCN Creation Date
Action: Processing date for EDI transmission
Logic Flow:
IF A valid numeric CCN creation date that is not zero
AND Processing date for EDI transmission
THEN:
• Move CCN creation date to year-month-day format for century determination
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when two-digit year extracted from ccn creation date.
Trigger Criteria:
Context: A two-digit year extracted from CCN creation date
Applied to: Year < 90?
Action: The year value is less than 90
Logic Flow:
IF A two-digit year extracted from CCN creation date
AND The year value is less than 90
THEN:
• Assign century as '20' for years 00-89, otherwise assign '19' for years 90-99
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when two-digit year less than 90.
Trigger Criteria:
Context: A two-digit year less than 90
Applied to: Set Century to '20'
Action: Building complete Gregorian date
Logic Flow:
IF A two-digit year less than 90
AND Building complete Gregorian date
THEN:
• Set century component to '20'
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when two-digit year greater than or equal to 90.
Trigger Criteria:
Context: A two-digit year greater than or equal to 90
Applied to: Set Century to '19'
Action: Building complete Gregorian date
Logic Flow:
IF A two-digit year greater than or equal to 90
AND Building complete Gregorian date
THEN:
• Set century component to '19'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when century component and year-month-day components are determined.
Trigger Criteria:
Context: Century component and year-month-day components are determined
Applied to: Build Complete Gregorian Date with Century
Action: Preparing date for conversion module
Logic Flow:
IF Century component and year-month-day components are determined
AND Preparing date for conversion module
THEN:
• Move complete Gregorian date to input date field for conversion processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when input date in gregorian format is prepared. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Input date in Gregorian format is prepared
Applied to: Call ISCDATCV Date Conversion Module
Action: Date conversion is required for EDI transmission
Logic Flow:
IF Input date in Gregorian format is prepared
AND Date conversion is required for EDI transmission
THEN:
• Call ISCDATCV module with function codes 2 for input and 1 for output format
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when date conversion module has been called.
Trigger Criteria:
Context: Date conversion module has been called
Applied to: Date Conversion Successful?
Action: Conversion module returns success status
Logic Flow:
IF Date conversion module has been called
AND Conversion module returns success status
THEN:
• Use converted output date for EDI flight voyage number field
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when date conversion module returned success status.
Trigger Criteria:
Context: Date conversion module returned success status
Applied to: Use Converted Date for EDI Format
Action: Populating EDI M10 segment
Logic Flow:
IF Date conversion module returned success status
AND Populating EDI M10 segment
THEN:
• Move conversion output to M10-06-FLIGHT-VOYAGE-NUM field
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when date conversion module did not return success status.
Trigger Criteria:
Context: Date conversion module did not return success status
Applied to: Set Error Message for Invalid Date
Action: Date conversion fails
Logic Flow:
IF Date conversion module did not return success status
AND Date conversion fails
THEN:
• Set error message 'MODULE ISCDATCV SAID INPUT DATE IS INVALID' in common communication area
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when date conversion has failed and error message is set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Date conversion has failed and error message is set
Applied to: Clear Date Field
Action: Preparing EDI segment with invalid date
Logic Flow:
IF Date conversion has failed and error message is set
AND Preparing EDI segment with invalid date
THEN:
• Move spaces to M10-06-FLIGHT-VOYAGE-NUM field
R-GCCS309C-cbl-00290 (+7)File: GCCS309C.cblBusiness Rule: ETA Calculation
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest requires eta date processing for p4 segment.
Trigger Criteria:
Context: A manifest requires ETA date processing for P4 segment
Applied to: Is Border Arrival ETA empty?
Action: The system checks if GCCC-BORDER-ARRIVAL-ETA is empty or contains low-values
Logic Flow:
IF A manifest requires ETA date processing for P4 segment
AND The system checks if GCCC-BORDER-ARRIVAL-ETA is empty or contains low-values
THEN:
• IfGCCC-BORDER-ARRIVAL-ETA is spaces or low-values, proceed to calculate new ETA, otherwise use the existing GCCC-BORDER-ARRIVAL-ETA value
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when border arrival eta needs to be calculated and waybill date is available.
Trigger Criteria:
Context: Border arrival ETA needs to be calculated and waybill date is available
Applied to: Extract waybill date from manifest
Action: The system processes ETA calculation
Logic Flow:
IF Border arrival ETA needs to be calculated and waybill date is available
AND The system processes ETA calculation
THEN:
• Extract GCCC-WAYBILL-DATE-INDEXand move it to DTCAL-ORIG-DATE positions 3 through 6
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when waybill date has been extracted for eta calculation.
Trigger Criteria:
Context: Waybill date has been extracted for ETA calculation
Applied to: Get current machine century
Action: The system prepares date calculation parameters
Logic Flow:
IF Waybill date has been extracted for ETA calculation
AND The system prepares date calculation parameters
THEN:
• Move CC-MACHINE-CENTURY from CCCOM to DTCAL-ORIG-DATE-YR positions 1 through 2
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when base date components have been prepared for eta calculation. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Base date components have been prepared for ETA calculation
Applied to: Set calculation parameters for adding days
Action: The system sets up date calculation parameters
Logic Flow:
IF Base date components have been prepared for ETA calculation
AND The system sets up date calculation parameters
THEN:
• Set DTCAL-ADD to TRUE, set DTCAL-DAYS to TRUE, and move WS-DAYS-FOR-ETA to DTCAL-AMOUNT
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when date calculation parameters have been properly configured. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Date calculation parameters have been properly configured
Applied to: Call date calculation service
Action: The system needs to calculate the estimated arrival date
Logic Flow:
IF Date calculation parameters have been properly configured
AND The system needs to calculate the estimated arrival date
THEN:
• Call 'ISCDTCAL' using DTCAL-PARAMETER-LIST to perform the date arithmetic
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when date calculation service has been invoked.
Trigger Criteria:
Context: Date calculation service has been invoked
Applied to: Date calculation successful?
Action: The system checks the calculation result status
Logic Flow:
IF Date calculation service has been invoked
AND The system checks the calculation result status
THEN:
• IfDTCAL-SUCCESS is true, move DTCAL-NEW-DATE to GCCC-BORDER-ARRIVAL-ETA, otherwise continue with existing processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when date calculation service completed successfully.
Trigger Criteria:
Context: Date calculation service completed successfully
Applied to: Use calculated ETA date
Action: The system processes the calculated result
Logic Flow:
IF Date calculation service completed successfully
AND The system processes the calculated result
THEN:
• Move DTCAL-NEW-DATE to GCCC-BORDER-ARRIVAL-ETA for use in P4 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when eta date has been determined (either calculated or existing gccc-border-arrival-eta).
Trigger Criteria:
Context: ETA date has been determined (either calculated or existing GCCC-BORDER-ARRIVAL-ETA)
Applied to: Set ETA date in P4 segment
Action: The system builds the P4 segment for transmission
Logic Flow:
IF ETA date has been determined (either calculated or existing GCCC-BORDER-ARRIVAL-ETA)
AND The system builds the P4 segment for transmission
THEN:
• Move GCCC-BORDER-ARRIVAL-ETA to P4-02-ETA-DATE
R-GCCS309C-cbl-00298 (+3)File: GCCS309C.cblBusiness Rule: Country Code Processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest record with in-transit status indicator.
Trigger Criteria:
Context: A manifest record with in-transit status indicator
Applied to: Set Application Type to '29' for Transit
Action: The in-transit status equals 'T' (Transit)
Logic Flow:
IF A manifest record with in-transit status indicator
AND The in-transit status equals 'T' (Transit)
THEN:
• The application type should be set to '29' for transit shipments
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest record with in-transit status indicator.
Trigger Criteria:
Context: A manifest record with in-transit status indicator
Applied to: Set Application Type to '27' for Non-Transit
Action: The in-transit status is not equal to 'T' (Transit)
Logic Flow:
IF A manifest record with in-transit status indicator
AND The in-transit status is not equal to 'T' (Transit)
THEN:
• The application type should be set to '27' for regular shipments
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest record with in-transit status and original country code.
Trigger Criteria:
Context: A manifest record with in-transit status and original country code
Applied to: Override Country Code to 'CA'
Action: The in-transit status equals the return status indicator
Logic Flow:
IF A manifest record with in-transit status and original country code
AND The in-transit status equals the return status indicator
THEN:
• The country code should be overridden to 'CA' (Canada) in the R4 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest record with in-transit status and original country code.
Trigger Criteria:
Context: A manifest record with in-transit status and original country code
Applied to: Keep Original Country Code
Action: The in-transit status does not equal the return status indicator
Logic Flow:
IF A manifest record with in-transit status and original country code
AND The in-transit status does not equal the return status indicator
THEN:
• The original country code from the manifest should be preserved in the R4 segment
Business Justification: Defines the strict business conditions required to proceed when completed edi transmission processing session.
Trigger Criteria:
Context: A completed EDI transmission processing session
Applied to: Initialize GCX121 Input Parameters
Action: The system begins transaction completion finalization
Logic Flow:
IF A completed EDI transmission processing session
AND The system begins transaction completion finalization
THEN:
• The GCX121 input parameters are initialized to default values
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when transaction completion parameters are being initialized.
Trigger Criteria:
Context: Transaction completion parameters are being initialized
Applied to: Set Security Byte to High Values
Action: Security authorization needs to be established
Logic Flow:
IF Transaction completion parameters are being initialized
AND Security authorization needs to be established
THEN:
• The security byte is set to high values indicating maximum authorization level
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when transmission has been processed with a unique transmission number.
Trigger Criteria:
Context: A transmission has been processed with a unique transmission number
Applied to: Move Transmission Number to GCX121
Action: Transaction completion notification is being prepared
Logic Flow:
IF A transmission has been processed with a unique transmission number
AND Transaction completion notification is being prepared
THEN:
• The transmission number is associated with the completion request parameters
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when transaction completion processing is ready to execute.
Trigger Criteria:
Context: Transaction completion processing is ready to execute
Applied to: Running Environment?
Action: The system needs to determine the execution environment
Logic Flow:
IF Transaction completion processing is ready to execute
AND The system needs to determine the execution environment
THEN:
• The system routes to BPE environment processing if running in BPE, otherwise routes to TPE environment processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is running in bpe environment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is running in BPE environment
Applied to: Use CSIEXCI Call
Action: Transaction completion needs to be executed
Logic Flow:
IF The system is running in BPE environment
AND Transaction completion needs to be executed
THEN:
• The system uses CSIEXCI call mechanism for processing the completion notification
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is running in tpe environment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is running in TPE environment
Applied to: Use CIMS Call
Action: Transaction completion needs to be executed
Logic Flow:
IF The system is running in TPE environment
AND Transaction completion needs to be executed
THEN:
• The system uses CIMS call mechanism with message logging and purging operations
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when bpe environment processing is selected for transaction completion.
Trigger Criteria:
Context: BPE environment processing is selected for transaction completion
Applied to: Set Transaction Name to GCT1211E
Action: The external transaction service needs to be identified
Logic Flow:
IF BPE environment processing is selected for transaction completion
AND The external transaction service needs to be identified
THEN:
• The transaction name is set to GCT1211E for completion processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when bpe environment transaction completion is being prepared.
Trigger Criteria:
Context: BPE environment transaction completion is being prepared
Applied to: Calculate Communication Length
Action: Communication parameters need to be sized
Logic Flow:
IF BPE environment transaction completion is being prepared
AND Communication parameters need to be sized
THEN:
• The communication length is calculated as message length plus 4 bytes for header
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when bpe environment external call parameters are being prepared. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: BPE environment external call parameters are being prepared
Applied to: Move Message Data to Communication Area
Action: Message data needs to be transferred for external processing
Logic Flow:
IF BPE environment external call parameters are being prepared
AND Message data needs to be transferred for external processing
THEN:
• The message data is moved to the communication area for the external call
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when all bpe environment call parameters are prepared. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All BPE environment call parameters are prepared
Applied to: Execute CSIEXCI Call
Action: The external transaction completion service needs to be invoked
Logic Flow:
IF All BPE environment call parameters are prepared
AND The external transaction completion service needs to be invoked
THEN:
• The CSIEXCI call is executed with the prepared parameters
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when external transaction completion call has been executed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An external transaction completion call has been executed
Applied to: EXCI Call Successful?
Action: The system needs to determine call success
Logic Flow:
IF An external transaction completion call has been executed
AND The system needs to determine call success
THEN:
• The call is considered successful if response code is zero, response2 is zero, abort code is space, and message length is zero
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when external transaction completion call executed successfully. ⚠️ COBOL Technical Logic
Action: The system needs to record the successful completion
Logic Flow:
IF External transaction completion call executed successfully
AND The system needs to record the successful completion
THEN:
• The return code is set to success status
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when external transaction completion call failed. ⚠️ COBOL Technical Logic
Action: The system needs to record the failed completion
Logic Flow:
IF External transaction completion call failed
AND The system needs to record the failed completion
THEN:
• The return code is set to failure status and error message pointer is processed if available
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when tpe environment processing is selected for transaction completion.
Trigger Criteria:
Context: TPE environment processing is selected for transaction completion
Applied to: Move GCX121 Input to GCT1211E Message
Action: Message content needs to be prepared for internal processing
Logic Flow:
IF TPE environment processing is selected for transaction completion
AND Message content needs to be prepared for internal processing
THEN:
• The GCX121 input parameters are moved to the GCT1211E message structure
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when tpe environment message is prepared for processing.
Trigger Criteria:
Context: TPE environment message is prepared for processing
Applied to: Change Alt-PCB Status
Action: Message queue status needs to be updated
Logic Flow:
IF TPE environment message is prepared for processing
AND Message queue status needs to be updated
THEN:
• The alternate PCB status is changed using CIMS call
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when tpe environment message processing is active.
Trigger Criteria:
Context: TPE environment message processing is active
Applied to: Write Message Log Entry
Action: Transaction completion needs to be logged
Logic Flow:
IF TPE environment message processing is active
AND Transaction completion needs to be logged
THEN:
• A message log entry is written with completion details including message code, content, length, and module name
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when tpe environment message has been logged.
Trigger Criteria:
Context: TPE environment message has been logged
Applied to: Purge Alt-PCB
Action: Message queue cleanup is required
Logic Flow:
IF TPE environment message has been logged
AND Message queue cleanup is required
THEN:
• The alternate PCB is purged using CIMS call
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when either bpe or tpe environment processing has completed.
Trigger Criteria:
Context: Either BPE or TPE environment processing has completed
Applied to: Transaction Completion Finalized
Action: All completion processing steps are finished
Logic Flow:
IF Either BPE or TPE environment processing has completed
AND All completion processing steps are finished
THEN:
• The transaction completion is finalized and control returns to the calling process
Business Justification: Governs the functional prerequisites and system routing when manifest with an action code and border arrival information.
Trigger Criteria:
Context: A manifest with an action code and border arrival information
Applied to: Action Code = 04, 05, or 06?
Action: The action code is 04, 05, or 06 AND the border arrival date exists AND the manifest is not a pre-emanifest
Logic Flow:
IF A manifest with an action code and border arrival information
AND The action code is 04, 05, or 06 AND the border arrival date exists AND the manifest is not a pre-emanifest
THEN:
• Set the transaction purpose code to 'CO' and mark as post-emanifest amendment
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest with an action code.
Trigger Criteria:
Context: A manifest with an action code
Applied to: Use Original Action Code as Transaction Purpose Code
Action: The action code is not 04, 05, or 06 OR the border arrival date does not exist OR the manifest is a pre-emanifest
Logic Flow:
IF A manifest with an action code
AND The action code is not 04, 05, or 06 OR the border arrival date does not exist OR the manifest is a pre-emanifest
THEN:
• Use the original action code as the transaction purpose code
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest meeting post-emanifest amendment criteria.
Trigger Criteria:
Context: A manifest meeting post-emanifest amendment criteria
Applied to: Set Post-Emanifest Amendment Flag to TRUE
Action: The action code is 04, 05, or 06 AND the border arrival date exists AND the manifest is not a pre-emanifest
Logic Flow:
IF A manifest meeting post-emanifest amendment criteria
AND The action code is 04, 05, or 06 AND the border arrival date exists AND the manifest is not a pre-emanifest
THEN:
• Set the post-emanifest amendment flag to TRUE for subsequent processing
R-GCCS309C-cbl-00323 (+5)File: GCCS309C.cblBusiness Rule: Post
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest transaction is being processed.
Trigger Criteria:
Context: A manifest transaction is being processed
Applied to: Initialize amendment flag to SPACES
Action: The post-emanifest amendment processing begins
Logic Flow:
IF A manifest transaction is being processed
AND The post-emanifest amendment processing begins
THEN:
• The post-emanifest amendment flag should be initialized to SPACES
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest transaction with a specific action code.
Trigger Criteria:
Context: A manifest transaction with a specific action code
Applied to: Action code is 04, 05, or 06?
Action: The action code is evaluated for amendment eligibility
Logic Flow:
IF A manifest transaction with a specific action code
AND The action code is evaluated for amendment eligibility
THEN:
• The system should identify if the action code is 04, 05, or 06 to proceed with amendment logic
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest transaction with qualifying action code (04, 05, or 06).
Trigger Criteria:
Context: A manifest transaction with qualifying action code (04, 05, or 06)
Applied to: Border arrival date exists AND not pre-emanifest?
Action: The border arrival date and pre-emanifest status are evaluated
Logic Flow:
IF A manifest transaction with qualifying action code (04, 05, or 06)
AND The border arrival date and pre-emanifest status are evaluated
THEN:
• The system should confirm that border arrival date is not empty/spaces AND the manifest is not a pre-emanifest
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest transaction with action code 04, 05, or 06 and border arrival date exists and not pre-emanifest.
Trigger Criteria:
Context: A manifest transaction with action code 04, 05, or 06 AND border arrival date exists AND not pre-emanifest
Applied to: Set purpose code to 'CO' & Set post-emanifest amendment flag to TRUE
Action: The amendment conditions are met
Logic Flow:
IF A manifest transaction with action code 04, 05, or 06 AND border arrival date exists AND not pre-emanifest
AND The amendment conditions are met
THEN:
• The transaction set purpose code should be set to 'CO'
• The post-emanifest amendment flag should be set to TRUE
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest transaction that does not meet post-emanifest amendment criteria.
Trigger Criteria:
Context: A manifest transaction that does not meet post-emanifest amendment criteria
Applied to: Use action code as purpose code
Action: Either the action code is not 04/05/06 OR border arrival date is empty OR it is a pre-emanifest
Logic Flow:
IF A manifest transaction that does not meet post-emanifest amendment criteria
AND Either the action code is not 04/05/06 OR border arrival date is empty OR it is a pre-emanifest
THEN:
• The transaction set purpose code should be set to the original action code value
Business Justification: Establishes the required business protocol to be followed when manifest processing request is received.
Trigger Criteria:
Context: A manifest processing request is received
Applied to: Check if Broker Notification Required
Action: The system checks the broker notification flag GCWS309C-NOTIFY-BROKER
Logic Flow:
IF A manifest processing request is received
AND The system checks the broker notification flag GCWS309C-NOTIFY-BROKER
THEN:
• The system should proceed to broker notification processing if the flag is true, otherwise skip broker notification
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when broker notification is required.
Trigger Criteria:
Context: Broker notification is required
Applied to: Set Broker as Destination Address
Action: The system processes the broker notification setup
Logic Flow:
IF Broker notification is required
AND The system processes the broker notification setup
THEN:
• The system should set GCWS309C-X12-BROKER as both WORK-DESTINATIONandLOG-EDI-ADDRESS
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when broker notification processing is initiated.
Trigger Criteria:
Context: Broker notification processing is initiated
Applied to: Set Security and CCN Key
Action: The system initializes the GCX105 input structure
Logic Flow:
IF Broker notification processing is initiated
AND The system initializes the GCX105 input structure
THEN:
• The system should set HIGH-VALUES to GCX105-SECURITY-BYTE, assign GCCC-CCN-KEY to GCX105-TRAIN-OR-US-CCN, and set GCX105-CA-CARGO to TRUE
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when broker message parameters are being configured.
Trigger Criteria:
Context: Broker message parameters are being configured
Applied to: Set Action Code to ZZZ
Action: The system sets up the action code for the broker message
Logic Flow:
IF Broker message parameters are being configured
AND The system sets up the action code for the broker message
THEN:
• The system should assign 'ZZZ' to GCX105-ACTION-CODE
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when broker message structure is being populated.
Trigger Criteria:
Context: Broker message structure is being populated
Applied to: Set Message Content
Action: The system assigns message content
Logic Flow:
IF Broker message structure is being populated
AND The system assigns message content
THEN:
• The system should move LOG-EDI-MESSAGE to GCX105-MESSAGE
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when broker message metadata is being configured.
Trigger Criteria:
Context: Broker message metadata is being configured
Applied to: Set Sending Transaction ID
Action: The system sets the sending transaction identifier
Logic Flow:
IF Broker message metadata is being configured
AND The system sets the sending transaction identifier
THEN:
• The system should assign 'GCCS309C' to GCX105-SENDING-TRANSACTION
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when broker message audit information is being recorded.
Trigger Criteria:
Context: Broker message audit information is being recorded
Applied to: Set User ID and Timestamp
Action: The system captures user and timing information
Logic Flow:
IF Broker message audit information is being recorded
AND The system captures user and timing information
THEN:
• The system should assign CC-ACF2-USERID from CCCOM to GCX105-ACF2-ID
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when broker message timing information is being set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Broker message timing information is being set
Applied to: Set Date and Time Information
Action: The system processes date and time configuration
Logic Flow:
IF Broker message timing information is being set
AND The system processes date and time configuration
THEN:
• The system should move CC-MACHINE-CENTURYandCC-MACHINE-DATE from CCCOM to WS-GCX105-CCandWS-GCX105-YYMMDD respectively, then move WS-GCX105-CCYYMMDD to GCX105-DATEandCC-MACHINE-TIME to GCX105-TIME
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when all broker message parameters are configured.
Trigger Criteria:
Context: All broker message parameters are configured
Applied to: Spawn GCT1051E Transaction
Action: The system initiates broker notification transmission
Logic Flow:
IF All broker message parameters are configured
AND The system initiates broker notification transmission
THEN:
• The system should perform Z600-SPAWN-GCT1051E to execute the broker EDI transaction
Business Justification: Establishes the required business protocol to be followed when edi transmission processing has been completed.
Trigger Criteria:
Context: EDI transmission processing has been completed
Applied to: EDI Transmission Finalized
Action: the system needs to send completion notification
Logic Flow:
IF EDI transmission processing has been completed
AND the system needs to send completion notification
THEN:
• initialize GCX121 input parameters and set security byte to high values
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when completed edi transmission with transmission number.
Trigger Criteria:
Context: a completed EDI transmission with transmission number
Applied to: Move Transmission Number to GCX121
Action: preparing completion notification
Logic Flow:
IF a completed EDI transmission with transmission number
AND preparing completion notification
THEN:
• move the transmission number from A9RT-TRANSMISSION-NUMBER to GCX121-TRANSMISSION-NUMBER
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when completion notification needs to be sent.
Trigger Criteria:
Context: a completion notification needs to be sent
Applied to: Running Environment?
Action: the system checks the runtime environment
Logic Flow:
IF a completion notification needs to be sent
AND the system checks the runtime environment
THEN:
• if running in BPE environment use external transaction call, otherwise use TPE environment processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when system is running in bpe environment.
Trigger Criteria:
Context: the system is running in BPE environment
Applied to: Set Transaction Name to GCT1211E
Action: setting up completion notification
Logic Flow:
IF the system is running in BPE environment
AND setting up completion notification
THEN:
• set transaction name to GCT1211E and configure EXCI parameters
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when bpe environment completion notification setup. ⚠️ COBOL Technical Logic
• compute EXCI-COMM-LL as GCT1211E-MSG-LGTH plus 4 and compute EXCI-CALL-DATA-LEN as length of EXCI-COMMAREA-HDR plus GCT1211E-MSG-LGTH
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when bpe environment with configured exci parameters. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: BPE environment with configured EXCI parameters
Applied to: Call External Transaction via CSIEXCI
Action: executing completion notification
Logic Flow:
IF BPE environment with configured EXCI parameters
AND executing completion notification
THEN:
• call CSIEXCI with configured parameters including program, return code, call data length, application ID, and communication area
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when external transaction call has been executed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: an external transaction call has been executed
Applied to: External Call Successful?
Action: checking the call results
Logic Flow:
IF an external transaction call has been executed
AND checking the call results
THEN:
• ifEXCI-RC-RESP equals zero andEXCI-RC-RESP2 equals zero andEXCI-RC-ABCODE equals space andEXCI-RC-MSGLEN equals zero then call is successful, otherwise call failed
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when external transaction call completed successfully. ⚠️ COBOL Technical Logic
IF external transaction call completed successfully
AND setting completion status
THEN:
• move RC-SUCS to CC-RETURN-CODE of CCCOM
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when external transaction call failed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: external transaction call failed
Applied to: Set Failure Return Code
Action: setting completion status
Logic Flow:
IF external transaction call failed
AND setting completion status
THEN:
• ifEXCI-RC-MSGPTR is not null then set address of EXCI-ERROR-MSG to EXCI-RC-MSGPTR, and move RC-FAIL to CC-RETURN-CODE of CCCOM
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when system is running in tpe environment.
Trigger Criteria:
Context: the system is running in TPE environment
Applied to: Move Input to GCT1211E Message
Action: processing completion notification
Logic Flow:
IF the system is running in TPE environment
AND processing completion notification
THEN:
• move GCX121-INPUT to GCT1211E-MSGand set CC-ACCEPT-STATUS to spaces
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when tpe environment completion notification processing. ⚠️ COBOL Technical Logic
IF TPE environment completion notification processing
AND updating message status
THEN:
• call CIMS using CCCOM, CHNG, ALT-PCB, and GCT1211E
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when tpe environment with message status changed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: TPE environment with message status changed
Applied to: Write Message to Log
Action: logging the completion notification
Logic Flow:
IF TPE environment with message status changed
AND logging the completion notification
THEN:
• call WRITMSGL using CCCOM, ALT-PCB, GCT1211E-MSG-CODE, GCT1211E-MESSAGE, GCT1211E-MSG-LGTH, andGCT1211E-MOD-NAME
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when tpe environment with message logged. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: TPE environment with message logged
Applied to: Purge Message Queue
Action: finalizing completion notification
Logic Flow:
IF TPE environment with message logged
AND finalizing completion notification
THEN:
• call CIMS using CCCOM, PURG, andALT-PCB
R-GCCS309C-cbl-00351 (+6)File: GCCS309C.cblBusiness Rule: Broker Reference Number Processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when broker reference number processing is initiated.
Trigger Criteria:
Context: Broker reference number processing is initiated
Applied to: Increment N9 Counter
Action: The system begins processing reference numbers for broker notifications
Logic Flow:
IF Broker reference number processing is initiated
AND The system begins processing reference numbers for broker notifications
THEN:
• The N9 counter is incremented by 1 to point to the next reference number position
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when reference number qualifier from the manifest data array at the current n9 counter position.
Trigger Criteria:
Context: A reference number qualifier from the manifest data array at the current N9 counter position
Applied to: Reference Number Qualifier Available?
Action: The qualifier is spaces, high-values, or low-values
Logic Flow:
IF A reference number qualifier from the manifest data array at the current N9 counter position
AND The qualifier is spaces, high-values, or low-values
THEN:
• The system skips processing this reference number and continues to the next one
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid reference number qualifier exists for broker processing.
Trigger Criteria:
Context: A valid reference number qualifier exists for broker processing
Applied to: Initialize N9 Segment
Action: The system needs to create an N9 reference segment
Logic Flow:
IF A valid reference number qualifier exists for broker processing
AND The system needs to create an N9 reference segment
THEN:
• The N9 segment structure is initialized to clear any previous data
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when initialized n9 segment structure for broker notifications.
Trigger Criteria:
Context: An initialized N9 segment structure for broker notifications
Applied to: Set N9 Identifier
Action: The system prepares the segment for transmission
Logic Flow:
IF An initialized N9 segment structure for broker notifications
AND The system prepares the segment for transmission
THEN:
• The segment identifier is set to 'N9' to comply with EDI standards
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when valid reference number qualifier from the manifest data array at the current counter position.
Trigger Criteria:
Context: A valid reference number qualifier from the manifest data array at the current counter position
Applied to: Move Reference Number Qualifier to N9-01
Action: The system builds the N9 segment for broker transmission
Logic Flow:
IF A valid reference number qualifier from the manifest data array at the current counter position
AND The system builds the N9 segment for broker transmission
THEN:
• The reference number qualifier is moved to the N9-01 field of the segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when valid reference number from the manifest data array at the current counter position.
Trigger Criteria:
Context: A valid reference number from the manifest data array at the current counter position
Applied to: Move Reference Number to N9-02
Action: The system builds the N9 segment for broker transmission
Logic Flow:
IF A valid reference number from the manifest data array at the current counter position
AND The system builds the N9 segment for broker transmission
THEN:
• The reference number is moved to the N9-02 field of the segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when fully populated n9 segment with reference qualifier and number for broker notifications.
Trigger Criteria:
Context: A fully populated N9 segment with reference qualifier and number for broker notifications
Applied to: Create N9 Segment for Broker
Action: The system needs to add this segment to the transmission
Logic Flow:
IF A fully populated N9 segment with reference qualifier and number for broker notifications
AND The system needs to add this segment to the transmission
THEN:
• The segment is added to the transmission queue with an incremented sequence number and proper status code
R-GCCS309C-cbl-00358 (+2)File: GCCS309C.cblBusiness Rule: Station Code Validation
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest with from-station transport code exists.
Trigger Criteria:
Context: A manifest with from-station transport code exists
Applied to: Access SC table with station code
Action: The system needs to validate station information
Logic Flow:
IF A manifest with from-station transport code exists
AND The system needs to validate station information
THEN:
• The system accesses the SC table using the from-station code as the key
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when station code lookup has been performed against the sc table.
Trigger Criteria:
Context: A station code lookup has been performed against the SC table
Applied to: Station code found in SC table?
Action: The system evaluates the lookup result
Logic Flow:
IF A station code lookup has been performed against the SC table
AND The system evaluates the lookup result
THEN:
• If the lookup was not successful OR the Canadian station code is '0000', then the station is considered invalid
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when station code lookup has failed or returned invalid data.
Trigger Criteria:
Context: A station code lookup has failed or returned invalid data
Applied to: Generate station not found error message
Action: The system needs to report the validation failure
Logic Flow:
IF A station code lookup has failed or returned invalid data
AND The system needs to report the validation failure
THEN:
• The system generates an error message indicating the SC table entry for the station was not found
R-GCCS309C-cbl-00361 (+10)File: GCCS309C.cblBusiness Rule: Seal Number Validation
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when seal number processing operation is in progress with a counter tracking processed seals.
Trigger Criteria:
Context: A seal number processing operation is in progress with a counter tracking processed seals
Applied to: Counter ≤ 20 AND seal number exists?
Action: The system evaluates whether to continue processing seal numbers
Logic Flow:
IF A seal number processing operation is in progress with a counter tracking processed seals
AND The system evaluates whether to continue processing seal numbers
THEN:
• Continue processing if counter is 20 or less AND current seal number is not spaces or low-values, otherwise stop processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when seal numbers need to be processed for transmission.
Trigger Criteria:
Context: Seal numbers need to be processed for transmission
Applied to: Initialize M7 segment
Action: A new M7 segment needs to be created
Logic Flow:
IF Seal numbers need to be processed for transmission
AND A new M7 segment needs to be created
THEN:
• Initialize M7 segment structure and set identifier to 'M7'
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when seal number at the current counter position exists.
Trigger Criteria:
Context: A seal number at the current counter position exists
Applied to: Seal number 1 valid?
Action: The system checks if the first seal number is valid for processing
Logic Flow:
IF A seal number at the current counter position exists
AND The system checks if the first seal number is valid for processing
THEN:
• The seal number is valid if it is not spaces and not low-values
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when first seal number has been validated as not spaces or low-values.
Trigger Criteria:
Context: The first seal number has been validated as not spaces or low-values
Applied to: Add seal number 1 to M7 segment
Action: The system assigns the seal number to the M7 segment
Logic Flow:
IF The first seal number has been validated as not spaces or low-values
AND The system assigns the seal number to the M7 segment
THEN:
• Move the seal number to M7-01-SEAL-NUMBER field
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when counter has been incremented to the next seal number position.
Trigger Criteria:
Context: The counter has been incremented to the next seal number position
Applied to: Seal number 2 valid?
Action: The system checks if the second seal number is valid for processing
Logic Flow:
IF The counter has been incremented to the next seal number position
AND The system checks if the second seal number is valid for processing
THEN:
• The seal number is valid if it is not spaces and not low-values
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when second seal number has been validated as not spaces or low-values.
Trigger Criteria:
Context: The second seal number has been validated as not spaces or low-values
Applied to: Add seal number 2 to M7 segment
Action: The system assigns the seal number to the M7 segment
Logic Flow:
IF The second seal number has been validated as not spaces or low-values
AND The system assigns the seal number to the M7 segment
THEN:
• Move the seal number to M7-02-SEAL-NUMBER field
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when counter has been incremented to the third seal number position.
Trigger Criteria:
Context: The counter has been incremented to the third seal number position
Applied to: Seal number 3 valid?
Action: The system checks if the third seal number is valid for processing
Logic Flow:
IF The counter has been incremented to the third seal number position
AND The system checks if the third seal number is valid for processing
THEN:
• The seal number is valid if it is not spaces and not low-values
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when third seal number has been validated as not spaces or low-values.
Trigger Criteria:
Context: The third seal number has been validated as not spaces or low-values
Applied to: Add seal number 3 to M7 segment
Action: The system assigns the seal number to the M7 segment
Logic Flow:
IF The third seal number has been validated as not spaces or low-values
AND The system assigns the seal number to the M7 segment
THEN:
• Move the seal number to M7-03-SEAL-NUMBER field
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when counter has been incremented to the fourth seal number position.
Trigger Criteria:
Context: The counter has been incremented to the fourth seal number position
Applied to: Seal number 4 valid?
Action: The system checks if the fourth seal number is valid for processing
Logic Flow:
IF The counter has been incremented to the fourth seal number position
AND The system checks if the fourth seal number is valid for processing
THEN:
• The seal number is valid if it is not spaces and not low-values
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when fourth seal number has been validated as not spaces or low-values.
Trigger Criteria:
Context: The fourth seal number has been validated as not spaces or low-values
Applied to: Add seal number 4 to M7 segment
Action: The system assigns the seal number to the M7 segment
Logic Flow:
IF The fourth seal number has been validated as not spaces or low-values
AND The system assigns the seal number to the M7 segment
THEN:
• Move the seal number to M7-04-SEAL-NUMBER field
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when m7 segment has been populated with validated seal numbers.
Trigger Criteria:
Context: M7 segment has been populated with validated seal numbers
Applied to: Create M7 segment with validated seal numbers
Action: The system creates the segment for transmission
Logic Flow:
IF M7 segment has been populated with validated seal numbers
AND The system creates the segment for transmission
THEN:
• Replace underscores with spaces, increment sequence number, and create transmission department record
Business Justification: Dictates the expected operational logic and validation steps when manifest processing request is initiated with input ccn key.
Trigger Criteria:
Context: A manifest processing request is initiated with input CCN key
Applied to: Set CCN Key from Input
Action: The system prepares to retrieve manifest data from the database
Logic Flow:
IF A manifest processing request is initiated with input CCN key
AND The system prepares to retrieve manifest data from the database
THEN:
• The CCN key from input is assigned to the database query key field
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when database query is about to be executed.
Trigger Criteria:
Context: A database query is about to be executed
Applied to: Initialize GCWCCIO2 Parameters
Action: The system prepares the query parameters
Logic Flow:
IF A database query is about to be executed
AND The system prepares the query parameters
THEN:
• All GCWCCIO2 parameters are initialized to spaces to ensure clean state
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest data retrieval request is processed.
Trigger Criteria:
Context: A manifest data retrieval request is processed
Applied to: Set Fetch All Segments Flag
Action: The system configures the database query scope
Logic Flow:
IF A manifest data retrieval request is processed
AND The system configures the database query scope
THEN:
• The fetch all segments flag is set to true to retrieve complete manifest information
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when specific manifest needs to be retrieved from the database.
Trigger Criteria:
Context: A specific manifest needs to be retrieved from the database
Applied to: Set Function to GU - Get Unique
Action: The system sets the database access function
Logic Flow:
IF A specific manifest needs to be retrieved from the database
AND The system sets the database access function
THEN:
• The function is set to GU (Get Unique) to retrieve a single manifest record
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest lookup is performed using a specific ccn key.
Trigger Criteria:
Context: A manifest lookup is performed using a specific CCN key
Applied to: Set Index Not Used Flag
Action: The system configures the database access method
Logic Flow:
IF A manifest lookup is performed using a specific CCN key
AND The system configures the database access method
THEN:
• The index not used flag is set to true to perform direct key access
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when all database query parameters are properly configured. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All database query parameters are properly configured
Applied to: Call GCCCCIO2 Module
Action: The system needs to retrieve manifest data from the database
Logic Flow:
IF All database query parameters are properly configured
AND The system needs to retrieve manifest data from the database
THEN:
• The GCCCCIO2 module is called with all required parameters including CCCOM, GCWCCIO2, and all segment arrays
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when database retrieval operation has been executed.
Trigger Criteria:
Context: A database retrieval operation has been executed
Applied to: Error Number Present?
Action: The system checks the operation result
Logic Flow:
IF A database retrieval operation has been executed
AND The system checks the operation result
THEN:
• IfGCWCCIO2-ERROR-NUM equals spaces, the operation is considered successful
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when database retrieval operation completed successfully with no error number. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Database retrieval operation completed successfully with no error number
Applied to: Move GCSCCS53 Data from Array & Move GCSCCS55 Data from Array
Action: The system processes the retrieved segment arrays
Logic Flow:
IF Database retrieval operation completed successfully with no error number
AND The system processes the retrieved segment arrays
THEN:
• The first element of WS-GCSCCS53-DATA array is moved to GCSCCS53 segment
• The first element of WS-GCSCCS55-DATA array is moved to GCSCCS55 segment
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when database retrieval operation has been attempted.
Trigger Criteria:
Context: A database retrieval operation has been attempted
Applied to: Database Error?
Action: The system evaluates the operation outcome
Logic Flow:
IF A database retrieval operation has been attempted
AND The system evaluates the operation outcome
THEN:
• IfGCWCCIO2-ERROR-NUM is greater than spaces, a database error is detected
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when database error has been detected during manifest retrieval.
Trigger Criteria:
Context: A database error has been detected during manifest retrieval
Applied to: Unable to Locate Manifest
Action: The system prepares error information for the user
Logic Flow:
IF A database error has been detected during manifest retrieval
AND The system prepares error information for the user
THEN:
• The error message is set to 'UNABLE TO LOCATE MANIFEST IN DATABASE'
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest not found error message has been set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A manifest not found error message has been set
Applied to: Call Error Handler CERR
Action: The system needs to handle the error condition
Logic Flow:
IF A manifest not found error message has been set
AND The system needs to handle the error condition
THEN:
• The CERR error handler is called with CCCOM parameter
R-GCCS309C-cbl-00384 (+9)File: GCCS309C.cblBusiness Rule: AU Table Access and Automotive Flag Setting
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest record with consignee chop and commodity code fields.
Trigger Criteria:
Context: A manifest record with consignee CHOP and commodity code fields
Applied to: Consignee CHOP and Commodity Code exist?
Action: The system checks for automotive release eligibility
Logic Flow:
IF A manifest record with consignee CHOP and commodity code fields
AND The system checks for automotive release eligibility
THEN:
• If both consignee CHOP and commodity code are not empty, proceed to AU table lookup, otherwise set non-automotive flag
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when valid consignee chop and commodity code exist.
Trigger Criteria:
Context: Valid consignee CHOP and commodity code exist
Applied to: Access AU Table with CHOP and Commodity Code
Action: The system accesses the AU table with these values as keys
Logic Flow:
IF Valid consignee CHOP and commodity code exist
AND The system accesses the AU table with these values as keys
THEN:
• Retrieve the AU table entry if it exists for further automotive determination
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when au table lookup has been performed.
Trigger Criteria:
Context: An AU table lookup has been performed
Applied to: AU Table Entry Found?
Action: The system checks the lookup result
Logic Flow:
IF An AU table lookup has been performed
AND The system checks the lookup result
THEN:
• If no matching entry is found, set non-automotive flag, otherwise proceed with automotive evaluation
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when either consignee chop/commodity code are missing or au table entry is not found.
Trigger Criteria:
Context: Either consignee CHOP/commodity code are missing or AU table entry is not found
Applied to: Set Non-Automotive Flag
Action: The automotive determination process encounters missing data
Logic Flow:
IF Either consignee CHOP/commodity code are missing or AU table entry is not found
AND The automotive determination process encounters missing data
THEN:
• Set the shipment classification to non-automotive
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when valid au table entry exists for the shipment.
Trigger Criteria:
Context: A valid AU table entry exists for the shipment
Applied to: Evaluate Country and CSA Status
Action: The system evaluates automotive eligibility criteria
Logic Flow:
IF A valid AU table entry exists for the shipment
AND The system evaluates automotive eligibility criteria
THEN:
• Check origin country and CSA indicator status according to automotive business rules
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when shipment with an origin country code.
Trigger Criteria:
Context: A shipment with an origin country code
Applied to: Origin Country is US, CA, or blank?
Action: The system evaluates country-based automotive eligibility
Logic Flow:
IF A shipment with an origin country code
AND The system evaluates country-based automotive eligibility
THEN:
• If origin country is 'US', 'CA', or blank, proceed to CSA indicator check, otherwise check Mexico-specific rules
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment with origin country 'mx' and an au table entry with au type field.
Trigger Criteria:
Context: A shipment with origin country 'MX' and an AU table entry with AU type field
Applied to: Origin Country is MX AND AU Type 2nd char is 'C'?
Action: The system evaluates Mexico-specific automotive eligibility
Logic Flow:
IF A shipment with origin country 'MX' and an AU table entry with AU type field
AND The system evaluates Mexico-specific automotive eligibility
THEN:
• If origin country is 'MX' and the second character of AU type is 'C', proceed to CSA indicator check, otherwise keep non-automotive flag
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment that meets country-based automotive eligibility criteria.
Trigger Criteria:
Context: A shipment that meets country-based automotive eligibility criteria
Applied to: CSA Indicator is OFF?
Action: The system checks the CSA indicator status
Logic Flow:
IF A shipment that meets country-based automotive eligibility criteria
AND The system checks the CSA indicator status
THEN:
• If CSA indicator is OFF, set automotive flag, otherwise keep non-automotive flag
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment that meets all automotive eligibility criteria (valid au entry, appropriate country, csa indicator off).
Trigger Criteria:
Context: A shipment that meets all automotive eligibility criteria (valid AU entry, appropriate country, CSA indicator OFF)
Applied to: Set Automotive Flag
Action: The system finalizes the automotive classification
Logic Flow:
IF A shipment that meets all automotive eligibility criteria (valid AU entry, appropriate country, CSA indicator OFF)
AND The system finalizes the automotive classification
THEN:
• Set the shipment classification to automotive
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment that does not meet all automotive eligibility criteria.
Trigger Criteria:
Context: A shipment that does not meet all automotive eligibility criteria
Applied to: Keep Non-Automotive Flag
Action: The system completes the automotive determination process
Logic Flow:
IF A shipment that does not meet all automotive eligibility criteria
AND The system completes the automotive determination process
THEN:
• Maintain the non-automotive classification flag
R-GCCS309C-cbl-00394 (+4)File: GCCS309C.cblBusiness Rule: Manifest Type Determination
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest is being processed for type determination.
Trigger Criteria:
Context: A manifest is being processed for type determination
Applied to: Arrival Indicator = 'Y' OR Program = 'GCX148'?
Action: The arrival indicator equals 'Y' OR the calling program name is 'GCX148'
Logic Flow:
IF A manifest is being processed for type determination
AND The arrival indicator equals 'Y' OR the calling program name is 'GCX148'
THEN:
• The manifest type code should be set to 'A' indicating an Arrival manifest
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest is being processed and arrival conditions are not met.
Trigger Criteria:
Context: A manifest is being processed and arrival conditions are not met
Applied to: Canadian Customs North Train ID exists?
Action: The Canadian customs north train ID field contains data (not spaces)
Logic Flow:
IF A manifest is being processed and arrival conditions are not met
AND The Canadian customs north train ID field contains data (not spaces)
THEN:
• The manifest type code should be set to 'C' indicating a Customs manifest
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest is being processed, arrival conditions are not met, and canadian customs north train id is empty.
Trigger Criteria:
Context: A manifest is being processed, arrival conditions are not met, and Canadian customs north train ID is empty
Applied to: Program = 'GCX146' OR 'GCX147'?
Action: The calling program name is 'GCX146' OR 'GCX147'
Logic Flow:
IF A manifest is being processed, arrival conditions are not met, and Canadian customs north train ID is empty
AND The calling program name is 'GCX146' OR 'GCX147'
THEN:
• The manifest type code should be set to 'C' indicating a Customs manifest
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest is being processed, arrival conditions are not met, canadian customs north train id is empty, and the program is not a customs-specific program.
Trigger Criteria:
Context: A manifest is being processed, arrival conditions are not met, Canadian customs north train ID is empty, and the program is not a customs-specific program
Applied to: Set Manifest Type = 'P' - Pre-manifest
Action: None of the arrival or customs conditions are satisfied
Logic Flow:
IF A manifest is being processed, arrival conditions are not met, Canadian customs north train ID is empty, and the program is not a customs-specific program
AND None of the arrival or customs conditions are satisfied
THEN:
• The manifest type code should be set to 'P' indicating a Pre-manifest
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest type has been determined through the standard logic flow.
Trigger Criteria:
Context: A manifest type has been determined through the standard logic flow
Applied to: Destination Type = 5040?
Action: The destination type is 309-DESTINATION-5040
Logic Flow:
IF A manifest type has been determined through the standard logic flow
AND The destination type is 309-DESTINATION-5040
THEN:
• The manifest type code should be cleared and set to spaces
R-GCCS309C-cbl-00403 (+19)File: GCCS309C.cblBusiness Rule: Entity Record Processing Loop
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity processing is about to begin. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Entity processing is about to begin
Applied to: Initialize Loop Counter WS-SUB-REC = 1
Action: The system starts processing entity records
Logic Flow:
IF Entity processing is about to begin
AND The system starts processing entity records
THEN:
• The loop counter WS-SUB-REC is set to 1 to start from the first entity record
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when entity records are being processed in a loop. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Entity records are being processed in a loop
Applied to: Loop Counter <= Max Entities AND Entity Data Not Empty?
Action: The system checks if more entities need processing
Logic Flow:
IF Entity records are being processed in a loop
AND The system checks if more entities need processing
THEN:
• Continue processing ifWS-SUB-REC is less than or equal to GCSCCS99-S55-MAX-SEQ AND the entity data at current position is not SPACES orLOW-VALUES
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when valid entity record exists at the current loop position. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid entity record exists at the current loop position
Applied to: Get Next Entity Record from GCSCCS55
Action: The system retrieves entity data for processing
Logic Flow:
IF A valid entity record exists at the current loop position
AND The system retrieves entity data for processing
THEN:
• Move the entity data from WS-GCSCCS55-DATA array at current WS-SUB-REC position to GCSCCS55 working structure
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record is being processed.
Trigger Criteria:
Context: An entity record is being processed
Applied to: Destination Type Check
Action: The system needs to validate entity information
Logic Flow:
IF An entity record is being processed
AND The system needs to validate entity information
THEN:
• Check if309-DESTINATION flag is set to determine validation path - 4040 validation for 309-DESTINATIONor 5040 validation for other destinations
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when destination type is 309-destination. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The destination type is 309-DESTINATION
Applied to: Set Entity Code for 4040 Validation
Action: Entity validation is required
Logic Flow:
IF The destination type is 309-DESTINATION
AND Entity validation is required
THEN:
• Move GCCS-N101-ENTITY-ID-CDE to WS-4040-N1-CODE for validation
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when entity code has been set for 4040 validation. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Entity code has been set for 4040 validation
Applied to: Valid 4040 Entity Code?
Action: The system validates the entity code
Logic Flow:
IF Entity code has been set for 4040 validation
AND The system validates the entity code
THEN:
• Check ifWS-VALID-4040-N1 condition is true to determine if entity code is valid for 4040 destination
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when destination type is not 309-destination. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The destination type is not 309-DESTINATION
Applied to: Set Entity Code for 5040 Validation
Action: Entity validation is required
Logic Flow:
IF The destination type is not 309-DESTINATION
AND Entity validation is required
THEN:
• Move GCCS-N101-ENTITY-ID-CDE to WS-4040-N1-CODE for 5040 validation processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity is being processed for 5040 destination.
Trigger Criteria:
Context: Entity is being processed for 5040 destination
Applied to: Perform Consignee-Importer Address Check
Action: Address validation is required
Logic Flow:
IF Entity is being processed for 5040 destination
AND Address validation is required
THEN:
• Perform N20625-CHECK-CN-IMPORTER procedure to validate consignee-importer specific address requirements
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when entity code has been prepared for 5040 validation. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Entity code has been prepared for 5040 validation
Applied to: Valid 5040 Entity Code?
Action: The system validates the entity code
Logic Flow:
IF Entity code has been prepared for 5040 validation
AND The system validates the entity code
THEN:
• Check ifWS-VALID-5040-N1 condition is true to determine if entity code is valid for 5040 destination
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity has valid 5040 entity code.
Trigger Criteria:
Context: Entity has valid 5040 entity code
Applied to: Complete Address Available?
Action: Address completeness is evaluated
Logic Flow:
IF Entity has valid 5040 entity code
AND Address completeness is evaluated
THEN:
• Check that city name AND country code are not SPACES, AND for US/CA countries, postal code AND state/province code are not SPACES
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when address validation is being performed.
Trigger Criteria:
Context: Address validation is being performed
Applied to: City Name Present?
Action: City name is checked
Logic Flow:
IF Address validation is being performed
AND City name is checked
THEN:
• Verify that GCCS-N401-CITY-NAME is not equal to SPACES
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when address validation is being performed.
Trigger Criteria:
Context: Address validation is being performed
Applied to: Country Code Present?
Action: Country code is checked
Logic Flow:
IF Address validation is being performed
AND Country code is checked
THEN:
• Verify that GCCS-N404-COUNTRY-CDE is not equal to SPACES
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when address has valid city name and country code.
Trigger Criteria:
Context: Address has valid city name and country code
Applied to: Postal Code Present for US/CA?
Action: Postal code validation is performed
Logic Flow:
IF Address has valid city name and country code
AND Postal code validation is performed
THEN:
• IfGCCS-N404-COUNTRY-CDE equals 'US' OR 'CA', thenGCCS-N403-POSTAL-CDE must not equal SPACES
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when address has valid postal code for us/ca or is non-us/ca country.
Trigger Criteria:
Context: Address has valid postal code for US/CA or is non-US/CA country
Applied to: State/Province Code Present for US/CA?
Action: State/province code validation is performed
Logic Flow:
IF Address has valid postal code for US/CA or is non-US/CA country
AND State/province code validation is performed
THEN:
• IfGCCS-N404-COUNTRY-CDE equals 'US' OR 'CA', thenGCCS-N402-STATE-PROV-CDE must not equal SPACES
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record has passed all validation checks.
Trigger Criteria:
Context: Entity record has passed all validation checks
Applied to: Process N1-N3-N4-PER Segments
Action: Entity processing is executed
Logic Flow:
IF Entity record has passed all validation checks
AND Entity processing is executed
THEN:
• Perform N2063-EACH-N1-N3-N4-PER procedure to create N1, N3, N4, and PER EDI segments for the entity
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when entity record fails validation checks.
Trigger Criteria:
Context: Entity record fails validation checks
Applied to: Clear Entity Record - Invalid Address
Action: Invalid entity data is detected
Logic Flow:
IF Entity record fails validation checks
AND Invalid entity data is detected
THEN:
• Initialize GCSCCS55 to clear the invalid entity record data
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when current entity record processing is complete. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Current entity record processing is complete
Applied to: Increment Loop Counter
Action: Moving to next entity record
Logic Flow:
IF Current entity record processing is complete
AND Moving to next entity record
THEN:
• Increment WS-SUB-REC by 1 to advance to the next entity position
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when all manifest entities have been processed.
Trigger Criteria:
Context: All manifest entities have been processed
Applied to: Add Railway Entity - Canadian Pacific
Action: Standard railway entity needs to be added
Logic Flow:
IF All manifest entities have been processed
AND Standard railway entity needs to be added
THEN:
• Create N1 segment with entity ID 'RR' and name 'CANADIAN PACIFIC RAILWAY'
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when railway n1 segment has been created.
Trigger Criteria:
Context: Railway N1 segment has been created
Applied to: Create Railway N3 Address Segment
Action: Railway address information is added
Logic Flow:
IF Railway N1 segment has been created
AND Railway address information is added
THEN:
• Create N3 segment with address '7550 OGDENDALE RD S.E.'
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when railway n3 address segment has been created.
Trigger Criteria:
Context: Railway N3 address segment has been created
Applied to: Create Railway N4 Location Segment
Action: Railway location information is added
Logic Flow:
IF Railway N3 address segment has been created
AND Railway location information is added
THEN:
• Create N4 segment with city 'CALGARY', country 'CA', postal code 'T2C 4X9', and state/province 'AB' in position 02 for 309-DESTINATIONor position 07 for other destinations
R-GCCS309C-cbl-00423 (+8)File: GCCS309C.cblBusiness Rule: Port Function Code Assignment
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest is being processed for port function code assignment.
Trigger Criteria:
Context: A manifest is being processed for port function code assignment
Applied to: Set Port Function Code 'O' for Origin
Action: The destination type is 309-destination
Logic Flow:
IF A manifest is being processed for port function code assignment
AND The destination type is 309-destination
THEN:
• The port function code should be set to 'O' for origin
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when manifest is being processed for port function code assignment.
Trigger Criteria:
Context: A manifest is being processed for port function code assignment
Applied to: Set Port Function Code 'J' for Junction
Action: The destination type is not 309-destination
Logic Flow:
IF A manifest is being processed for port function code assignment
AND The destination type is not 309-destination
THEN:
• The port function code should be set to 'J' for junction and the origin station state code should be added to province/state code field
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when first r4 segment for origin port has been created.
Trigger Criteria:
Context: The first R4 segment for origin port has been created
Applied to: Set Port Function Code '3' for Customs District
Action: Processing the second R4 segment for customs district
Logic Flow:
IF The first R4 segment for origin port has been created
AND Processing the second R4 segment for customs district
THEN:
• The port function code should be set to '3' and location qualifier should be set to 'CD'
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when processing the third r4 segment for destination port.
Trigger Criteria:
Context: Processing the third R4 segment for destination port
Applied to: Use From-Station Trans Code
Action: The CSA indicator is on
Logic Flow:
IF Processing the third R4 segment for destination port
AND The CSA indicator is on
THEN:
• The location identifier should use the manifest from-station transaction code
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when processing the third r4 segment for destination port.
Trigger Criteria:
Context: Processing the third R4 segment for destination port
Applied to: Use To-Station Trans Code
Action: The CSA indicator is off
Logic Flow:
IF Processing the third R4 segment for destination port
AND The CSA indicator is off
THEN:
• The location identifier should use the manifest to-station transaction code
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when processing the third r4 segment for destination port.
Trigger Criteria:
Context: Processing the third R4 segment for destination port
Applied to: Add Terminal Name if Not 309-Destination
Action: The destination type is not 309-destination
Logic Flow:
IF Processing the third R4 segment for destination port
AND The destination type is not 309-destination
THEN:
• The sub-location code should be added to the terminal name field
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when second r4 segment for customs district has been created.
Trigger Criteria:
Context: The second R4 segment for customs district has been created
Applied to: Set Port Function Code '4' for Destination
Action: Processing the third R4 segment for destination port
Logic Flow:
IF The second R4 segment for customs district has been created
AND Processing the third R4 segment for destination port
THEN:
• The port function code should be set to '4' and location qualifier should be set to 'CD'
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when processing the fourth r4 segment for final destination.
Trigger Criteria:
Context: Processing the fourth R4 segment for final destination
Applied to: Set Port Function Code 'E' for Export
Action: The destination type is 309-destination
Logic Flow:
IF Processing the fourth R4 segment for final destination
AND The destination type is 309-destination
THEN:
• The port function code should be set to 'E' for export
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when processing the fourth r4 segment for final destination.
Trigger Criteria:
Context: Processing the fourth R4 segment for final destination
Applied to: Set Port Function Code 'R' for Rail
Action: The destination type is not 309-destination
Logic Flow:
IF Processing the fourth R4 segment for final destination
AND The destination type is not 309-destination
THEN:
• The port function code should be set to 'R' for rail and the destination station state code should be added to province/state code field
R-GCCS309C-cbl-00432 (+10)File: GCCS309C.cblBusiness Rule: Follower Car Retrieval and Processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest contains idler shipment indicator and customs notification is required.
Trigger Criteria:
Context: A manifest contains idler shipment indicator and customs notification is required
Applied to: Initialize End-of-Followers Flag
Action: The system begins processing follower cars
Logic Flow:
IF A manifest contains idler shipment indicator and customs notification is required
AND The system begins processing follower cars
THEN:
• The end-of-followers flag is cleared and CCN key is set for database retrieval
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when idler car processing has been initiated.
Trigger Criteria:
Context: Idler car processing has been initiated
Applied to: Set CCN Key for Database Query
Action: The system prepares to query the database for follower cars
Logic Flow:
IF Idler car processing has been initiated
AND The system prepares to query the database for follower cars
THEN:
• The CCN key is set to the main manifest CCN and database function is set to Get Unique
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when database query parameters are configured for idler car retrieval. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Database query parameters are configured for idler car retrieval
Applied to: Retrieve Next Idler Car from Database
Action: The system executes the database call to get the next idler car
Logic Flow:
IF Database query parameters are configured for idler car retrieval
AND The system executes the database call to get the next idler car
THEN:
• The next idler car record is retrieved or end-of-data condition is detected
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when database call has been made to retrieve the next idler car. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A database call has been made to retrieve the next idler car
Applied to: End of Followers Reached?
Action: The database status code is not spaces (indicating no more records)
Logic Flow:
IF A database call has been made to retrieve the next idler car
AND The database status code is not spaces (indicating no more records)
THEN:
• The end-of-followers flag is set to 'Y' and processing terminates
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when idler car record has been successfully retrieved from the database.
Trigger Criteria:
Context: An idler car record has been successfully retrieved from the database
Applied to: Is Follower Manifested?
Action: The system checks the follower manifest indicator
Logic Flow:
IF An idler car record has been successfully retrieved from the database
AND The system checks the follower manifest indicator
THEN:
• IfGCCC-FOLLOWER-MFST is true, the car is processed for EDI segments, otherwise it is skipped
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when follower car is confirmed as manifested.
Trigger Criteria:
Context: A follower car is confirmed as manifested
Applied to: Create VID Equipment Segment for Follower Car
Action: The system processes the follower car for EDI transmission
Logic Flow:
IF A follower car is confirmed as manifested
AND The system processes the follower car for EDI transmission
THEN:
• A VID segment is created with the follower car's equipment information including car initial, number, and load status
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when vid segment has been created for a follower car.
Trigger Criteria:
Context: A VID segment has been created for a follower car
Applied to: Destination Type Check
Action: The system checks if the destination is 309-DESTINATION type
Logic Flow:
IF A VID segment has been created for a follower car
AND The system checks if the destination is 309-DESTINATION type
THEN:
• If309-DESTINATION, additional N10 and hazmat segments are processed; otherwise only basic VID segment is created
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when follower car is being processed and destination type is 309-destination.
Trigger Criteria:
Context: A follower car is being processed and destination type is 309-DESTINATION
Applied to: Create N10 Description Segment for Follower
Action: The system creates commodity description segments
Logic Flow:
IF A follower car is being processed and destination type is 309-DESTINATION
AND The system creates commodity description segments
THEN:
• An N10 segment is generated with quantity set to zero for follower cars and commodity description details
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when n10 segment has been created for a follower car.
Trigger Criteria:
Context: An N10 segment has been created for a follower car
Applied to: Follower Has Hazardous Material?
Action: The system checks for hazardous material indicators
Logic Flow:
IF An N10 segment has been created for a follower car
AND The system checks for hazardous material indicators
THEN:
• If UN number is not spaces, not 'NA', and commodity danger description exists, hazmat segments are created
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when follower car contains valid hazardous material information.
Trigger Criteria:
Context: A follower car contains valid hazardous material information
Applied to: Create H1-H2 Hazardous Material Segments for Follower
Action: The system processes hazardous material data
Logic Flow:
IF A follower car contains valid hazardous material information
AND The system processes hazardous material data
THEN:
• H1 segment is created with UN number and hazmat description, followed by H2 segments for additional hazmat details
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when current idler car processing is complete or the car was not manifested.
Trigger Criteria:
Context: Current idler car processing is complete or the car was not manifested
Applied to: Set Database Function to GN - Get Next
Action: The system prepares to retrieve the next idler car
Logic Flow:
IF Current idler car processing is complete or the car was not manifested
AND The system prepares to retrieve the next idler car
THEN:
• Database function is set to GN (Get Next) to continue sequential processing
R-GCCS309C-cbl-00443 (+7)File: GCCS309C.cblBusiness Rule: Multi
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest with consignee chop and commodity code information.
Trigger Criteria:
Context: A manifest with consignee CHOP and commodity code information
Applied to: Access AU Table for Automotive Check
Action: Both consignee CHOP and commodity code are not empty
Logic Flow:
IF A manifest with consignee CHOP and commodity code information
AND Both consignee CHOP and commodity code are not empty
THEN:
• The system should lookup the AU table using CHOP and commodity code as search criteria
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when au table record is successfully found and origin country and csa indicator are available.
Trigger Criteria:
Context: An AU table record is successfully found and origin country and CSA indicator are available
Applied to: Set Automotive Release Flag Based on Country and CSA Status
Action: Origin country is US, CA, or blank, OR origin country is MX with AU type second character as C, AND CSA indicator is OFF
Logic Flow:
IF An AU table record is successfully found and origin country and CSA indicator are available
AND Origin country is US, CA, or blank, OR origin country is MX with AU type second character as C, AND CSA indicator is OFF
THEN:
• The system should set the automotive flag to TRUE, otherwise set to non-automotive
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when manifest processing request.
Trigger Criteria:
Context: A manifest processing request
Applied to: Set Non-Automotive Flag
Action: Either consignee CHOP or commodity code is empty, OR AU table record is not found
Logic Flow:
IF A manifest processing request
AND Either consignee CHOP or commodity code is empty, OR AU table record is not found
THEN:
• The system should set the non-automotive flag to TRUE
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when manifest with from-station transportation code.
Trigger Criteria:
Context: A manifest with from-station transportation code
Applied to: Access SC Table for Station Codes
Action: Processing station information lookup
Logic Flow:
IF A manifest with from-station transportation code
AND Processing station information lookup
THEN:
• The system should query SC table using the from-station code as search criteria
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when sc table lookup request.
Trigger Criteria:
Context: An SC table lookup request
Applied to: Retrieve Station Name and State Code
Action: SC table record is found and Canadian station code is not 0000
Logic Flow:
IF An SC table lookup request
AND SC table record is found and Canadian station code is not 0000
THEN:
• The system should retrieve and store the station segment information
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when sc table lookup request.
Trigger Criteria:
Context: An SC table lookup request
Applied to: Generate Station Code Error Message
Action: SC table record is not found OR Canadian station code equals 0000
Logic Flow:
IF An SC table lookup request
AND SC table record is not found OR Canadian station code equals 0000
THEN:
• The system should generate an error message indicating SC table entry not found for the station
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when manifest with in-transit status information.
Trigger Criteria:
Context: A manifest with in-transit status information
Applied to: Access EX Table for Export Destination
Action: In-transit status equals 'L' (Local)
Logic Flow:
IF A manifest with in-transit status information
AND In-transit status equals 'L' (Local)
THEN:
• The system should initiate EX table lookup using destination station number
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when ex table lookup for destination station.
Trigger Criteria:
Context: An EX table lookup for destination station
Applied to: Set Export Destination Flag
Action: EX table record is successfully found
Logic Flow:
IF An EX table lookup for destination station
AND EX table record is successfully found
THEN:
• The system should set the export destination flag for subsequent processing
Business Justification: Dictates the expected operational logic and validation steps when cargo data array gcsccs55 with multiple entity records exists. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo data array GCSCCS55 with multiple entity records exists
Applied to: Get Next Entity Record from GCSCCS55
Action: The system iterates through entity records using WS-SUB-REC counter from 1 to maximum sequence GCSCCS99-S55-MAX-SEQ
Logic Flow:
IF A cargo data array GCSCCS55 with multiple entity records exists
AND The system iterates through entity records using WS-SUB-REC counter from 1 to maximum sequence GCSCCS99-S55-MAX-SEQ
THEN:
• Each non-empty entity record is retrieved and processed sequentially
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity record from the cargo data array is being evaluated.
Trigger Criteria:
Context: An entity record from the cargo data array is being evaluated
Applied to: Entity Record Empty?
Action: The entity record data equals SPACES or LOW-VALUES
Logic Flow:
IF An entity record from the cargo data array is being evaluated
AND The entity record data equals SPACES or LOW-VALUES
THEN:
• The record is considered empty and processing for that record is skipped
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid entity record needs to be processed.
Trigger Criteria:
Context: A valid entity record needs to be processed
Applied to: Destination Type Check
Action: The system checks the destination flag 309-DESTINATION
Logic Flow:
IF A valid entity record needs to be processed
AND The system checks the destination flag 309-DESTINATION
Business Justification: Ensures correct system behavior and process compliance when destination type is 4040 and an entity record contains an entity id code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The destination type is 4040 and an entity record contains an entity ID code
Applied to: Check Entity Code for 4040 Validity
Action: The entity ID code GCCS-N101-ENTITY-ID-CDE is checked against WS-VALID-4040-N1 validation table
Logic Flow:
IF The destination type is 4040 and an entity record contains an entity ID code
AND The entity ID code GCCS-N101-ENTITY-ID-CDE is checked against WS-VALID-4040-N1 validation table
THEN:
• The entity is marked as valid if the code exists in the 4040 validation table
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when destination type is 5040 and an entity record contains an entity id code. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The destination type is 5040 and an entity record contains an entity ID code
Applied to: Check Entity Code for 5040 Validity
Action: The entity ID code GCCS-N101-ENTITY-ID-CDE is checked against WS-VALID-5040-N1 validation table
Logic Flow:
IF The destination type is 5040 and an entity record contains an entity ID code
AND The entity ID code GCCS-N101-ENTITY-ID-CDE is checked against WS-VALID-5040-N1 validation table
THEN:
• The entity is marked as valid if the code exists in the 5040 validation table
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when valid 5040 entity record with address information.
Trigger Criteria:
Context: A valid 5040 entity record with address information
Applied to: Address Complete?
Action: The system checks city name, country code, postal code, and state/province code fields
Logic Flow:
IF A valid 5040 entity record with address information
AND The system checks city name, country code, postal code, and state/province code fields
THEN:
• Address is complete if city name and country code are present, and for US/CA countries, postal code and state/province code are also present
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity record requires consignee-importer address validation.
Trigger Criteria:
Context: An entity record requires consignee-importer address validation
Applied to: Perform Consignee-Importer Check
Action: The system calls N20625-CHECK-CN-IMPORTER procedure
Logic Flow:
IF An entity record requires consignee-importer address validation
AND The system calls N20625-CHECK-CN-IMPORTER procedure
THEN:
• Address mapping and validation logic is applied to ensure complete address information
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record has passed validation checks.
Trigger Criteria:
Context: An entity record has passed validation checks
Applied to: Process Entity Segments
Action: The entity contains valid data and meets destination requirements
Logic Flow:
IF An entity record has passed validation checks
AND The entity contains valid data and meets destination requirements
THEN:
• The system calls N2063-EACH-N1-N3-N4-PER to create transmission segments
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity record fails validation checks.
Trigger Criteria:
Context: An entity record fails validation checks
Applied to: Skip Invalid Entity
Action: The entity code is not valid for the destination type or address is incomplete
Logic Flow:
IF An entity record fails validation checks
AND The entity code is not valid for the destination type or address is incomplete
THEN:
• The system initializes GCSCCS55 to clear the record and continues to the next entity
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo data array gcsccs55 exists with multiple entity records. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A cargo data array GCSCCS55 exists with multiple entity records
Applied to: Read Entity Record from GCSCCS55
Action: The system processes entity records sequentially
Logic Flow:
IF A cargo data array GCSCCS55 exists with multiple entity records
AND The system processes entity records sequentially
THEN:
• Each non-empty record is loaded into GCSCCS55 structure for further processing and empty or low-value records terminate the loop
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when entity record is being processed from gcsccs55.
Trigger Criteria:
Context: An entity record is being processed from GCSCCS55
Applied to: Is Entity Code 'CN' - Consignee?
Action: The entity identification code is 'CN'
Logic Flow:
IF An entity record is being processed from GCSCCS55
AND The entity identification code is 'CN'
THEN:
• The entity is identified as a consignee and its address data is stored for potential use in importer address mapping
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when entity record is being processed from gcsccs55.
Trigger Criteria:
Context: An entity record is being processed from GCSCCS55
Applied to: Is Entity Code 'IM' - Importer?
Action: The entity identification code is 'IM'
Logic Flow:
IF An entity record is being processed from GCSCCS55
AND The entity identification code is 'IM'
THEN:
• The entity is identified as an importer and proceeds to address completeness validation
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when importer entity record is being processed.
Trigger Criteria:
Context: An importer entity record is being processed
Applied to: Is Importer Address Complete?
Action: The system validates address completeness by checking city name is not spaces AND country code is not spaces AND for US or CA countries postal code is not spaces AND state/province code is not spaces
Logic Flow:
IF An importer entity record is being processed
AND The system validates address completeness by checking city name is not spaces AND country code is not spaces AND for US or CA countries postal code is not spaces AND state/province code is not spaces
THEN:
• If all required fields are present the original importer address is used, otherwise consignee address is copied to replace incomplete importer address
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when address validation and potential mapping has been completed for an entity.
Trigger Criteria:
Context: Address validation and potential mapping has been completed for an entity
Applied to: Continue with Address Processing
Action: The system has determined the final address to use
Logic Flow:
IF Address validation and potential mapping has been completed for an entity
AND The system has determined the final address to use
THEN:
• The entity record proceeds to the address processing workflow with either the original or mapped address data
Business Justification: Defines the strict business conditions required to proceed when entity with identification code exists in the manifest data.
Trigger Criteria:
Context: An entity with identification code exists in the manifest data
Applied to: Check 4040 N1 Code Validity
Action: The destination type is 4040
Logic Flow:
IF An entity with identification code exists in the manifest data
AND The destination type is 4040
THEN:
• The system validates the entity code against the 4040 N1 code validity table
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity with identification code exists in the manifest data.
Trigger Criteria:
Context: An entity with identification code exists in the manifest data
Applied to: Check 5040 N1 Code Validity
Action: The destination type is 5040
Logic Flow:
IF An entity with identification code exists in the manifest data
AND The destination type is 5040
THEN:
• The system validates the entity code against the 5040 N1 code validity table
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity identification code has been checked against the appropriate validation table.
Trigger Criteria:
Context: An entity identification code has been checked against the appropriate validation table
Applied to: Valid N1 Code?
Action: The code validation is performed
Logic Flow:
IF An entity identification code has been checked against the appropriate validation table
AND The code validation is performed
THEN:
• The system either accepts the code as valid or rejects it as invalid
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when entity address record with city name field.
Trigger Criteria:
Context: An entity address record with city name field
Applied to: City Name Present?
Action: The address validation is performed
Logic Flow:
IF An entity address record with city name field
AND The address validation is performed
THEN:
• The system checks if the city name field contains a non-empty value
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity address record with country code field.
Trigger Criteria:
Context: An entity address record with country code field
Applied to: Country Code Present?
Action: The address validation is performed
Logic Flow:
IF An entity address record with country code field
AND The address validation is performed
THEN:
• The system checks if the country code field contains a non-empty value
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when entity address with a country code.
Trigger Criteria:
Context: An entity address with a country code
Applied to: Country is US or CA?
Action: The country code is either 'US' or 'CA'
Logic Flow:
IF An entity address with a country code
AND The country code is either 'US' or 'CA'
THEN:
• The system applies stricter validation rules requiring postal code and state/province code
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity address in the united states or canada.
Trigger Criteria:
Context: An entity address in the United States or Canada
Applied to: Postal Code Present?
Action: The postal code validation is performed
Logic Flow:
IF An entity address in the United States or Canada
AND The postal code validation is performed
THEN:
• The system requires a non-empty postal code value
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity address in the united states or canada.
Trigger Criteria:
Context: An entity address in the United States or Canada
Applied to: State/Province Code Present?
Action: The state/province code validation is performed
Logic Flow:
IF An entity address in the United States or Canada
AND The state/province code validation is performed
THEN:
• The system requires a non-empty state or province code value
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity address that has passed all required validations.
Trigger Criteria:
Context: An entity address that has passed all required validations
Applied to: Accept Complete Address
Action: All validation checks are successful
Logic Flow:
IF An entity address that has passed all required validations
AND All validation checks are successful
THEN:
• The system processes the entity address data for transmission
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when entity address that fails one or more validation checks.
Trigger Criteria:
Context: An entity address that fails one or more validation checks
Applied to: Reject Incomplete Address
Action: Any required field is missing or invalid
Logic Flow:
IF An entity address that fails one or more validation checks
AND Any required field is missing or invalid
THEN:
• The system initializes the address data to empty values and excludes it from processing
Business Justification: Dictates the expected operational logic and validation steps when manifest record with csa indicator status and both from-station and to-station transaction codes available.
Trigger Criteria:
Context: A manifest record with CSA indicator status and both from-station and to-station transaction codes available
Applied to: CSA Indicator Processing
Action: The system processes R4 port function code 4 segment for destination border crossing
Logic Flow:
IF A manifest record with CSA indicator status and both from-station and to-station transaction codes available
AND The system processes R4 port function code 4 segment for destination border crossing
THEN:
• If CSA indicator is ON, use the from-station transaction code as the location identifier, otherwise use the to-station transaction code as the location identifier
R-GCCS309C-cbl-00471 (+11)File: GCCS309C.cblBusiness Rule: Follower Car Database Iteration
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest contains idler shipment cars that need to be processed.
Trigger Criteria:
Context: A manifest contains idler shipment cars that need to be processed
Applied to: Initialize End-of-Followers Flag to Spaces
Action: The system begins follower car iteration processing
Logic Flow:
IF A manifest contains idler shipment cars that need to be processed
AND The system begins follower car iteration processing
THEN:
• The end-of-followers flag is set to spaces to indicate processing has not completed
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when manifest ccn key exists for the current shipment.
Trigger Criteria:
Context: A manifest CCN key exists for the current shipment
Applied to: Set CCN Key for Database Search
Action: The system needs to search for associated follower cars
Logic Flow:
IF A manifest CCN key exists for the current shipment
AND The system needs to search for associated follower cars
THEN:
• The CCN key is set as the database search parameter for follower car retrieval
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when system is ready to begin follower car database access.
Trigger Criteria:
Context: The system is ready to begin follower car database access
Applied to: Set Database Function to GU - Get Unique
Action: Starting the follower car retrieval process
Logic Flow:
IF The system is ready to begin follower car database access
AND Starting the follower car retrieval process
THEN:
• The database function is set to GU (Get Unique) to retrieve the first matching record
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when database search parameters and function are properly set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Database search parameters and function are properly set
Applied to: Call Database Access Function
Action: The system executes the database access call
Logic Flow:
IF Database search parameters and function are properly set
AND The system executes the database access call
THEN:
• The database operation is performed to retrieve follower car data
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when database access operation has been executed for follower cars.
Trigger Criteria:
Context: A database access operation has been executed for follower cars
Applied to: Database Status OK?
Action: The database operation fails or reaches end of file
Logic Flow:
IF A database access operation has been executed for follower cars
AND The database operation fails or reaches end of file
THEN:
• The end-of-followers flag is set to 'Y' to terminate processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when first follower car record has been successfully retrieved.
Trigger Criteria:
Context: The first follower car record has been successfully retrieved
Applied to: Change Function to GN - Get Next
Action: The system needs to continue processing additional follower cars
Logic Flow:
IF The first follower car record has been successfully retrieved
AND The system needs to continue processing additional follower cars
THEN:
• The database function is changed to GN (Get Next) for sequential record retrieval
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when system is in the middle of follower car processing.
Trigger Criteria:
Context: The system is in the middle of follower car processing
Applied to: End of Followers?
Action: Checking if more follower cars need to be processed
Logic Flow:
IF The system is in the middle of follower car processing
AND Checking if more follower cars need to be processed
THEN:
• Processing terminates if the end-of-followers flag indicates completion, otherwise continues
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when follower car record has been retrieved from the database.
Trigger Criteria:
Context: A follower car record has been retrieved from the database
Applied to: Is Follower Manifest Car?
Action: The system evaluates if the car should be included in manifest processing
Logic Flow:
IF A follower car record has been retrieved from the database
AND The system evaluates if the car should be included in manifest processing
THEN:
• The car is processed for manifest segments if it qualifies as a follower manifest car, otherwise it is skipped
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when follower car qualifies for manifest processing.
Trigger Criteria:
Context: A follower car qualifies for manifest processing
Applied to: Process VID Segment for Follower
Action: The system processes vehicle information for the follower car
Logic Flow:
IF A follower car qualifies for manifest processing
AND The system processes vehicle information for the follower car
THEN:
• A VID segment is generated containing the follower car's equipment details
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when follower car has been processed for vehicle information.
Trigger Criteria:
Context: A follower car has been processed for vehicle information
Applied to: Process N10 Description for Follower
Action: The system processes description and quantity information for the follower car
Logic Flow:
IF A follower car has been processed for vehicle information
AND The system processes description and quantity information for the follower car
THEN:
• An N10 segment is generated containing the follower car's cargo description and quantity details
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when follower car has been processed for basic manifest information.
Trigger Criteria:
Context: A follower car has been processed for basic manifest information
Applied to: Hazardous Material Present?
Action: The system checks for hazardous material indicators
Logic Flow:
IF A follower car has been processed for basic manifest information
AND The system checks for hazardous material indicators
THEN:
• Hazmat processing is performed if UN number exists and is not 'NA', and commodity danger description is present, otherwise hazmat processing is skipped
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when follower car contains hazardous materials.
Trigger Criteria:
Context: A follower car contains hazardous materials
Applied to: Process H1-H2 Hazmat for Follower
Action: The system processes hazardous material information for the follower car
Logic Flow:
IF A follower car contains hazardous materials
AND The system processes hazardous material information for the follower car
THEN:
• H1 and H2 segments are generated containing the follower car's hazardous material classification and description
Business Justification: Governs the functional prerequisites and system routing when manifest with consignee chop and commodity code fields.
Trigger Criteria:
Context: A manifest with consignee CHOP and commodity code fields
Applied to: Consignee CHOP and Commodity Code exist?
Action: The system checks for automotive release eligibility
Logic Flow:
IF A manifest with consignee CHOP and commodity code fields
AND The system checks for automotive release eligibility
THEN:
• The system should verify both consignee CHOP and commodity code are not spaces before accessing the AU table
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid consignee chop and commodity code exist.
Trigger Criteria:
Context: Valid consignee CHOP and commodity code exist
Applied to: Access AU Table with CHOP and Commodity Code
Action: The system needs to determine automotive classification
Logic Flow:
IF Valid consignee CHOP and commodity code exist
AND The system needs to determine automotive classification
THEN:
• The system should access the AU table using 'AU' as table ID, consignee CHOP as key CHOP, and commodity code as key commodity
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when au table lookup has been performed.
Trigger Criteria:
Context: An AU table lookup has been performed
Applied to: AU Table Entry Found?
Action: The system evaluates the lookup result
Logic Flow:
IF An AU table lookup has been performed
AND The system evaluates the lookup result
THEN:
• The system should check if the return flag indicates successful retrieval of AU table data
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when either consignee chop or commodity code is missing, or au table entry is not found.
Trigger Criteria:
Context: Either consignee CHOP or commodity code is missing, or AU table entry is not found
Applied to: Set Non-Automotive Flag
Action: The system determines automotive classification
Logic Flow:
IF Either consignee CHOP or commodity code is missing, or AU table entry is not found
AND The system determines automotive classification
THEN:
• The system should set the automotive flag to non-automotive as the default classification
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when valid au table entry exists for the consignee and commodity combination.
Trigger Criteria:
Context: A valid AU table entry exists for the consignee and commodity combination
Applied to: Evaluate Country and CSA Criteria
Action: The system determines final automotive classification
Logic Flow:
IF A valid AU table entry exists for the consignee and commodity combination
AND The system determines final automotive classification
THEN:
• The system should evaluate origin country codes and CSA indicator status according to automotive release business rules
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment with an origin country code.
Trigger Criteria:
Context: A shipment with an origin country code
Applied to: Origin Country is US, CA, or blank?
Action: The system evaluates automotive eligibility based on origin country
Logic Flow:
IF A shipment with an origin country code
AND The system evaluates automotive eligibility based on origin country
THEN:
• The system should consider shipments from US, CA, or blank origin country as potentially eligible for automotive classification
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when shipment originating from mexico with au table data.
Trigger Criteria:
Context: A shipment originating from Mexico with AU table data
Applied to: Origin Country is MX AND AU Type Code 2nd position is 'C'?
Action: The system evaluates automotive eligibility for Mexican origin
Logic Flow:
IF A shipment originating from Mexico with AU table data
AND The system evaluates automotive eligibility for Mexican origin
THEN:
• The system should check if origin country is MX and the second position of AU type code is 'C' to determine eligibility
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment that meets country origin criteria for automotive classification.
Trigger Criteria:
Context: A shipment that meets country origin criteria for automotive classification
Applied to: CSA Indicator is OFF?
Action: The system performs final automotive eligibility validation
Logic Flow:
IF A shipment that meets country origin criteria for automotive classification
AND The system performs final automotive eligibility validation
THEN:
• The system should verify that the CSA indicator is OFF before setting automotive classification
Rule Belongs to : GCCS309C.cbl
Business Justification: Defines the strict business conditions required to proceed when shipment that meets all automotive eligibility criteria including country origin and csa indicator status.
Trigger Criteria:
Context: A shipment that meets all automotive eligibility criteria including country origin and CSA indicator status
Applied to: Set Automotive Flag
Action: The system finalizes automotive classification
Logic Flow:
IF A shipment that meets all automotive eligibility criteria including country origin and CSA indicator status
AND The system finalizes automotive classification
THEN:
• The system should set the automotive flag to TRUE indicating the shipment qualifies for automotive processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment that does not meet all automotive eligibility criteria.
Trigger Criteria:
Context: A shipment that does not meet all automotive eligibility criteria
Applied to: Keep Non-Automotive Flag
Action: The system finalizes automotive classification
Logic Flow:
IF A shipment that does not meet all automotive eligibility criteria
AND The system finalizes automotive classification
THEN:
• The system should retain the non-automotive flag indicating the shipment does not qualify for automotive processing
R-GCCS309C-cbl-00493 (+6)File: GCCS309C.cblBusiness Rule: Evaluate Country and CSA Criteria
Rule Belongs to : GCCS309C.cbl
Business Justification: Governs the functional prerequisites and system routing when shipment with origin country, csa indicator status, and automotive type information available.
Trigger Criteria:
Context: A shipment with origin country, CSA indicator status, and automotive type information available
Applied to: Evaluate Country and CSA Criteria
Action: The system evaluates automotive classification criteria where origin country is US, CA, or blank, OR origin country is MX with automotive type second character as 'C', AND CSA indicator is OFF
Logic Flow:
IF A shipment with origin country, CSA indicator status, and automotive type information available
AND The system evaluates automotive classification criteria where origin country is US, CA, or blank, OR origin country is MX with automotive type second character as 'C', AND CSA indicator is OFF
THEN:
• The shipment is classified as AUTOMOTIVE, otherwise it remains NON-AUTOMOTIVE
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when shipment with an origin country code.
Trigger Criteria:
Context: A shipment with an origin country code
Applied to: Origin Country is US, CA, or blank?
Action: The origin country is 'US', 'CA', or blank spaces
Logic Flow:
IF A shipment with an origin country code
AND The origin country is 'US', 'CA', or blank spaces
THEN:
• The shipment meets the primary automotive country qualification criteria
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when shipment with an origin country code.
Trigger Criteria:
Context: A shipment with an origin country code
Applied to: Origin Country is MX?
Action: The origin country is 'MX'
Logic Flow:
IF A shipment with an origin country code
AND The origin country is 'MX'
THEN:
• The shipment requires automotive type code validation for automotive qualification
Rule Belongs to : GCCS309C.cbl
Business Justification: Ensures correct system behavior and process compliance when mexico origin shipment with automotive type code information.
Trigger Criteria:
Context: A Mexico origin shipment with automotive type code information
Applied to: AU Type second character is 'C'?
Action: The second character of the automotive type code is 'C'
Logic Flow:
IF A Mexico origin shipment with automotive type code information
AND The second character of the automotive type code is 'C'
THEN:
• The Mexico shipment meets the automotive type qualification criteria
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment that meets country and type qualifications with csa indicator information.
Trigger Criteria:
Context: A shipment that meets country and type qualifications with CSA indicator information
Applied to: CSA Indicator is OFF?
Action: The CSA indicator is OFF
Logic Flow:
IF A shipment that meets country and type qualifications with CSA indicator information
AND The CSA indicator is OFF
THEN:
• The shipment meets all criteria for automotive classification
Rule Belongs to : GCCS309C.cbl
Business Justification: Dictates the expected operational logic and validation steps when shipment that meets all automotive qualification criteria.
Trigger Criteria:
Context: A shipment that meets all automotive qualification criteria
Applied to: Set AUTOMOTIVE flag to TRUE
Action: Country, type, and CSA validations are successful
Logic Flow:
IF A shipment that meets all automotive qualification criteria
AND Country, type, and CSA validations are successful
THEN:
• The shipment is flagged as AUTOMOTIVE for processing
Rule Belongs to : GCCS309C.cbl
Business Justification: Establishes the required business protocol to be followed when shipment that does not meet automotive qualification criteria.
Trigger Criteria:
Context: A shipment that does not meet automotive qualification criteria
Applied to: Keep NON-AUTOMOTIVE flag
Action: Any of the country, type, or CSA validations fail
Logic Flow:
IF A shipment that does not meet automotive qualification criteria
AND Any of the country, type, or CSA validations fail
THEN:
• The shipment remains classified as NON-AUTOMOTIVE
📁 File: GCX122A.cbl
Select All in File
R-GCX122A-cbl-00035 (+14)File: GCX122A.cblBusiness Rule: Process Merlin Configuration
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to configure merlin user ids for message routing.
Trigger Criteria:
Context: System needs to configure Merlin user IDs for message routing
Applied to: Retrieve Administration Table Entry
Action: Administration table lookup is performed with table ID 'AD' and sequence ID 'ADMINID'
Logic Flow:
IF System needs to configure Merlin user IDs for message routing
AND Administration table lookup is performed with table ID 'AD' and sequence ID 'ADMINID'
THEN:
• Administration table segment is retrieved and stored for further processing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when administration table lookup has been performed.
Trigger Criteria:
Context: Administration table lookup has been performed
Applied to: Admin Table Found?
Action: Table lookup return flag equals 0
Logic Flow:
IF Administration table lookup has been performed
AND Table lookup return flag equals 0
THEN:
• Administration table segment is loaded for Merlin ID extraction, otherwise error message is set and error handling is called
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when administration table segment has been successfully retrieved.
Trigger Criteria:
Context: Administration table segment has been successfully retrieved
Applied to: Extract 4 Merlin User IDs from Admin Table
Action: Merlin ID validation process begins
Logic Flow:
IF Administration table segment has been successfully retrieved
AND Merlin ID validation process begins
THEN:
• Four Merlin user IDs (DC-P-MERLIN-1, DC-P-MERLIN-2, DC-P-MERLIN-3, DC-P-MERLIN-4) are extracted from administration table for validation
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #1 has been extracted from administration table.
Trigger Criteria:
Context:DC-P Merlin ID #1 has been extracted from administration table
Applied to: Validate DC-P Merlin ID #1
Action: User ID validation is performed against user directory
Logic Flow:
IFDC-P Merlin ID #1 has been extracted from administration table
AND User ID validation is performed against user directory
THEN:
• User ID validation status is determined for further processing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #1 validation has been performed.
Trigger Criteria:
Context:DC-P Merlin ID #1 validation has been performed
Applied to: Set DC-P Merlin ID as Valid
Action: User directory status code is blank indicating valid user
Logic Flow:
IFDC-P Merlin ID #1 validation has been performed
AND User directory status code is blank indicating valid user
THEN:
• DC-P Merlin ID is stored as valid andDC-P ID found flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #1 validation has been performed.
Trigger Criteria:
Context:DC-P Merlin ID #1 validation has been performed
Applied to: Set Default ID 'OM01247' for DC-P Mark as Invalid
Action: User directory status code is not blank indicating invalid user
Logic Flow:
IFDC-P Merlin ID #1 validation has been performed
AND User directory status code is not blank indicating invalid user
THEN:
• Default ID 'OM01247' is assigned to DC-P Merlin ID andDC-P ID not found flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #2 has been extracted from administration table.
Trigger Criteria:
Context:DC-P Merlin ID #2 has been extracted from administration table
Applied to: Validate IFS Merlin ID #2
Action: User ID validation is performed against user directory
Logic Flow:
IFDC-P Merlin ID #2 has been extracted from administration table
AND User ID validation is performed against user directory
THEN:
• User ID validation status is determined for IFS system routing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #2 validation has been performed.
Trigger Criteria:
Context:DC-P Merlin ID #2 validation has been performed
Applied to: Set IFS Merlin ID as Valid
Action: User directory status code is blank indicating valid user
Logic Flow:
IFDC-P Merlin ID #2 validation has been performed
AND User directory status code is blank indicating valid user
THEN:
• IFS Merlin ID is stored as valid for IFS system message routing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #2 validation has been performed.
Trigger Criteria:
Context:DC-P Merlin ID #2 validation has been performed
Applied to: Use DC-P Default ID for IFS
Action: User directory status code is not blank indicating invalid user
Logic Flow:
IFDC-P Merlin ID #2 validation has been performed
AND User directory status code is not blank indicating invalid user
THEN:
• DC-P Merlin ID #1 is assigned to IFS Merlin ID as fallback
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #3 has been extracted from administration table.
Trigger Criteria:
Context:DC-P Merlin ID #3 has been extracted from administration table
Applied to: Validate HHS Merlin ID #3
Action: User ID validation is performed against user directory
Logic Flow:
IFDC-P Merlin ID #3 has been extracted from administration table
AND User ID validation is performed against user directory
THEN:
• User ID validation status is determined for HHS system routing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #3 validation has been performed.
Trigger Criteria:
Context:DC-P Merlin ID #3 validation has been performed
Applied to: Set HHS Merlin ID as Valid
Action: User directory status code is blank indicating valid user
Logic Flow:
IFDC-P Merlin ID #3 validation has been performed
AND User directory status code is blank indicating valid user
THEN:
• HHS Merlin ID is stored as valid for HHS system message routing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #3 validation has been performed.
Trigger Criteria:
Context:DC-P Merlin ID #3 validation has been performed
Applied to: Use DC-P Default ID for HHS
Action: User directory status code is not blank indicating invalid user
Logic Flow:
IFDC-P Merlin ID #3 validation has been performed
AND User directory status code is not blank indicating invalid user
THEN:
• DC-P Merlin ID #1 is assigned to HHS Merlin ID as fallback
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #4 has been extracted from administration table.
Trigger Criteria:
Context:DC-P Merlin ID #4 has been extracted from administration table
Applied to: Validate IMS Merlin ID #4
Action: User ID validation is performed against user directory
Logic Flow:
IFDC-P Merlin ID #4 has been extracted from administration table
AND User ID validation is performed against user directory
THEN:
• User ID validation status is determined for IMS system routing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #4 validation has been performed.
Trigger Criteria:
Context:DC-P Merlin ID #4 validation has been performed
Applied to: Set IMS Merlin ID as Valid
Action: User directory status code is blank indicating valid user
Logic Flow:
IFDC-P Merlin ID #4 validation has been performed
AND User directory status code is blank indicating valid user
THEN:
• IMS Merlin ID is stored as valid for IMS system message routing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id #4 validation has been performed.
Trigger Criteria:
Context:DC-P Merlin ID #4 validation has been performed
Applied to: Use DC-P Default ID for IMS
Action: User directory status code is not blank indicating invalid user
Logic Flow:
IFDC-P Merlin ID #4 validation has been performed
AND User directory status code is not blank indicating invalid user
THEN:
• DC-P Merlin ID #1 is assigned to IMS Merlin ID as fallback
R-GCX122A-cbl-00050 (+4)File: GCX122A.cblBusiness Rule: Control Merlin ID Validation
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when system has retrieved dc-p merlin id 1 from the admin configuration table.
Trigger Criteria:
Context: The system has retrieved DC-P Merlin ID 1 from the admin configuration table
Applied to: Validate DC-P Merlin ID 1
Action: The system validates this Merlin ID against the user directory
Logic Flow:
IF The system has retrieved DC-P Merlin ID 1 from the admin configuration table
AND The system validates this Merlin ID against the user directory
THEN:
• If the ID is valid, it is set as the DCP Merlin ID and marked as found, otherwise the default 'OM01247' is used as DCP Merlin ID and the original ID is marked as not found
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when system has the dc-p merlin id 2 from the admin configuration and the validated dcp merlin id.
Trigger Criteria:
Context: The system has the DC-P Merlin ID 2 from the admin configuration and the validated DCP Merlin ID
Applied to: Validate DC-P Merlin ID 2
Action: The system validates DC-P Merlin ID 2 against the user directory
Logic Flow:
IF The system has the DC-P Merlin ID 2 from the admin configuration and the validated DCP Merlin ID
AND The system validates DC-P Merlin ID 2 against the user directory
THEN:
• If the ID is valid, it is set as the IFS Merlin ID, otherwise the DCP Merlin ID is used as the IFS Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when system has the dc-p merlin id 3 from the admin configuration and the validated dcp merlin id.
Trigger Criteria:
Context: The system has the DC-P Merlin ID 3 from the admin configuration and the validated DCP Merlin ID
Applied to: Validate DC-P Merlin ID 3
Action: The system validates DC-P Merlin ID 3 against the user directory
Logic Flow:
IF The system has the DC-P Merlin ID 3 from the admin configuration and the validated DCP Merlin ID
AND The system validates DC-P Merlin ID 3 against the user directory
THEN:
• If the ID is valid, it is set as the HHS Merlin ID, otherwise the DCP Merlin ID is used as the HHS Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when system has the dc-p merlin id 4 from the admin configuration and the validated dcp merlin id.
Trigger Criteria:
Context: The system has the DC-P Merlin ID 4 from the admin configuration and the validated DCP Merlin ID
Applied to: Validate DC-P Merlin ID 4
Action: The system validates DC-P Merlin ID 4 against the user directory
Logic Flow:
IF The system has the DC-P Merlin ID 4 from the admin configuration and the validated DCP Merlin ID
AND The system validates DC-P Merlin ID 4 against the user directory
THEN:
• If the ID is valid, it is set as the IMS Merlin ID, otherwise the DCP Merlin ID is used as the IMS Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when primary dc-p merlin id 1 has been validated and found to be invalid.
Trigger Criteria:
Context: The primary DC-P Merlin ID 1 has been validated and found to be invalid
Applied to: Set Default 'OM01247' as DCP Merlin ID
Action: The system needs to establish the DCP Merlin ID
Logic Flow:
IF The primary DC-P Merlin ID 1 has been validated and found to be invalid
AND The system needs to establish the DCP Merlin ID
THEN:
• The system sets 'OM01247' as the DCP Merlin ID and marks the primary ID as not found
R-GCX122A-cbl-00055 (+6)File: GCX122A.cblBusiness Rule: Initialize Reference Data
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when oti message is received with a reference number in field oti-03-ref-num. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An OTI message is received with a reference number in field OTI-03-REF-NUM
Applied to: Extract Reference Number from Message
Action: The system processes the message for reference initialization
Logic Flow:
IF An OTI message is received with a reference number in field OTI-03-REF-NUM
AND The system processes the message for reference initialization
THEN:
• The reference number is copied to EMI-REF, MST-REF, MSG-REF-KEY, andWS-REF-NUMBER variables
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is initializing reference data processing.
Trigger Criteria:
Context: The system is initializing reference data processing
Applied to: Set Processing Flags to Active
Action: Processing flags need to be set to their active states
Logic Flow:
IF The system is initializing reference data processing
AND Processing flags need to be set to their active states
THEN:
• SW-PROCESS-MST is set to TRUE, SW-PROCESS-MERLIN is set to TRUE, SW-NOT-TRAIN-ERROR is set to TRUE, andSW-NOT-CARGO-ERROR is set to TRUE
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when system is setting up message processing variables. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is setting up message processing variables
Applied to: Initialize Message Indicators
Action: Message indicators and counters need to be initialized
Logic Flow:
IF The system is setting up message processing variables
AND Message indicators and counters need to be initialized
THEN:
• WS-IND-TEXT is set to LINE-MESS-MIN, WS-IND-MST is set to LINE-MESS-MIN-MST, WS-IND-USER is set to ZERO, MST-INDX is set to ZERO, andWS-IND-ERR is set to ZERO
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when system is preparing message storage areas for new processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is preparing message storage areas for new processing
Applied to: Clear Message Content Areas
Action: Content areas need to be cleared
Logic Flow:
IF The system is preparing message storage areas for new processing
AND Content areas need to be cleared
THEN:
• EMI-TO-USERCODE, EMI-COPY-USERCODE, EMI-KEYWORDS, EMI-TEXT, EMI-RETURN-STATUS-FLAG, MST-TABLE, MST-CALL-LETTRS, andWS-LTERM-PROCESS are set to SPACES
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when message is being processed and oti-02-train condition is true.
Trigger Criteria:
Context: A message is being processed and OTI-02-TRAIN condition is true
Applied to: Set Train Report Label
Action: The system determines the message type for labeling
Logic Flow:
IF A message is being processed and OTI-02-TRAIN condition is true
AND The system determines the message type for labeling
THEN:
• MSG-LIB is set to 'TRAIN REPORT NUMBER :'
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when message is being processed and oti-02-cargo condition is true.
Trigger Criteria:
Context: A message is being processed and OTI-02-CARGO condition is true
Applied to: Set Cargo Control Label
Action: The system determines the message type for labeling
Logic Flow:
IF A message is being processed and OTI-02-CARGO condition is true
AND The system determines the message type for labeling
THEN:
• MSG-LIB is set to 'CARGO CONTROL NUMBER :'
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when message is being processed and neither oti-02-train nor oti-02-cargo conditions are true.
Trigger Criteria:
Context: A message is being processed and neither OTI-02-TRAIN nor OTI-02-CARGO conditions are true
Applied to: Set Generic Reference Label
Action: The system determines the message type for labeling
Logic Flow:
IF A message is being processed and neither OTI-02-TRAIN nor OTI-02-CARGO conditions are true
AND The system determines the message type for labeling
THEN:
• MSG-LIB is set to 'REFERENCE NUMBER :'
R-GCX122A-cbl-00062 (+11)File: GCX122A.cblBusiness Rule: Process Acknowledgment Messages
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when acknowledgment message is received.
Trigger Criteria:
Context: An acknowledgment message is received
Applied to: Message Type?
Action: The system evaluates the message type indicator
Logic Flow:
IF An acknowledgment message is received
AND The system evaluates the message type indicator
THEN:
• The message is routed to train processing ifOTI-02-TRAIN is true, cargo processing ifOTI-02-CARGO is true, or other reference processing for all other cases
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train acknowledgment message with reference number oti-03-ref-num.
Trigger Criteria:
Context: A train acknowledgment message with reference number OTI-03-REF-NUM
Applied to: Train Report Found?
Action: The system searches for the train report using the reference number
Logic Flow:
IF A train acknowledgment message with reference number OTI-03-REF-NUM
AND The system searches for the train report using the reference number
THEN:
• Processing continues with train update if found, or error message generation if not found
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when valid train report is found for acknowledgment.
Trigger Criteria:
Context: A valid train report is found for acknowledgment
Applied to: Update Train Status to ACK
Action: The acknowledgment is processed
Logic Flow:
IF A valid train report is found for acknowledgment
AND The acknowledgment is processed
THEN:
• The train status is set to ACK, security errors are cleared if the record is deleted or delete-pending, and acknowledgment flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train acknowledgment is being processed.
Trigger Criteria:
Context: A train acknowledgment is being processed
Applied to: Record Acknowledgment Number
Action: The acknowledgment details are recorded
Logic Flow:
IF A train acknowledgment is being processed
AND The acknowledgment details are recorded
THEN:
• The acknowledgment number from BGN-02-REF-NUM is stored and current date/time is captured for the acknowledgment timestamp
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train acknowledgment message is received.
Trigger Criteria:
Context: A train acknowledgment message is received
Applied to: Send Train Not Found Message
Action: The train report is not found in the database
Logic Flow:
IF A train acknowledgment message is received
AND The train report is not found in the database
THEN:
• An error message 'TRAIN REPORT NOT FOUND ON CUSTOMS DATABASE' is added to the message queue and train error flag is set
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo acknowledgment message with reference number oti-03-ref-num.
Trigger Criteria:
Context: A cargo acknowledgment message with reference number OTI-03-REF-NUM
Applied to: Cargo Control Number Found?
Action: The system searches for the cargo control number
Logic Flow:
IF A cargo acknowledgment message with reference number OTI-03-REF-NUM
AND The system searches for the cargo control number
THEN:
• Processing continues with cargo update if found, or error message generation if not found
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid cargo control number is found for acknowledgment.
Trigger Criteria:
Context: A valid cargo control number is found for acknowledgment
Applied to: Update Cargo Status to ACK
Action: The cargo acknowledgment is processed
Logic Flow:
IF A valid cargo control number is found for acknowledgment
AND The cargo acknowledgment is processed
THEN:
• The cargo current status is set to 'ACK' if the current status is SENT, and the processing terminal is determined from last modify terminal or creation terminal
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo acknowledgment message is received.
Trigger Criteria:
Context: A cargo acknowledgment message is received
Applied to: Send CCN Not Found Message
Action: The cargo control number is not found in the database
Logic Flow:
IF A cargo acknowledgment message is received
AND The cargo control number is not found in the database
THEN:
• An error message 'CCN NOT FOUND ON CUSTOMS D.B. FOR 824 ACK' is added to the message queue and DCP interface error flag is set
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo acknowledgment is being processed successfully.
Trigger Criteria:
Context: A cargo acknowledgment is being processed successfully
Applied to: Arrival Processing Required?
Action: The system checks the cargo arrival indicator
Logic Flow:
IF A cargo acknowledgment is being processed successfully
AND The system checks the cargo arrival indicator
THEN:
• Arrival processing is triggered ifGCCC-ARRIVAL-IND equals 'Y', otherwise normal processing continues
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo record has arrival indicator set to 'y'.
Trigger Criteria:
Context: A cargo record has arrival indicator set to 'Y'
Applied to: Process Cargo Arrival
Action: Cargo acknowledgment processing determines arrival processing is required
Logic Flow:
IF A cargo record has arrival indicator set to 'Y'
AND Cargo acknowledgment processing determines arrival processing is required
THEN:
• The arrival processing routine Z700-PROCESS-ARRIVAL is executed to handle cargo arrival notifications
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when acknowledgment message for a reference number that is neither train nor cargo.
Trigger Criteria:
Context: An acknowledgment message for a reference number that is neither train nor cargo
Applied to: Format Application Message
Action: The reference number OTI-03-REF-NUM is not spaces
Logic Flow:
IF An acknowledgment message for a reference number that is neither train nor cargo
AND The reference number OTI-03-REF-NUM is not spaces
THEN:
• An application message is formatted using the reference number qualifier and advance number, and message counters are incremented
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train acknowledgment has been processed successfully.
Trigger Criteria:
Context: A train acknowledgment has been processed successfully
Applied to: Update Train Status to ACK
Action: The train record has AEI-SEND flag set to 'Y'
Logic Flow:
IF A train acknowledgment has been processed successfully
AND The train record has AEI-SEND flag set to 'Y'
THEN:
• An AEI notification message is sent containing train ID and current status information
R-GCX122A-cbl-00074 (+13)File: GCX122A.cblBusiness Rule: Process Train Acknowledgment
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train acknowledgment message with a reference number.
Trigger Criteria:
Context: A train acknowledgment message with a reference number
Applied to: Retrieve Train Report by Reference Number
Action: The system processes the acknowledgment
Logic Flow:
IF A train acknowledgment message with a reference number
AND The system processes the acknowledgment
THEN:
• The system retrieves the corresponding train report from the database using the reference number
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train report lookup has been performed.
Trigger Criteria:
Context: A train report lookup has been performed
Applied to: Train Report Found?
Action: The database query completes
Logic Flow:
IF A train report lookup has been performed
AND The database query completes
THEN:
• The system determines if the train report exists based on the database status code being spaces or not
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train report lookup has failed.
Trigger Criteria:
Context: A train report lookup has failed
Applied to: Train Report Not Found
Action: The train report is not found in the database
Logic Flow:
IF A train report lookup has failed
AND The train report is not found in the database
THEN:
• The system adds the message 'TRAIN REPORT NOT FOUND ON CUSTOMS DATABASE' to the error text and MST entry
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train report is not found in the database.
Trigger Criteria:
Context: A train report is not found in the database
Applied to: Mark as Train Error for Notification
Action: The error message is set
Logic Flow:
IF A train report is not found in the database
AND The error message is set
THEN:
• The system sets the train error flag to true for subsequent notification processing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train report is found in the database.
Trigger Criteria:
Context: A train report is found in the database
Applied to: Clear Previous Error Status
Action: Processing the acknowledgment
Logic Flow:
IF A train report is found in the database
AND Processing the acknowledgment
THEN:
• The system clears the security error field by moving spaces to it
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train report exists in the database.
Trigger Criteria:
Context: A train report exists in the database
Applied to: Train Deleted or Delete Pending?
Action: Processing the acknowledgment
Logic Flow:
IF A train report exists in the database
AND Processing the acknowledgment
THEN:
• The system checks if the train report has deleted status or delete-pending status
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train report is marked as deleted or delete-pending.
Trigger Criteria:
Context: A train report is marked as deleted or delete-pending
Applied to: Clear Position and Port Data
Action: Processing the acknowledgment
Logic Flow:
IF A train report is marked as deleted or delete-pending
AND Processing the acknowledgment
THEN:
• The system initializes (clears) the security position and port fields
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when valid train report is being processed for acknowledgment.
Trigger Criteria:
Context: A valid train report is being processed for acknowledgment
Applied to: Set Train Status to ACK
Action: The acknowledgment processing continues
Logic Flow:
IF A valid train report is being processed for acknowledgment
AND The acknowledgment processing continues
THEN:
• The system sets the train acknowledgment flag to true and updates current status to 'ACK'
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train acknowledgment is being processed.
Trigger Criteria:
Context: A train acknowledgment is being processed
Applied to: Record Acknowledgment Reference Number
Action: Setting acknowledgment details
Logic Flow:
IF A train acknowledgment is being processed
AND Setting acknowledgment details
THEN:
• The system moves the reference number from the BGN segment to the train acknowledgment number field
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train acknowledgment is being processed.
Trigger Criteria:
Context: A train acknowledgment is being processed
Applied to: Capture Current Date and Time
Action: Recording acknowledgment details
Logic Flow:
IF A train acknowledgment is being processed
AND Recording acknowledgment details
THEN:
• The system captures machine century, date, and time from the common communication area and formats them into acknowledgment date-time field
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train acknowledgment details have been set.
Trigger Criteria:
Context: Train acknowledgment details have been set
Applied to: Update Train Report in Database
Action: Completing the acknowledgment process
Logic Flow:
IF Train acknowledgment details have been set
AND Completing the acknowledgment process
THEN:
• The system performs a database replace operation to update the train report with acknowledgment information
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train report has been successfully acknowledged.
Trigger Criteria:
Context: A train report has been successfully acknowledged
Applied to: AEI Send Required?
Action: Checking for additional notifications
Logic Flow:
IF A train report has been successfully acknowledged
AND Checking for additional notifications
THEN:
• The system checks if the AEI send flag equals 'Y' to determine if AEI message should be sent
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when aei send is required for the train.
Trigger Criteria:
Context: AEI send is required for the train
Applied to: Prepare AEI Status Message
Action: Preparing the notification message
Logic Flow:
IF AEI send is required for the train
AND Preparing the notification message
THEN:
• The system creates a message subject containing 'TRAIN: ' followed by the Canadian customs train ID, ' STATUS: ' and the current status
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when aei status message has been prepared.
Trigger Criteria:
Context: An AEI status message has been prepared
Applied to: Send AEI Message to Border Points
Action: Sending the notification
Logic Flow:
IF An AEI status message has been prepared
AND Sending the notification
THEN:
• The system calls the AEI message sending function to transmit the status update
R-GCX122A-cbl-00088 (+7)File: GCX122A.cblBusiness Rule: Process Cargo Acknowledgment
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo acknowledgment message with reference number is received.
Trigger Criteria:
Context: A cargo acknowledgment message with reference number is received
Applied to: Retrieve Cargo Control Record by Reference Number
Action: The system attempts to retrieve the cargo control record using the reference number
Logic Flow:
IF A cargo acknowledgment message with reference number is received
AND The system attempts to retrieve the cargo control record using the reference number
THEN:
• The system performs database lookup using the reference number as key for both cargo control and cargo segment records
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo acknowledgment is being processed.
Trigger Criteria:
Context: A cargo acknowledgment is being processed
Applied to: CCN Not Found
Action: The cargo control number is not found in the customs database
Logic Flow:
IF A cargo acknowledgment is being processed
AND The cargo control number is not found in the customs database
THEN:
• The system adds error message 'CCN NOT FOUND ON CUSTOMS D.B. FOR 824 ACK' and sets DCP interface error flag to true
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo control record is found and has status sent.
Trigger Criteria:
Context: A cargo control record is found and has status SENT
Applied to: Update Cargo Status to ACK
Action: Processing a cargo acknowledgment message
Logic Flow:
IF A cargo control record is found and has status SENT
AND Processing a cargo acknowledgment message
THEN:
• The system updates the cargo current status to 'ACK'
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo control record is found in the database.
Trigger Criteria:
Context: A cargo control record is found in the database
Applied to: Set Current Status to ACK
Action: Processing a cargo acknowledgment message
Logic Flow:
IF A cargo control record is found in the database
AND Processing a cargo acknowledgment message
THEN:
• The system sets the working current status to 'ACK'
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo control record is found with terminal information.
Trigger Criteria:
Context: A cargo control record is found with terminal information
Applied to: Use Last Modify Terminal for Processing
Action: The last modify terminal field is not empty
Logic Flow:
IF A cargo control record is found with terminal information
AND The last modify terminal field is not empty
THEN:
• The system uses the last modify terminal for processing operations
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo control record is found with terminal information.
Trigger Criteria:
Context: A cargo control record is found with terminal information
Applied to: Use Creation Terminal for Processing
Action: The last modify terminal field is empty or not available
Logic Flow:
IF A cargo control record is found with terminal information
AND The last modify terminal field is empty or not available
THEN:
• The system uses the creation terminal for processing operations
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo control record is being processed for acknowledgment.
Trigger Criteria:
Context: A cargo control record is being processed for acknowledgment
Applied to: Process Arrival Notifications
Action: The arrival indicator field equals 'Y'
Logic Flow:
IF A cargo control record is being processed for acknowledgment
AND The arrival indicator field equals 'Y'
THEN:
• The system performs arrival processing operations
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo acknowledgment processing is complete with status and terminal updates.
Trigger Criteria:
Context: Cargo acknowledgment processing is complete with status and terminal updates
Applied to: Update Cargo Control Record
Action: All acknowledgment processing steps are finished
Logic Flow:
IF Cargo acknowledgment processing is complete with status and terminal updates
AND All acknowledgment processing steps are finished
THEN:
• The system updates the cargo control record in the database with all modified fields
R-GCX122A-cbl-00096 (+13)File: GCX122A.cblBusiness Rule: Process Error Messages
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train error message is received.
Trigger Criteria:
Context: A train error message is received
Applied to: Is Test Message?
Action: The reference number equals '6105ETESTTRAIN00000000000'
Logic Flow:
IF A train error message is received
AND The reference number equals '6105ETESTTRAIN00000000000'
THEN:
• The message is flagged as test data and special test processing is performed
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo error message is received.
Trigger Criteria:
Context: A cargo error message is received
Applied to: Is Test Message?
Action: The reference number starts with '6105ECPRSTESTCARGO' or '6105ETESTCARGO'
Logic Flow:
IF A cargo error message is received
AND The reference number starts with '6105ECPRSTESTCARGO' or '6105ETESTCARGO'
THEN:
• The message is flagged as test data and special test processing is performed
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when error message is received that is not test data.
Trigger Criteria:
Context: An error message is received that is not test data
Applied to: Message Type?
Action: The message type indicator is evaluated
Logic Flow:
IF An error message is received that is not test data
AND The message type indicator is evaluated
THEN:
• The message is routed to either train error processing or cargo error processing based on the type indicator
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train error message with a reference number is being processed.
Trigger Criteria:
Context: A train error message with a reference number is being processed
Applied to: Train Report Found?
Action: The system searches for the train report using the reference number
Logic Flow:
IF A train error message with a reference number is being processed
AND The system searches for the train report using the reference number
THEN:
• If the train report is not found, an error flag is set and a 'train report not found' message is recorded
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train report is found and an error message is being processed.
Trigger Criteria:
Context: A train report is found and an error message is being processed
Applied to: Is V67 Warning?
Action: The free-form message text starts with 'V67'
Logic Flow:
IF A train report is found and an error message is being processed
AND The free-form message text starts with 'V67'
THEN:
• The message is classified as a V67 warning and special warning processing is applied
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo error message with a reference number is being processed.
Trigger Criteria:
Context: A cargo error message with a reference number is being processed
Applied to: Cargo Control Found?
Action: The system searches for the cargo control number using the reference number
Logic Flow:
IF A cargo error message with a reference number is being processed
AND The system searches for the cargo control number using the reference number
THEN:
• If the cargo control number is not found, an error flag is set and a 'CCN not found' message is recorded
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo control number is not found in the database.
Trigger Criteria:
Context: A cargo control number is not found in the database
Applied to: Is V67 Warning - Process as Train?
Action: The free-form message text starts with 'V67'
Logic Flow:
IF A cargo control number is not found in the database
AND The free-form message text starts with 'V67'
THEN:
• The message is rerouted to train error processing instead of cargo error processing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when error message needs to be processed and displayed.
Trigger Criteria:
Context: An error message needs to be processed and displayed
Applied to: Error Message Found in Tables?
Action: The system searches for standardized message text using the error code
Logic Flow:
IF An error message needs to be processed and displayed
AND The system searches for standardized message text using the error code
THEN:
• If found, the standardized English text is used; if not found, the original free-form message is used and a 'message not found' warning is added
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when error message has been processed and message text retrieved.
Trigger Criteria:
Context: An error message has been processed and message text retrieved
Applied to: Error Type?
Action: The error type from the message table is evaluated
Logic Flow:
IF An error message has been processed and message text retrieved
AND The error type from the message table is evaluated
THEN:
• Status is set to INFO for type 'X' with warning messages, WARNING for type 'X' with error messages, ERROR for other types, or REJECT for type 'R'
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when error status needs to be applied to a record.
Trigger Criteria:
Context: An error status needs to be applied to a record
Applied to: Record Type?
Action: The system evaluates which type of record was successfully found and processed
Logic Flow:
IF An error status needs to be applied to a record
AND The system evaluates which type of record was successfully found and processed
THEN:
• The appropriate update procedure is called for either train reports or cargo control records
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train report exists and is not deleted or delete-pending.
Trigger Criteria:
Context: A train report exists and is not deleted or delete-pending
Applied to: Update Train Report Status
Action: An error or reject status needs to be applied
Logic Flow:
IF A train report exists and is not deleted or delete-pending
AND An error or reject status needs to be applied
THEN:
• The error resend flag is set, the train key and position date are recorded in error fields, and the status is updated to either ERROR or REJECT based on error type
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo control record exists and needs status update.
Trigger Criteria:
Context: A cargo control record exists and needs status update
Applied to: Update Cargo Control Status
Action: An error or reject status needs to be applied
Logic Flow:
IF A cargo control record exists and needs status update
AND An error or reject status needs to be applied
THEN:
• The error status index is set to 'E', the error status is set to either 'E' for errors or 'R' for rejects, and the current status is updated accordingly
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train report is found in the database.
Trigger Criteria:
Context: A train report is found in the database
Applied to: Retrieve Last Modified Terminal
Action: Terminal information is needed for message routing
Logic Flow:
IF A train report is found in the database
AND Terminal information is needed for message routing
THEN:
• If last modified terminal is not empty, use it; otherwise use the creation terminal for processing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo control record is found in the database.
Trigger Criteria:
Context: A cargo control record is found in the database
Applied to: Retrieve Last Modified Terminal
Action: Terminal information is needed for message routing
Logic Flow:
IF A cargo control record is found in the database
AND Terminal information is needed for message routing
THEN:
• If CCN last modify terminal is not empty, use it; otherwise use the CCN creation terminal for processing
R-GCX122A-cbl-00110 (+11)File: GCX122A.cblBusiness Rule: Process Train Errors
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train error message is being processed.
Trigger Criteria:
Context: A train error message is being processed
Applied to: Is Test Train Message?
Action: The reference number equals '6105ETESTTRAIN00000000000'
Logic Flow:
IF A train error message is being processed
AND The reference number equals '6105ETESTTRAIN00000000000'
THEN:
• The message is flagged as test train data and special test processing is performed
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train error message is being processed.
Trigger Criteria:
Context: A train error message is being processed
Applied to: Set Train Error Flag
Action: The message is not a test train message
Logic Flow:
IF A train error message is being processed
AND The message is not a test train message
THEN:
• The train error flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when test train message has been identified.
Trigger Criteria:
Context: A test train message has been identified
Applied to: Handle Test Train Processing
Action: The reference number matches the test train pattern
Logic Flow:
IF A test train message has been identified
AND The reference number matches the test train pattern
THEN:
• Special check processing is performed and test train indicator is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train error needs to be processed.
Trigger Criteria:
Context: A train error needs to be processed
Applied to: Retrieve Train Report from Database
Action: The system needs to update the train report
Logic Flow:
IF A train error needs to be processed
AND The system needs to update the train report
THEN:
• The train report is retrieved from GCSB4RT database using the reference number as key
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train report is not found in the database.
Trigger Criteria:
Context: A train report is not found in the database
Applied to: Is V67 Warning Message?
Action: The free form message starts with 'V67'
Logic Flow:
IF A train report is not found in the database
AND The free form message starts with 'V67'
THEN:
• The message is identified as a V67 warning requiring special handling
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train report is not found in the database.
Trigger Criteria:
Context: A train report is not found in the database
Applied to: Set Error Flag for DCP Interface
Action: An error message has been added for the missing train
Logic Flow:
IF A train report is not found in the database
AND An error message has been added for the missing train
THEN:
• The DCP interface error flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train report is not found and the message is a v67 warning.
Trigger Criteria:
Context: A train report is not found and the message is a V67 warning
Applied to: Train/Cargo Not Found for V67 Warning
Action: The system processes the missing train record
Logic Flow:
IF A train report is not found and the message is a V67 warning
AND The system processes the missing train record
THEN:
• The message 'TRAIN/CARGO NOT FOUND ON CUSTOMS DATABASE FOR V67 WARNING' is added to the error text and MST entry
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train report is not found and the message is not a v67 warning.
Trigger Criteria:
Context: A train report is not found and the message is not a V67 warning
Applied to: Train Report Not Found on Database
Action: The system processes the missing train record
Logic Flow:
IF A train report is not found and the message is not a V67 warning
AND The system processes the missing train record
THEN:
• The message 'TRAIN REPORT NOT FOUND ON CUSTOMS DATABASE' is added to the error text and MST entry
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train report is found in the database.
Trigger Criteria:
Context: A train report is found in the database
Applied to: Is V67 Warning?
Action: The free form message starts with 'V67'
Logic Flow:
IF A train report is found in the database
AND The free form message starts with 'V67'
THEN:
• The message is identified as a V67 warning and train message type is set
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train report is found in the database.
Trigger Criteria:
Context: A train report is found in the database
Applied to: Capture Last Modified Terminal
Action: The last modified terminal field is not empty
Logic Flow:
IF A train report is found in the database
AND The last modified terminal field is not empty
THEN:
• The last modified terminal is captured for processing terminal identification
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train report is found in the database.
Trigger Criteria:
Context: A train report is found in the database
Applied to: Capture Creation Terminal if No Last Modified
Action: The last modified terminal field is empty
Logic Flow:
IF A train report is found in the database
AND The last modified terminal field is empty
THEN:
• The creation terminal is captured for processing terminal identification
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train report is found and the message is a v67 warning.
Trigger Criteria:
Context: A train report is found and the message is a V67 warning
Applied to: Set Train Message Type
Action: The V67 warning is being processed
Logic Flow:
IF A train report is found and the message is a V67 warning
AND The V67 warning is being processed
THEN:
• The train message type indicator is set to true
R-GCX122A-cbl-00122 (+13)File: GCX122A.cblBusiness Rule: Process Cargo Errors
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo error message is being processed.
Trigger Criteria:
Context: A cargo error message is being processed
Applied to: Is Test Cargo Message?
Action: The reference number starts with '6105ECPRSTESTCARGO' or '6105ETESTCARGO'
Logic Flow:
IF A cargo error message is being processed
AND The reference number starts with '6105ECPRSTESTCARGO' or '6105ETESTCARGO'
THEN:
• The message is flagged as test cargo and routed to special test processing
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo message has been identified as test data.
Trigger Criteria:
Context: A cargo message has been identified as test data
Applied to: Handle Test Cargo Processing
Action: The test cargo flag is set
Logic Flow:
IF A cargo message has been identified as test data
AND The test cargo flag is set
THEN:
• The system performs special check processing and exits cargo error handling
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when non-test cargo error message is being processed.
Trigger Criteria:
Context: A non-test cargo error message is being processed
Applied to: Set Cargo Error Flag
Action: The message is confirmed as production cargo data
Logic Flow:
IF A non-test cargo error message is being processed
AND The message is confirmed as production cargo data
THEN:
• The cargo error flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo error message with a reference number.
Trigger Criteria:
Context: A cargo error message with a reference number
Applied to: Retrieve Cargo Control Record
Action: The system searches for the corresponding cargo control record
Logic Flow:
IF A cargo error message with a reference number
AND The system searches for the corresponding cargo control record
THEN:
• The cargo record is retrieved if it exists in the database
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo control record is not found in the database.
Trigger Criteria:
Context: A cargo control record is not found in the database
Applied to: Is V67 Warning?
Action: The free-form message starts with 'V67'
Logic Flow:
IF A cargo control record is not found in the database
AND The free-form message starts with 'V67'
THEN:
• The message is identified as a V67 warning requiring train error processing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo record is not found and the message is identified as v67 warning.
Trigger Criteria:
Context: A cargo record is not found and the message is identified as V67 warning
Applied to: Process as Train Error Instead
Action: The V67 redirection rule is triggered
Logic Flow:
IF A cargo record is not found and the message is identified as V67 warning
AND The V67 redirection rule is triggered
THEN:
• The system processes the message using train error handling procedures
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo control record search fails and the message is not a v67 warning.
Trigger Criteria:
Context: A cargo control record search fails and the message is not a V67 warning
Applied to: CCN Not Found
Action: The cargo record is confirmed as not found
Logic Flow:
IF A cargo control record search fails and the message is not a V67 warning
AND The cargo record is confirmed as not found
THEN:
• An error message 'CCN NOT FOUND ON CUSTOMS DATABASE' is added to the message queue
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo control record cannot be found in the database.
Trigger Criteria:
Context: A cargo control record cannot be found in the database
Applied to: Set Error Flag for DCP Interface
Action: The cargo not found condition is confirmed
Logic Flow:
IF A cargo control record cannot be found in the database
AND The cargo not found condition is confirmed
THEN:
• The DCP interface error flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo control record is successfully found.
Trigger Criteria:
Context: A cargo control record is successfully found
Applied to: Save Current Cargo Status
Action: The system prepares to process the cargo error
Logic Flow:
IF A cargo control record is successfully found
AND The system prepares to process the cargo error
THEN:
• The current cargo status is saved for comparison and audit purposes
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo control record is successfully retrieved from the database.
Trigger Criteria:
Context: A cargo control record is successfully retrieved from the database
Applied to: Set Cargo Report Found Flag
Action: The cargo record exists and is accessible
Logic Flow:
IF A cargo control record is successfully retrieved from the database
AND The cargo record exists and is accessible
THEN:
• The cargo report found flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo control record has been found and status saved.
Trigger Criteria:
Context: A cargo control record has been found and status saved
Applied to: Capture Last Modify Terminal
Action: The system needs to determine the appropriate terminal for notifications
Logic Flow:
IF A cargo control record has been found and status saved
AND The system needs to determine the appropriate terminal for notifications
THEN:
• The last modify terminal information is captured from the cargo record
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when terminal information needs to be determined for error routing.
Trigger Criteria:
Context: Terminal information needs to be determined for error routing
Applied to: Last Modify Terminal Available?
Action: The last modify terminal field is evaluated
Logic Flow:
IF Terminal information needs to be determined for error routing
AND The last modify terminal field is evaluated
THEN:
• The system determines if a valid last modify terminal exists (not spaces)
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when valid last modify terminal exists in the cargo record.
Trigger Criteria:
Context: A valid last modify terminal exists in the cargo record
Applied to: Use Last Modify Terminal
Action: Terminal selection logic is executed
Logic Flow:
IF A valid last modify terminal exists in the cargo record
AND Terminal selection logic is executed
THEN:
• The last modify terminal is selected for processing error notifications
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when no valid last modify terminal exists in the cargo record.
Trigger Criteria:
Context: No valid last modify terminal exists in the cargo record
Applied to: Use Creation Terminal
Action: Terminal selection fallback logic is triggered
Logic Flow:
IF No valid last modify terminal exists in the cargo record
AND Terminal selection fallback logic is triggered
THEN:
• The creation terminal is selected for processing error notifications
R-GCX122A-cbl-00136 (+9)File: GCX122A.cblBusiness Rule: Retrieve Error Message Text
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when error processing request is being handled.
Trigger Criteria:
Context: An error processing request is being handled
Applied to: Message Number Available?
Action: The system checks for availability of a custom message number in GCW122-MSG-NUM field
Logic Flow:
IF An error processing request is being handled
AND The system checks for availability of a custom message number in GCW122-MSG-NUM field
THEN:
• If custom message number exists and is not spaces, use it for lookup, otherwise use the first 3 characters of the TED free-form message as the error code
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when custom message number exists in gcw122-msg-num field.
Trigger Criteria:
Context: A custom message number exists in GCW122-MSG-NUM field
Applied to: Use Custom Message Number
Action: The system builds the lookup key for message table query
Logic Flow:
IF A custom message number exists in GCW122-MSG-NUM field
AND The system builds the lookup key for message table query
THEN:
• Concatenate 'B' prefix with the custom message number to form the sequence ID for table lookup
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when no custom message number exists in gcw122-msg-num field.
Trigger Criteria:
Context: No custom message number exists in GCW122-MSG-NUM field
Applied to: Use Standard Error Code from TED Message
Action: The system builds the lookup key for message table query
Logic Flow:
IF No custom message number exists in GCW122-MSG-NUM field
AND The system builds the lookup key for message table query
THEN:
• Concatenate 'B' prefix with the first 3 characters of TED-02-FREE-FORM-MSG to form the sequence ID for table lookup
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when lookup key has been constructed with table id 'ms' and sequence id.
Trigger Criteria:
Context: A lookup key has been constructed with table ID 'MS' and sequence ID
Applied to: Lookup Message in MS Table
Action: The system performs a table segment retrieval using function code 'GU'
Logic Flow:
IF A lookup key has been constructed with table ID 'MS' and sequence ID
AND The system performs a table segment retrieval using function code 'GU'
THEN:
• Query the MS table using the constructed key and return the table segment or error flag
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when message table lookup has been performed.
Trigger Criteria:
Context: A message table lookup has been performed
Applied to: Message Found in Table?
Action: The system checks the return flag from the table lookup operation
Logic Flow:
IF A message table lookup has been performed
AND The system checks the return flag from the table lookup operation
THEN:
• If return flag equals 0, message was found in table, otherwise message was not found and raw error text should be used
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when message lookup was successful and table segment is available.
Trigger Criteria:
Context: Message lookup was successful and table segment is available
Applied to: Retrieve Standardized English Text
Action: The system processes the retrieved MS table segment
Logic Flow:
IF Message lookup was successful and table segment is available
AND The system processes the retrieved MS table segment
THEN:
• Set message found flag to true, move table segment to MS segment structure, and extract English text to working storage
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when message table lookup failed to find standardized text.
Trigger Criteria:
Context: Message table lookup failed to find standardized text
Applied to: Use Raw Error Message from TED
Action: The system needs to provide error message text
Logic Flow:
IF Message table lookup failed to find standardized text
AND The system needs to provide error message text
THEN:
• Set message not found flag to true and use TED-02-FREE-FORM-MSG as the error message text
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when message text has been determined from either table lookup or raw ted message.
Trigger Criteria:
Context: Message text has been determined from either table lookup or raw TED message
Applied to: Format Message for Display
Action: The system prepares the message for display
Logic Flow:
IF Message text has been determined from either table lookup or raw TED message
AND The system prepares the message for display
THEN:
• Add the message text to both EMI text line array and MST entry array at current index positions, and increment the text and MST index counters
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when message text has been formatted for display.
Trigger Criteria:
Context: Message text has been formatted for display
Applied to: Prepare Message for Transaction Log
Action: The system prepares the message for transaction logging
Logic Flow:
IF Message text has been formatted for display
AND The system prepares the message for transaction logging
THEN:
• Set security byte to high-value, populate sending transaction as 'GCT1221E', set ACF2 user ID, date, time, action code as 'ZZZ', and reference number, then determine record type based on cargo or train classification
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when message was not found in the ms table during lookup.
Trigger Criteria:
Context: Message was not found in the MS table during lookup
Applied to: Add Secondary Error Message
Action: The system processes the unfound message scenario
Logic Flow:
IF Message was not found in the MS table during lookup
AND The system processes the unfound message scenario
THEN:
• Add a secondary message 'ERROR MESSAGE NOT FOUND ON TABLE :' with the error number, format it for display and logging, and increment message counters
R-GCX122A-cbl-00146 (+8)File: GCX122A.cblBusiness Rule: Update Train/Cargo Status
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when error message is being processed for train or cargo.
Trigger Criteria:
Context: An error message is being processed for train or cargo
Applied to: Error Type = 'X' Info?
Action: The error type from the message table is 'X' (informational)
Logic Flow:
IF An error message is being processed for train or cargo
AND The error type from the message table is 'X' (informational)
THEN:
• Set current status to 'WARNING' if the original item was a warning, otherwise set to 'INFO', and exit without database updates
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train report is found and is not deleted or delete-pending.
Trigger Criteria:
Context: A train report is found and is not deleted or delete-pending
Applied to: Set Error Resend Flag
Action: Processing an error message for the train
Logic Flow:
IF A train report is found and is not deleted or delete-pending
AND Processing an error message for the train
THEN:
• Set the security error resend flag to 'Y' to indicate the record needs error processing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train record is being updated with error information. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A train record is being updated with error information
Applied to: Copy Train Key to Error Fields
Action: The error resend flag has been set
Logic Flow:
IF A train record is being updated with error information
AND The error resend flag has been set
THEN:
• Copy the train key to the security error train field and copy the position date to the security error date field
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train record is being updated with error information.
Trigger Criteria:
Context: A train record is being updated with error information
Applied to: Error Type = 'R' Reject?
Action: The message table error type is 'R'
Logic Flow:
IF A train record is being updated with error information
AND The message table error type is 'R'
THEN:
• Set train status to 'REJECT' and current status to 'REJECT', otherwise set train status to 'ERROR' and current status to 'ERROR'
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train record status and error information have been updated.
Trigger Criteria:
Context: Train record status and error information have been updated
Applied to: Update Train Record in Database
Action: All train record modifications are complete
Logic Flow:
IF Train record status and error information have been updated
AND All train record modifications are complete
THEN:
• Replace the train record in the database with the updated information
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train record has been updated with new status information.
Trigger Criteria:
Context: A train record has been updated with new status information
Applied to: Send AEI Message if Required
Action: The train record has AEI send flag set to 'Y'
Logic Flow:
IF A train record has been updated with new status information
AND The train record has AEI send flag set to 'Y'
THEN:
• Send an AEI message containing the train ID and current status
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo report is found and needs error processing.
Trigger Criteria:
Context: A cargo report is found and needs error processing
Applied to: Set Error/Release Status Index
Action: Processing an error message for cargo
Logic Flow:
IF A cargo report is found and needs error processing
AND Processing an error message for cargo
THEN:
• Set the error or release status index to 'E' to indicate error processing mode
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo record is being updated with error information.
Trigger Criteria:
Context: A cargo record is being updated with error information
Applied to: Error Type = 'R' Reject?
Action: The message table error type is 'R'
Logic Flow:
IF A cargo record is being updated with error information
AND The message table error type is 'R'
THEN:
• Set cargo error status to 'R' and current status to 'REJECT', otherwise set cargo error status to 'E' and current status to 'ERROR'
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo record status and error information have been updated.
Trigger Criteria:
Context: Cargo record status and error information have been updated
Applied to: Update Cargo Record in Database
Action: All cargo record modifications are complete
Logic Flow:
IF Cargo record status and error information have been updated
AND All cargo record modifications are complete
THEN:
• Replace the cargo record in the database with the updated information
R-GCX122A-cbl-00155 (+7)File: GCX122A.cblBusiness Rule: Handle Test Messages
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when error message is received with a reference number.
Trigger Criteria:
Context: An error message is received with a reference number
Applied to: Identify as Test Train Message 6105ETESTTRAIN00000000000
Action: The reference number equals '6105ETESTTRAIN00000000000'
Logic Flow:
IF An error message is received with a reference number
AND The reference number equals '6105ETESTTRAIN00000000000'
THEN:
• The message is identified as a train test message and test train indicator is set
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when error message is received with a reference number.
Trigger Criteria:
Context: An error message is received with a reference number
Applied to: Identify as Test Cargo Message 6105ECPRSTESTCARGO or 6105ETESTCARGO
Action: The reference number starts with '6105ECPRSTESTCARGO' or starts with '6105ETESTCARGO'
Logic Flow:
IF An error message is received with a reference number
AND The reference number starts with '6105ECPRSTESTCARGO' or starts with '6105ETESTCARGO'
THEN:
• The message is identified as a cargo test message and test cargo indicator is set
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when test message has been identified (train or cargo).
Trigger Criteria:
Context: A test message has been identified (train or cargo)
Applied to: Retrieve T2 Test Table Entry
Action: The system needs to update test acknowledgment timestamps
Logic Flow:
IF A test message has been identified (train or cargo)
AND The system needs to update test acknowledgment timestamps
THEN:
• The T2 test table entry is retrieved using table lookup function
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when request to retrieve t2 test table entry has been made.
Trigger Criteria:
Context: A request to retrieve T2 test table entry has been made
Applied to: Table Entry Found?
Action: The table lookup function returns a status indicating entry not found
Logic Flow:
IF A request to retrieve T2 test table entry has been made
AND The table lookup function returns a status indicating entry not found
THEN:
• An error is reported indicating test table entry is missing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train test message is being processed and t2 table entry exists.
Trigger Criteria:
Context: A train test message is being processed and T2 table entry exists
Applied to: Update Train Test ACK Date/Time T2-358-ACK
Action: The message type is identified as train test
Logic Flow:
IF A train test message is being processed and T2 table entry exists
AND The message type is identified as train test
THEN:
• The current machine date and time are stored in T2-358-ACK field with century, date, and time components
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo test message is being processed and t2 table entry exists.
Trigger Criteria:
Context: A cargo test message is being processed and T2 table entry exists
Applied to: Update Cargo Test ACK Date/Time T2-309-ACK
Action: The message type is identified as cargo test
Logic Flow:
IF A cargo test message is being processed and T2 table entry exists
AND The message type is identified as cargo test
THEN:
• The current machine date and time are stored in T2-309-ACK field with century, date, and time components
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when test acknowledgment timestamps have been updated in memory.
Trigger Criteria:
Context: Test acknowledgment timestamps have been updated in memory
Applied to: Save Updated Test Table
Action: The timestamp updates are complete
Logic Flow:
IF Test acknowledgment timestamps have been updated in memory
AND The timestamp updates are complete
THEN:
• The modified T2 table segment is saved using replace function
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when message has been identified as a test message (train or cargo).
Trigger Criteria:
Context: A message has been identified as a test message (train or cargo)
Applied to: Skip Normal Error Processing
Action: Test message processing is complete
Logic Flow:
IF A message has been identified as a test message (train or cargo)
AND Test message processing is complete
THEN:
• Normal error processing is skipped and control proceeds to transaction logging
Business Justification: Establishes the required business protocol to be followed when aei message process is starting. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An AEI message process is starting
Applied to: Clear Message Fields
Action: The system begins AEI message preparation
Logic Flow:
IF An AEI message process is starting
AND The system begins AEI message preparation
THEN:
• All message fields including copy usercode, keywords, text, item sequence numbers, and return status flag are cleared to spaces or initialized
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train report exists with port of release information.
Trigger Criteria:
Context: A train report exists with port of release information
Applied to: Get Port Code from Train Report
Action: The system needs to determine email recipients for AEI notification
Logic Flow:
IF A train report exists with port of release information
AND The system needs to determine email recipients for AEI notification
THEN:
• The port code is extracted from the train report's port of release field and used as the lookup key
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when port code has been extracted from the train report. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A port code has been extracted from the train report
Applied to: Call Database to Get Email Users for Port
Action: The system calls the database lookup service with the port code
Logic Flow:
IF A port code has been extracted from the train report
AND The system calls the database lookup service with the port code
THEN:
• The database returns email user information for that port code and sets the return code to indicate success or failure
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when database lookup for port email users returned successfully.
Trigger Criteria:
Context: The database lookup for port email users returned successfully
Applied to: Load Retrieved Email Users as Recipients
Action: The return code indicates success
Logic Flow:
IF The database lookup for port email users returned successfully
AND The return code indicates success
THEN:
• The default Merlin ID is set as the sender and up to 10 retrieved email user IDs are loaded as recipients
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when database lookup for port email users failed.
Trigger Criteria:
Context: The database lookup for port email users failed
Applied to: Set Default Merlin ID as Both Sender and Recipient
Action: The return code indicates failure
Logic Flow:
IF The database lookup for port email users failed
AND The return code indicates failure
THEN:
• The default Merlin ID is set as both the sender and the first recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when email recipients have been determined.
Trigger Criteria:
Context: Email recipients have been determined
Applied to: Prepare AEI Message Content
Action: The system prepares the AEI message content
Logic Flow:
IF Email recipients have been determined
AND The system prepares the AEI message content
THEN:
• Message width is set to 080 characters, sequence numbers are cleared, text content is cleared, and return status flag is initialized
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train report has a canadian customs train id and current status.
Trigger Criteria:
Context: A train report has a Canadian customs train ID and current status
Applied to: Set Message Subject with Train ID and Status
Action: The system formats the AEI message subject
Logic Flow:
IF A train report has a Canadian customs train ID and current status
AND The system formats the AEI message subject
THEN:
• The subject line is formatted as 'TRAIN: [train_id] STATUS: [current_status]'
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when aei message content and recipients are prepared. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: AEI message content and recipients are prepared
Applied to: Call Email Service to Send Message
Action: The system calls the email service to send the message
Logic Flow:
IF AEI message content and recipients are prepared
AND The system calls the email service to send the message
THEN:
• The email service processes the message and returns a status flag indicating success or failure
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when email service successfully sent the aei message.
Trigger Criteria:
Context: The email service successfully sent the AEI message
Applied to: AEI Message Sent Successfully
Action: The return status flag indicates successful transmission
Logic Flow:
IF The email service successfully sent the AEI message
AND The return status flag indicates successful transmission
THEN:
• The system continues to message queue purging without further action
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when primary aei message send failed.
Trigger Criteria:
Context: The primary AEI message send failed
Applied to: Send to Default Recipients OM01247 and AEI9999
Action: The return status flag indicates transmission failure
Logic Flow:
IF The primary AEI message send failed
AND The return status flag indicates transmission failure
THEN:
• The system clears recipient fields and sets OM01247 as first recipient and AEI9999 as second recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when default recipients om01247 and aei9999 have been set. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Default recipients OM01247 and AEI9999 have been set
Applied to: Call Email Service Again
Action: The system retries the email service call
Logic Flow:
IF Default recipients OM01247 and AEI9999 have been set
AND The system retries the email service call
THEN:
• The email service processes the message to default recipients and returns a status flag
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when retry to default recipients was attempted.
Trigger Criteria:
Context: The retry to default recipients was attempted
Applied to: Second Send Successful
Action: The return status flag indicates successful transmission to defaults
Logic Flow:
IF The retry to default recipients was attempted
AND The return status flag indicates successful transmission to defaults
THEN:
• The system continues to message queue purging
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when both the primary message send and retry to default recipients failed.
Trigger Criteria:
Context: Both the primary message send and retry to default recipients failed
Applied to: Log Error - Send to OM01247 Failed
Action: The return status flag indicates failure for the second attempt
Logic Flow:
IF Both the primary message send and retry to default recipients failed
AND The return status flag indicates failure for the second attempt
THEN:
• The system logs an error message 'SEND TO FILE OF OM01247 FAILED' and calls the error handler
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when aei message processing has completed either successfully or with errors.
Trigger Criteria:
Context: AEI message processing has completed either successfully or with errors
Applied to: Purge Message Queue
Action: The system needs to clean up resources
Logic Flow:
IF AEI message processing has completed either successfully or with errors
AND The system needs to clean up resources
THEN:
• The message queue is purged and communication status is initialized
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when database error occurred during aei message processing.
Trigger Criteria:
Context: A database error occurred during AEI message processing
Applied to: Send DB2 Error Notification to Support
Action: The return code indicates a DB2 error condition
Logic Flow:
IF A database error occurred during AEI message processing
AND The return code indicates a DB2 error condition
THEN:
• An error notification containing the SQL code is sent to the support team and message queue is purged
R-GCX122A-cbl-00178 (+13)File: GCX122A.cblBusiness Rule: Process Message Routing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when message processing request is initiated.
Trigger Criteria:
Context: A message processing request is initiated
Applied to: MST Processing Required?
Action: The system checks the MST processing flag
Logic Flow:
IF A message processing request is initiated
AND The system checks the MST processing flag
THEN:
• MST processing continues if the flag indicates processing is required, otherwise MST processing is bypassed
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when reference number requires message routing.
Trigger Criteria:
Context: A reference number requires message routing
Applied to: LTERM Available for Reference?
Action: The system checks if LTERM process information is available and not empty
Logic Flow:
IF A reference number requires message routing
AND The system checks if LTERM process information is available and not empty
THEN:
• Processing continues with LTERM if available, otherwise an error message is generated indicating no LTERM found
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when valid lterm is available for processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A valid LTERM is available for processing
Applied to: Set MST Call Letters from LTERM
Action: The system needs to set up MST communication parameters
Logic Flow:
IF A valid LTERM is available for processing
AND The system needs to set up MST communication parameters
THEN:
• The MST call letters are assigned from the LTERM MST configuration
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid lterm process terminal is identified.
Trigger Criteria:
Context: A valid LTERM process terminal is identified
Applied to: Get Supervisor Merlin ID from Terminal
Action: The system looks up terminal configuration in the LT table
Logic Flow:
IF A valid LTERM process terminal is identified
AND The system looks up terminal configuration in the LT table
THEN:
• The supervisor Merlin ID is retrieved from the terminal configuration if the table entry exists, otherwise terminal segment is cleared
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when reference number requires processing but no lterm is available.
Trigger Criteria:
Context: A reference number requires processing but no LTERM is available
Applied to: No LTERM Found
Action: The system attempts to route messages
Logic Flow:
IF A reference number requires processing but no LTERM is available
AND The system attempts to route messages
THEN:
• An error message 'NO LTERM FOR THIS REFERENCE NUMBER' is added to the message text and MST entry
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when mst processing cannot proceed due to missing lterm or other conditions.
Trigger Criteria:
Context: MST processing cannot proceed due to missing LTERM or other conditions
Applied to: Don't Process MST
Action: The system encounters a blocking condition for MST processing
Logic Flow:
IF MST processing cannot proceed due to missing LTERM or other conditions
AND The system encounters a blocking condition for MST processing
THEN:
• The MST processing flag is set to indicate MST processing should not continue
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when merlin user ids are configured for message routing.
Trigger Criteria:
Context: Merlin user IDs are configured for message routing
Applied to: Check All Merlin User IDs
Action: The system validates each Merlin ID against the EMTZ user validation system
Logic Flow:
IF Merlin user IDs are configured for message routing
AND The system validates each Merlin ID against the EMTZ user validation system
THEN:
• Valid Merlin IDs are confirmed for use, invalid IDs trigger error handling
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when dc&p merlin id is configured in the system.
Trigger Criteria:
Context: A DC&P Merlin ID is configured in the system
Applied to: DC&P Merlin ID Valid?
Action: The system validates the DC&P Merlin ID against the user validation system
Logic Flow:
IF A DC&P Merlin ID is configured in the system
AND The system validates the DC&P Merlin ID against the user validation system
THEN:
• Processing continues if the ID is valid, otherwise an invalid ID error is generated
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when dc&p merlin id fails validation.
Trigger Criteria:
Context: The DC&P Merlin ID fails validation
Applied to: DC&P Merlin ID Invalid
Action: The system processes the invalid Merlin ID
Logic Flow:
IF The DC&P Merlin ID fails validation
AND The system processes the invalid Merlin ID
THEN:
• An error message 'DC&P MERLIN USERID INVALID' is added with the invalid ID number
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when merlin id validation is complete.
Trigger Criteria:
Context: Merlin ID validation is complete
Applied to: Determine Message Recipients
Action: The system needs to determine message routing recipients
Logic Flow:
IF Merlin ID validation is complete
AND The system needs to determine message routing recipients
THEN:
• Valid supervisor Merlin IDs are assigned as recipients, invalid IDs result in empty recipient assignment
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when error message needs to be routed.
Trigger Criteria:
Context: An error message needs to be routed
Applied to: Error Type?
Action: The system evaluates the error context (train vs cargo)
Logic Flow:
IF An error message needs to be routed
AND The system evaluates the error context (train vs cargo)
THEN:
• The message is routed to train-specific recipients if it's a train error, otherwise to cargo-specific recipients
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train-related error message needs distribution.
Trigger Criteria:
Context: A train-related error message needs distribution
Applied to: Route to Train Message Recipients
Action: The system routes the message to train recipients
Logic Flow:
IF A train-related error message needs distribution
AND The system routes the message to train recipients
THEN:
• The message is sent to the supervisor Merlin ID and additionally routed to the CAERROR system with OM01247 as recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo-related error message needs distribution.
Trigger Criteria:
Context: A cargo-related error message needs distribution
Applied to: Route to Cargo Message Recipients
Action: The system routes the message to cargo recipients
Logic Flow:
IF A cargo-related error message needs distribution
AND The system routes the message to cargo recipients
THEN:
• The message is sent to the supervisor Merlin ID, with fallback to OM01247 if the primary send fails
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when messages are prepared for mst transmission with valid call letters. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Messages are prepared for MST transmission with valid call letters
Applied to: Send Messages via MST System
Action: The system sends messages via MST using SMSTONLY service
Logic Flow:
IF Messages are prepared for MST transmission with valid call letters
AND The system sends messages via MST using SMSTONLY service
THEN:
• Each message entry is transmitted sequentially until all entries are processed, followed by a WRAP command to complete the transmission
R-GCX122A-cbl-00192 (+6)File: GCX122A.cblBusiness Rule: Get Supervisor Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when processing terminal identifier exists in ws-lterm-process. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A processing terminal identifier exists in WS-LTERM-PROCESS
Applied to: Retrieve Terminal Configuration from LT Table
Action: The system queries the LT table with the terminal identifier
Logic Flow:
IF A processing terminal identifier exists in WS-LTERM-PROCESS
AND The system queries the LT table with the terminal identifier
THEN:
• The terminal configuration segment is retrieved and stored for further processing
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when query has been made to retrieve terminal configuration from the lt table.
Trigger Criteria:
Context: A query has been made to retrieve terminal configuration from the LT table
Applied to: Terminal Configuration Found?
Action: The table lookup returns a non-zero status indicating no configuration found
Logic Flow:
IF A query has been made to retrieve terminal configuration from the LT table
AND The table lookup returns a non-zero status indicating no configuration found
THEN:
• The terminal configuration segment is cleared to spaces
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when terminal configuration has been successfully retrieved from the lt table. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Terminal configuration has been successfully retrieved from the LT table
Applied to: Alternate Terminal Configured?
Action: The alternate terminal field in the configuration is not empty
Logic Flow:
IF Terminal configuration has been successfully retrieved from the LT table
AND The alternate terminal field in the configuration is not empty
THEN:
• The processing terminal is updated to the alternate terminal value and MST call letters are updated accordingly
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when supervisor merlin id has been extracted from terminal configuration.
Trigger Criteria:
Context: A supervisor Merlin ID has been extracted from terminal configuration
Applied to: Validate Supervisor Merlin ID in System
Action: The system queries the EMTZ segment to validate the supervisor Merlin ID
Logic Flow:
IF A supervisor Merlin ID has been extracted from terminal configuration
AND The system queries the EMTZ segment to validate the supervisor Merlin ID
THEN:
• The validation result determines if the ID is valid or invalid
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when supervisor merlin id validation has completed successfully with no error status.
Trigger Criteria:
Context: The supervisor Merlin ID validation has completed successfully with no error status
Applied to: Set Valid Supervisor Merlin ID for Message Routing
Action: The system processes the validation result
Logic Flow:
IF The supervisor Merlin ID validation has completed successfully with no error status
AND The system processes the validation result
THEN:
• The supervisor Merlin ID is assigned to the user Merlin variable for message routing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when supervisor merlin id validation has failed with a non-space status code.
Trigger Criteria:
Context: The supervisor Merlin ID validation has failed with a non-space status code
Applied to: Generate Invalid Supervisor ID Error Message
Action: The system processes the validation failure
Logic Flow:
IF The supervisor Merlin ID validation has failed with a non-space status code
AND The system processes the validation failure
THEN:
• An error message 'SUPERVISOR MERLIN USERID INVALID' is added to both text and MST message arrays with the invalid ID included
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when supervisor merlin id validation has failed.
Trigger Criteria:
Context: The supervisor Merlin ID validation has failed
Applied to: Clear Supervisor Merlin ID
Action: The system processes the validation failure
Logic Flow:
IF The supervisor Merlin ID validation has failed
AND The system processes the validation failure
THEN:
• The user Merlin variable is set to spaces to clear any invalid value
R-GCX122A-cbl-00199 (+7)File: GCX122A.cblBusiness Rule: Validate Merlin User IDs
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to validate dc-p merlin user ids.
Trigger Criteria:
Context: The system needs to validate DC-P Merlin user IDs
Applied to: Get DC-P Merlin ID 1 from Admin Table
Action: The system retrieves DC-P Merlin ID 1 from the admin table with table ID 'AD' and sequence ID 'ADMINID'
Logic Flow:
IF The system needs to validate DC-P Merlin user IDs
AND The system retrieves DC-P Merlin ID 1 from the admin table with table ID 'AD' and sequence ID 'ADMINID'
THEN:
• The DC-P Merlin ID 1 is obtained from the admin table segment
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id 1 has been retrieved from the admin table.
Trigger Criteria:
Context:DC-P Merlin ID 1 has been retrieved from the admin table
Applied to: Is DC-P Merlin ID 1 Valid?
Action: The system validates the DC-P Merlin ID 1 and the status code is blank (valid user found)
Logic Flow:
IFDC-P Merlin ID 1 has been retrieved from the admin table
AND The system validates the DC-P Merlin ID 1 and the status code is blank (valid user found)
THEN:
• The DC-P Merlin ID 1 is set as valid and the DC-P ID found flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when dc-p merlin id 1 has been retrieved from the admin table.
Trigger Criteria:
Context:DC-P Merlin ID 1 has been retrieved from the admin table
Applied to: Set Default 'OM01247' as DC-P Merlin ID 1
Action: The system validates the DC-P Merlin ID 1 and the status code is not blank (invalid user)
Logic Flow:
IFDC-P Merlin ID 1 has been retrieved from the admin table
AND The system validates the DC-P Merlin ID 1 and the status code is not blank (invalid user)
THEN:
• The system sets 'OM01247' as the default DC-P Merlin ID 1 and marks the DC-P ID 1 as not found
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when ifs merlin id 2 has been retrieved from the admin table.
Trigger Criteria:
Context: IFS Merlin ID 2 has been retrieved from the admin table
Applied to: Is IFS Merlin ID 2 Valid?
Action: The system validates the IFS Merlin ID 2
Logic Flow:
IF IFS Merlin ID 2 has been retrieved from the admin table
AND The system validates the IFS Merlin ID 2
THEN:
• If the status code is blank, the IFS Merlin ID 2 is set as valid, otherwiseDC-P Merlin ID 1 is used as the IFS Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when hhs merlin id 3 has been retrieved from the admin table.
Trigger Criteria:
Context: HHS Merlin ID 3 has been retrieved from the admin table
Applied to: Is HHS Merlin ID 3 Valid?
Action: The system validates the HHS Merlin ID 3
Logic Flow:
IF HHS Merlin ID 3 has been retrieved from the admin table
AND The system validates the HHS Merlin ID 3
THEN:
• If the status code is blank, the HHS Merlin ID 3 is set as valid, otherwiseDC-P Merlin ID 1 is used as the HHS Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when ims merlin id 4 has been retrieved from the admin table.
Trigger Criteria:
Context: IMS Merlin ID 4 has been retrieved from the admin table
Applied to: Is IMS Merlin ID 4 Valid?
Action: The system validates the IMS Merlin ID 4
Logic Flow:
IF IMS Merlin ID 4 has been retrieved from the admin table
AND The system validates the IMS Merlin ID 4
THEN:
• If the status code is blank, the IMS Merlin ID 4 is set as valid, otherwiseDC-P Merlin ID 1 is used as the IMS Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when supervisor merlin id has been retrieved from the terminal table.
Trigger Criteria:
Context: A supervisor Merlin ID has been retrieved from the terminal table
Applied to: Is Supervisor Merlin ID Valid?
Action: The system validates the supervisor Merlin ID
Logic Flow:
IF A supervisor Merlin ID has been retrieved from the terminal table
AND The system validates the supervisor Merlin ID
THEN:
• If the status code is blank, the supervisor Merlin ID is set as valid, otherwise an invalid supervisor ID error message is added and the supervisor Merlin ID is cleared
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when dc-p merlin id validation has been completed.
Trigger Criteria:
Context: The DC-P Merlin ID validation has been completed
Applied to: Add DC-P Invalid ID Error Message
Action: The DC-P ID found flag is set to false (not found)
Logic Flow:
IF The DC-P Merlin ID validation has been completed
AND The DC-P ID found flag is set to false (not found)
THEN:
• An error message 'DC&P MERLIN USERID INVALID' is added to the message text and MST entry
R-GCX122A-cbl-00207 (+7)File: GCX122A.cblBusiness Rule: Send Cargo Messages to Merlin
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo error message needs to be sent to merlin users.
Trigger Criteria:
Context: A cargo error message needs to be sent to Merlin users
Applied to: Clear Message Recipients
Action: The system prepares to route the message
Logic Flow:
IF A cargo error message needs to be sent to Merlin users
AND The system prepares to route the message
THEN:
• All recipient fields are cleared to spaces to ensure no residual data affects message routing
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo error message is ready to be sent and recipient fields are cleared.
Trigger Criteria:
Context: A cargo error message is ready to be sent and recipient fields are cleared
Applied to: Set Primary Merlin User as Recipient
Action: The system sets up the primary message recipient
Logic Flow:
IF A cargo error message is ready to be sent and recipient fields are cleared
AND The system sets up the primary message recipient
THEN:
• The supervisor Merlin user ID is assigned as the first recipient in the user codes array
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo error message is prepared with primary merlin user as recipient.
Trigger Criteria:
Context: A cargo error message is prepared with primary Merlin user as recipient
Applied to: Send Message to Primary User
Action: The system attempts to send the message via EMCSEND2 service
Logic Flow:
IF A cargo error message is prepared with primary Merlin user as recipient
AND The system attempts to send the message via EMCSEND2 service
THEN:
• The message is transmitted to the Merlin messaging system with all required message details including subject, keywords, and text content
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo error message has been sent to the primary merlin user.
Trigger Criteria:
Context: A cargo error message has been sent to the primary Merlin user
Applied to: Message Delivery Successful?
Action: The system checks the message delivery status
Logic Flow:
IF A cargo error message has been sent to the primary Merlin user
AND The system checks the message delivery status
THEN:
• If the return status flag equals 0, the message delivery is considered successful, otherwise it is considered failed
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when primary cargo error message delivery has failed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The primary cargo error message delivery has failed
Applied to: Clear Recipients for Fallback
Action: The system prepares for fallback message routing
Logic Flow:
IF The primary cargo error message delivery has failed
AND The system prepares for fallback message routing
THEN:
• All recipient fields including copy usercode and to usercode are cleared to spaces
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when primary cargo error message delivery has failed and recipient fields are cleared.
Trigger Criteria:
Context: Primary cargo error message delivery has failed and recipient fields are cleared
Applied to: Set Default User OM01247 as Recipient
Action: The system sets up fallback message routing
Logic Flow:
IF Primary cargo error message delivery has failed and recipient fields are cleared
AND The system sets up fallback message routing
THEN:
• The default user ID 'OM01247' is assigned as the first recipient in the user codes array
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when primary cargo message delivery failed and default user om01247 is set as recipient.
Trigger Criteria:
Context: Primary cargo message delivery failed and default user OM01247 is set as recipient
Applied to: Send Message to Default User
Action: The system attempts fallback message delivery via EMCSEND2 service
Logic Flow:
IF Primary cargo message delivery failed and default user OM01247 is set as recipient
AND The system attempts fallback message delivery via EMCSEND2 service
THEN:
• The message is transmitted to the default user with the same message content including subject, keywords, and text
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo error message has been sent either successfully to primary user or to default user as fallback.
Trigger Criteria:
Context: Cargo error message has been sent either successfully to primary user or to default user as fallback
Applied to: Purge Message Queue
Action: The system completes message processing
Logic Flow:
IF Cargo error message has been sent either successfully to primary user or to default user as fallback
AND The system completes message processing
THEN:
• The message queue is purged using CIMS service with PURG function to clean up resources
R-GCX122A-cbl-00215 (+10)File: GCX122A.cblBusiness Rule: Send Train Messages to Merlin
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train error message needs to be sent to merlin users.
Trigger Criteria:
Context: A train error message needs to be sent to Merlin users
Applied to: Clear Message Recipients
Action: The system prepares to send the message
Logic Flow:
IF A train error message needs to be sent to Merlin users
AND The system prepares to send the message
THEN:
• All message recipient fields are cleared to spaces
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train error message is being prepared for sending.
Trigger Criteria:
Context: A train error message is being prepared for sending
Applied to: Set Primary Recipient to Supervisor Merlin ID
Action: The primary recipient needs to be determined
Logic Flow:
IF A train error message is being prepared for sending
AND The primary recipient needs to be determined
THEN:
• The supervisor Merlin ID is set as the first recipient in the message
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train error message is prepared with primary recipient set.
Trigger Criteria:
Context: A train error message is prepared with primary recipient set
Applied to: Send Message to Primary Recipient via EMCSEND2
Action: The system attempts to send the message
Logic Flow:
IF A train error message is prepared with primary recipient set
AND The system attempts to send the message
THEN:
• The message is sent via EMCSEND2 service to the primary recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train error message was sent to the primary recipient.
Trigger Criteria:
Context: A train error message was sent to the primary recipient
Applied to: Message Send Successful?
Action: The message send operation completes
Logic Flow:
IF A train error message was sent to the primary recipient
AND The message send operation completes
THEN:
• If the return status flag is not 0, the send failed and fallback processing is required
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when primary train error message send has failed.
Trigger Criteria:
Context: The primary train error message send has failed
Applied to: Set Default Recipient to OM01247
Action: A fallback recipient needs to be established
Logic Flow:
IF The primary train error message send has failed
AND A fallback recipient needs to be established
THEN:
• The recipient is set to the default support ID 'OM01247'
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when primary message send failed and default recipient is set to om01247.
Trigger Criteria:
Context: The primary message send failed and default recipient is set to OM01247
Applied to: Retry Send to Default Recipient
Action: The system retries the message send
Logic Flow:
IF The primary message send failed and default recipient is set to OM01247
AND The system retries the message send
THEN:
• The message is sent via EMCSEND2 service to the default recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train error message send attempt has been completed.
Trigger Criteria:
Context: A train error message send attempt has been completed
Applied to: Purge Message Queue
Action: The message processing is finished
Logic Flow:
IF A train error message send attempt has been completed
AND The message processing is finished
THEN:
• The message queue is purged using CIMS PURG function
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train error message has been processed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A train error message has been processed
Applied to: Send Copy to CAERROR File
Action: Additional logging is required
Logic Flow:
IF A train error message has been processed
AND Additional logging is required
THEN:
• A copy of the message is sent to the CAERROR destination file
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train error message copy needs to be sent to caerror file. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A train error message copy needs to be sent to CAERROR file
Applied to: Set Recipient to OM01247 for Error File
Action: The error file recipient is being configured
Logic Flow:
IF A train error message copy needs to be sent to CAERROR file
AND The error file recipient is being configured
THEN:
• The recipient is set to 'OM01247' for the error file destination
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train error message copy is prepared for caerror file with recipient set to om01247. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A train error message copy is prepared for CAERROR file with recipient set to OM01247
Applied to: Send to CAERROR Destination
Action: The system sends the audit copy
Logic Flow:
IF A train error message copy is prepared for CAERROR file with recipient set to OM01247
AND The system sends the audit copy
THEN:
• The message is sent via EMCSEND2 service to the CAERROR destination
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when all train error message sends including caerror copy have been completed. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All train error message sends including CAERROR copy have been completed
Applied to: Final Purge Message Queue
Action: The message processing workflow is finishing
Logic Flow:
IF All train error message sends including CAERROR copy have been completed
AND The message processing workflow is finishing
THEN:
• The message queue is purged using CIMS PURG function for final cleanup
Business Justification: Dictates the expected operational logic and validation steps when system needs to send messages through mst.
Trigger Criteria:
Context: The system needs to send messages through MST
Applied to: Set MST Communication Parameters
Action: MST communication is being initialized
Logic Flow:
IF The system needs to send messages through MST
AND MST communication is being initialized
THEN:
• The system sets origin terminal to 'ISTS' and transaction code to 'GCT122'
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when mst communication parameters are configured. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: MST communication parameters are configured
Applied to: Initialize MST Session
Action: Starting MST message transmission
Logic Flow:
IF MST communication parameters are configured
AND Starting MST message transmission
THEN:
• The system calls SMSTONLY with call letters and header record to establish the session
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when mst session is initialized.
Trigger Criteria:
Context: MST session is initialized
Applied to: Send Message Header
Action: Beginning message transmission
Logic Flow:
IF MST session is initialized
AND Beginning message transmission
THEN:
• The system sends the message header record as the first entry in the message text array
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when message transmission is in progress.
Trigger Criteria:
Context: Message transmission is in progress
Applied to: More Message Entries?
Action: Processing message entries
Logic Flow:
IF Message transmission is in progress
AND Processing message entries
THEN:
• The system continues sending entries until it encounters a blank entry indicating no more content
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when there are more message entries to send.
Trigger Criteria:
Context: There are more message entries to send
Applied to: Send Next Message Entry
Action: Processing each message entry
Logic Flow:
IF There are more message entries to send
AND Processing each message entry
THEN:
• The system calls SMSTONLY with the current message entry content
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when all message entries have been sent.
Trigger Criteria:
Context: All message entries have been sent
Applied to: Send Wrap-Up Command
Action: Completing MST transmission
Logic Flow:
IF All message entries have been sent
AND Completing MST transmission
THEN:
• The system sets user function code to 'WRAP' and calls SMSTONLY to close the session
R-GCX122A-cbl-00232 (+9)File: GCX122A.cblBusiness Rule: Process Arrival Notifications
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo record exists with an arrival indicator field.
Trigger Criteria:
Context: A cargo record exists with an arrival indicator field
Applied to: Check Cargo Arrival Indicator
Action: The system processes cargo acknowledgment
Logic Flow:
IF A cargo record exists with an arrival indicator field
AND The system processes cargo acknowledgment
THEN:
• The system checks if the arrival indicator equals 'Y' to determine if arrival processing is required
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo has arrival indicator set to 'y'.
Trigger Criteria:
Context: Cargo has arrival indicator set to 'Y'
Applied to: Initialize Arrival Transaction Input
Action: The system begins arrival processing
Logic Flow:
IF Cargo has arrival indicator set to 'Y'
AND The system begins arrival processing
THEN:
• The system initializes the arrival transaction input structure to prepare for transaction creation
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when arrival transaction input is initialized.
Trigger Criteria:
Context: Arrival transaction input is initialized
Applied to: Set Security Parameters
Action: The system prepares arrival transaction
Logic Flow:
IF Arrival transaction input is initialized
AND The system prepares arrival transaction
THEN:
• The system sets security byte to high-value for transaction authorization
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo record with a valid cargo control number key.
Trigger Criteria:
Context: A cargo record with a valid cargo control number key
Applied to: Extract Cargo Control Number
Action: The system creates arrival transaction
Logic Flow:
IF A cargo record with a valid cargo control number key
AND The system creates arrival transaction
THEN:
• The system assigns the cargo control number key to the arrival transaction identifier field
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when arrival transaction is being created for cargo.
Trigger Criteria:
Context: An arrival transaction is being created for cargo
Applied to: Set Transaction Type to 'CAA'
Action: The system configures transaction parameters
Logic Flow:
IF An arrival transaction is being created for cargo
AND The system configures transaction parameters
THEN:
• The system sets the action code to 'CAA' to identify this as a cargo arrival transaction
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo record contains manifest transaction code information.
Trigger Criteria:
Context: A cargo record contains manifest transaction code information
Applied to: Get Port Code from Manifest
Action: The system creates arrival transaction
Logic Flow:
IF A cargo record contains manifest transaction code information
AND The system creates arrival transaction
THEN:
• The system extracts the port code from the manifest from transaction code field and assigns it to the arrival transaction
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when all arrival transaction parameters are configured.
Trigger Criteria:
Context: All arrival transaction parameters are configured
Applied to: Prepare Arrival Message
Action: The system finalizes arrival processing
Logic Flow:
IF All arrival transaction parameters are configured
AND The system finalizes arrival processing
THEN:
• The system copies the complete arrival input structure to the outbound message format
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when complete arrival message is prepared.
Trigger Criteria:
Context: A complete arrival message is prepared
Applied to: Send Arrival Transaction to GCT1481E
Action: The system processes cargo arrival
Logic Flow:
IF A complete arrival message is prepared
AND The system processes cargo arrival
THEN:
• The system sends the arrival transaction to GCT1481E system for further processing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when arrival transaction has been sent to gct1481e.
Trigger Criteria:
Context: An arrival transaction has been sent to GCT1481E
Applied to: Write Message to Log
Action: The system completes arrival processing
Logic Flow:
IF An arrival transaction has been sent to GCT1481E
AND The system completes arrival processing
THEN:
• The system writes the arrival message details to the system log for audit trail
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when arrival transaction and logging are completed.
Trigger Criteria:
Context: Arrival transaction and logging are completed
Applied to: Purge Message Queue
Action: The system finalizes arrival processing
Logic Flow:
IF Arrival transaction and logging are completed
AND The system finalizes arrival processing
THEN:
• The system purges the message queue to clean up transaction resources
R-GCX122A-cbl-00242 (+5)File: GCX122A.cblBusiness Rule: Update Iron Highway Records
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo record has been processed and potentially updated.
Trigger Criteria:
Context: A cargo record has been processed and potentially updated
Applied to: Status Actually Changed?
Action: The system compares the saved original status with the current cargo status
Logic Flow:
IF A cargo record has been processed and potentially updated
AND The system compares the saved original status with the current cargo status
THEN:
• Iron Highway update processing continues only if the status values are different
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo status change requires iron highway notification.
Trigger Criteria:
Context: A cargo status change requires Iron Highway notification
Applied to: Retrieve Iron Highway Configuration
Action: The system looks up Iron Highway configuration using the cargo origin station number as the key
Logic Flow:
IF A cargo status change requires Iron Highway notification
AND The system looks up Iron Highway configuration using the cargo origin station number as the key
THEN:
• The system retrieves the IH table configuration if it exists
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when system has attempted to retrieve iron highway configuration.
Trigger Criteria:
Context: The system has attempted to retrieve Iron Highway configuration
Applied to: Iron Highway Config Found?
Action: The configuration lookup returns a status indicating success or failure
Logic Flow:
IF The system has attempted to retrieve Iron Highway configuration
AND The configuration lookup returns a status indicating success or failure
THEN:
• Iron Highway processing continues only if configuration is found, otherwise the process terminates
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when iron highway configuration has been successfully retrieved.
Trigger Criteria:
Context: Iron Highway configuration has been successfully retrieved
Applied to: Prepare Iron Highway Transaction Data
Action: The system prepares transaction data for Iron Highway update
Logic Flow:
IF Iron Highway configuration has been successfully retrieved
AND The system prepares transaction data for Iron Highway update
THEN:
• The system sets the record type from configuration, current cargo status, equipment ID, waybill information, and cargo control number
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when iron highway transaction data is being prepared with cargo reference numbers.
Trigger Criteria:
Context: Iron Highway transaction data is being prepared with cargo reference numbers
Applied to: Process Reference Numbers
Action: The system processes up to 10 reference number entries and finds a reference qualifier of 'CN'
Logic Flow:
IF Iron Highway transaction data is being prepared with cargo reference numbers
AND The system processes up to 10 reference number entries and finds a reference qualifier of 'CN'
THEN:
• The system extracts the corresponding reference number value and sets it as the shipment ID
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when all iron highway transaction data has been prepared and validated. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All Iron Highway transaction data has been prepared and validated
Applied to: Call Iron Highway System Update
Action: The system calls the Iron Highway interface program GCCIH
Logic Flow:
IF All Iron Highway transaction data has been prepared and validated
AND The system calls the Iron Highway interface program GCCIH
THEN:
• The cargo status change is transmitted to the Iron Highway system with all relevant cargo details
Business Justification: Governs the functional prerequisites and system routing when transaction logging process is initiated.
Trigger Criteria:
Context: A transaction logging process is initiated
Applied to: Initialize Log Message Structure
Action: The system begins to create a log entry
Logic Flow:
IF A transaction logging process is initiated
AND The system begins to create a log entry
THEN:
• The log message structure is cleared and initialized with spaces
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when log message structure is initialized.
Trigger Criteria:
Context: A log message structure is initialized
Applied to: Set Security and Transaction Details
Action: Security and transaction details need to be recorded
Logic Flow:
IF A log message structure is initialized
AND Security and transaction details need to be recorded
THEN:
• The security byte is set to high-value and sending transaction is set to 'GCT1221E'
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when transaction log entry is being created.
Trigger Criteria:
Context: A transaction log entry is being created
Applied to: Set Current Date and Time
Action: Date and time information needs to be recorded
Logic Flow:
IF A transaction log entry is being created
AND Date and time information needs to be recorded
THEN:
• The current system date from BGN-03-DATE is recorded in the log date field and current system time from BGN-04-TIME is recorded in the log time field
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when transaction log entry is being prepared.
Trigger Criteria:
Context: A transaction log entry is being prepared
Applied to: Set Action Code to 'ZZZ'
Action: An action code needs to be assigned to the log entry
Logic Flow:
IF A transaction log entry is being prepared
AND An action code needs to be assigned to the log entry
THEN:
• The action code is set to 'ZZZ' to indicate standard transaction logging
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when transaction with a reference number is being logged.
Trigger Criteria:
Context: A transaction with a reference number is being logged
Applied to: Add Reference Number to Log
Action: The reference number needs to be recorded in the log
Logic Flow:
IF A transaction with a reference number is being logged
AND The reference number needs to be recorded in the log
THEN:
• The reference number from OTI-03-REF-NUM is recorded in the train or CCN field of the log entry
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when transaction has a current status that needs to be logged. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A transaction has a current status that needs to be logged
Applied to: Add Current Status to Log Message
Action: The transaction status is being recorded in the log
Logic Flow:
IF A transaction has a current status that needs to be logged
AND The transaction status is being recorded in the log
THEN:
• The current status from WS-CURRENT-STATUS is recorded in the log message field
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when transaction with ack status is being logged.
Trigger Criteria:
Context: A transaction with ACK status is being logged
Applied to: Add BGN Reference Number to Log
Action: The transaction status equals 'ACK '
Logic Flow:
IF A transaction with ACK status is being logged
AND The transaction status equals 'ACK '
THEN:
• The BGN reference number from BGN-02-REF-NUM is recorded in the transaction field of the log
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when transaction log entry needs to be classified by type.
Trigger Criteria:
Context: A transaction log entry needs to be classified by type
Applied to: Set Log Type as Cargo/Train/Other
Action: The transaction type is evaluated
Logic Flow:
IF A transaction log entry needs to be classified by type
AND The transaction type is evaluated
THEN:
• If the transaction is cargo type, set log type as cargo; if the transaction is train type, set log type as train; otherwise set log type as other
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when complete log message has been prepared.
Trigger Criteria:
Context: A complete log message has been prepared
Applied to: Send Log Message to GCT1051E
Action: The log message needs to be sent to the audit system
Logic Flow:
IF A complete log message has been prepared
AND The log message needs to be sent to the audit system
THEN:
• The log message is sent to the GCT1051E audit logging system using the CIMS interface
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when log message has been sent to the audit system.
Trigger Criteria:
Context: A log message has been sent to the audit system
Applied to: Write Log Message to System
Action: The message needs to be written to the system log
Logic Flow:
IF A log message has been sent to the audit system
AND The message needs to be written to the system log
THEN:
• The log message is written using WRITMSGL service with the message code, content, length, and module name
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when log message has been successfully written to the system log.
Trigger Criteria:
Context: A log message has been successfully written to the system log
Applied to: Purge Message Queue
Action: The logging process is complete
Logic Flow:
IF A log message has been successfully written to the system log
AND The logging process is complete
THEN:
• The message queue is purged using CIMS PURG function to clean up processed messages
R-GCX122A-cbl-00268 (+6)File: GCX122A.cblBusiness Rule: Process Special Checks
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when special test message needs to be processed.
Trigger Criteria:
Context: A special test message needs to be processed
Applied to: Access Test Configuration Table T2
Action: The system attempts to access the test configuration table T2
Logic Flow:
IF A special test message needs to be processed
AND The system attempts to access the test configuration table T2
THEN:
• The system retrieves the T2 table segment for test processing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when system is attempting to process a test message.
Trigger Criteria:
Context: The system is attempting to process a test message
Applied to: Table T2 Found?
Action: The test configuration table T2 lookup is performed
Logic Flow:
IF The system is attempting to process a test message
AND The test configuration table T2 lookup is performed
THEN:
• If the table is not found, an error message 'T2 CHECK TABLE ENTRY NOT FOUND' is reported and processing stops
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when system is processing a test message.
Trigger Criteria:
Context: The system is processing a test message
Applied to: Report Table Not Found Error
Action: The test configuration table T2 cannot be found or accessed
Logic Flow:
IF The system is processing a test message
AND The test configuration table T2 cannot be found or accessed
THEN:
• The system reports error message 'T2 CHECK TABLE ENTRY NOT FOUND' and terminates processing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when test message is being processed and the t2 configuration table is available.
Trigger Criteria:
Context: A test message is being processed and the T2 configuration table is available
Applied to: Test Message Type?
Action: The system evaluates the message type indicator
Logic Flow:
IF A test message is being processed and the T2 configuration table is available
AND The system evaluates the message type indicator
THEN:
• If the message is train type, process train test acknowledgment; if cargo type, process cargo test acknowledgment
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train test message is being processed and the t2 table is accessible.
Trigger Criteria:
Context: A train test message is being processed and the T2 table is accessible
Applied to: Update Train Test Acknowledgment
Action: The system processes the train test acknowledgment
Logic Flow:
IF A train test message is being processed and the T2 table is accessible
AND The system processes the train test acknowledgment
THEN:
• The system updates the T2-358-ACK field with current machine date (century and date) and current machine time (first 4 digits)
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo test message is being processed and the t2 table is accessible.
Trigger Criteria:
Context: A cargo test message is being processed and the T2 table is accessible
Applied to: Update Cargo Test Acknowledgment
Action: The system processes the cargo test acknowledgment
Logic Flow:
IF A cargo test message is being processed and the T2 table is accessible
AND The system processes the cargo test acknowledgment
THEN:
• The system updates the T2-309-ACK field with current machine date (century and date) and current machine time (first 4 digits)
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when test acknowledgment timestamps have been updated in the t2 table.
Trigger Criteria:
Context: Test acknowledgment timestamps have been updated in the T2 table
Applied to: Save Updated Test Table
Action: The system completes the timestamp update process
Logic Flow:
IF Test acknowledgment timestamps have been updated in the T2 table
AND The system completes the timestamp update process
THEN:
• The system saves the updated T2 table segment back to the database using replace function
R-GCX122A-cbl-00275 (+6)File: GCX122A.cblBusiness Rule: Process Message Header Setup
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when input message contains a reference number in oti-03-ref-num. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An input message contains a reference number in OTI-03-REF-NUM
Applied to: Set Reference Number from Input Message
Action: The system processes the message header setup
Logic Flow:
IF An input message contains a reference number in OTI-03-REF-NUM
AND The system processes the message header setup
THEN:
• The reference number is copied to EMI-REF, MST-REF, MSG-REF-KEY, andWS-REF-NUMBER fields for consistent message tracking
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when new message is being processed.
Trigger Criteria:
Context: A new message is being processed
Applied to: Initialize Message Processing Flags
Action: The system initializes message processing flags
Logic Flow:
IF A new message is being processed
AND The system initializes message processing flags
THEN:
• SW-PROCESS-MST is set to TRUE, SW-PROCESS-MERLIN is set to TRUE, SW-NOT-TRAIN-ERROR is set to TRUE, andSW-NOT-CARGO-ERROR is set to TRUE
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when message is being prepared for processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A message is being prepared for processing
Applied to: Clear Message Content Areas
Action: The system clears message content areas
Logic Flow:
IF A message is being prepared for processing
AND The system clears message content areas
THEN:
• EMI-TO-USERCODE, EMI-COPY-USERCODE, EMI-KEYWORDS, EMI-TEXT, EMI-RETURN-STATUS-FLAG, MST-TABLE, MST-CALL-LETTRS, andWS-LTERM-PROCESS are set to SPACES
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when input message is identified as a train message (oti-02-train is true).
Trigger Criteria:
Context: The input message is identified as a train message (OTI-02-TRAIN is true)
Applied to: Set Train Report Header Text
Action: The system determines the message header text
Logic Flow:
IF The input message is identified as a train message (OTI-02-TRAIN is true)
AND The system determines the message header text
THEN:
• MSG-LIB is set to 'TRAIN REPORT NUMBER :'
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when input message is identified as a cargo message (oti-02-cargo is true) and not a train message.
Trigger Criteria:
Context: The input message is identified as a cargo message (OTI-02-CARGO is true) and not a train message
Applied to: Set Cargo Control Header Text
Action: The system determines the message header text
Logic Flow:
IF The input message is identified as a cargo message (OTI-02-CARGO is true) and not a train message
AND The system determines the message header text
THEN:
• MSG-LIB is set to 'CARGO CONTROL NUMBER :'
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when input message is neither a train message nor a cargo message.
Trigger Criteria:
Context: The input message is neither a train message nor a cargo message
Applied to: Set Generic Reference Header Text
Action: The system determines the message header text
Logic Flow:
IF The input message is neither a train message nor a cargo message
AND The system determines the message header text
THEN:
• MSG-LIB is set to 'REFERENCE NUMBER :'
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when message processing is being initialized. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Message processing is being initialized
Applied to: Initialize Message Indicators
Action: The system sets up message indicators
Logic Flow:
IF Message processing is being initialized
AND The system sets up message indicators
THEN:
• WS-IND-TEXT is set to LINE-MESS-MIN, WS-IND-MST is set to LINE-MESS-MIN-MST, WS-IND-USER is set to ZERO, MST-INDX is set to ZERO, andWS-IND-ERR is set to ZERO
Business Justification: Ensures correct system behavior and process compliance when incoming message contains a reference number in field oti-03-ref-num. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An incoming message contains a reference number in field OTI-03-REF-NUM
Applied to: Extract Reference Number from Message
Action: The system processes the message for reference number extraction
Logic Flow:
IF An incoming message contains a reference number in field OTI-03-REF-NUM
AND The system processes the message for reference number extraction
THEN:
• The reference number is copied to EMI-REF, MST-REF, MSG-REF-KEY, andWS-REF-NUMBER variables
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when system is initializing reference processing.
Trigger Criteria:
Context: The system is initializing reference processing
Applied to: Initialize Processing Flags
Action: Processing flags need to be established
Logic Flow:
IF The system is initializing reference processing
AND Processing flags need to be established
THEN:
• SW-PROCESS-MSTandSW-PROCESS-MERLIN are set to TRUE, andSW-NOT-TRAIN-ERRORandSW-NOT-CARGO-ERROR are set to TRUE
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when system is initializing reference processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is initializing reference processing
Applied to: Initialize Message Indicators
Action: Message indicators need to be set up
Logic Flow:
IF The system is initializing reference processing
AND Message indicators need to be set up
THEN:
• WS-IND-TEXT is set to LINE-MESS-MINandWS-IND-MST is set to LINE-MESS-MIN-MST
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when system is initializing reference processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is initializing reference processing
Applied to: Clear User and Error Counters
Action: Counters need to be reset
Logic Flow:
IF The system is initializing reference processing
AND Counters need to be reset
THEN:
• WS-IND-USER, MST-INDX, andWS-IND-ERR are all set to ZERO
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when system is initializing reference processing. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system is initializing reference processing
Applied to: Clear Message Fields
Action: Message fields need to be cleared
Logic Flow:
IF The system is initializing reference processing
AND Message fields need to be cleared
THEN:
• EMI-TO-USERCODE, EMI-COPY-USERCODE, EMI-KEYWORDS, EMI-TEXT, EMI-RETURN-STATUS-FLAG, MST-TABLE, MST-CALL-LETTRS, andWS-LTERM-PROCESS are all set to SPACES
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when incoming message is identified as a train message (oti-02-train is true).
Trigger Criteria:
Context: The incoming message is identified as a train message (OTI-02-TRAIN is true)
Applied to: Set Train Report Label
Action: The system determines the message label
Logic Flow:
IF The incoming message is identified as a train message (OTI-02-TRAIN is true)
AND The system determines the message label
THEN:
• MSG-LIB is set to 'TRAIN REPORT NUMBER :'
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when incoming message is identified as a cargo message (oti-02-cargo is true) and is not a train message.
Trigger Criteria:
Context: The incoming message is identified as a cargo message (OTI-02-CARGO is true) and is not a train message
Applied to: Set Cargo Control Number Label
Action: The system determines the message label
Logic Flow:
IF The incoming message is identified as a cargo message (OTI-02-CARGO is true) and is not a train message
AND The system determines the message label
THEN:
• MSG-LIB is set to 'CARGO CONTROL NUMBER :'
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when incoming message is neither a train message nor a cargo message.
Trigger Criteria:
Context: The incoming message is neither a train message nor a cargo message
Applied to: Set Generic Reference Label
Action: The system determines the message label
Logic Flow:
IF The incoming message is neither a train message nor a cargo message
AND The system determines the message label
THEN:
• MSG-LIB is set to 'REFERENCE NUMBER :'
R-GCX122A-cbl-00290 (+13)File: GCX122A.cblBusiness Rule: Process Message Text Formatting
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when transaction message is being processed.
Trigger Criteria:
Context: A transaction message is being processed
Applied to: Format Train Report Message
Action: The transaction type is identified as train operation
Logic Flow:
IF A transaction message is being processed
AND The transaction type is identified as train operation
THEN:
• The message library text is set to 'TRAIN REPORT NUMBER :' to indicate train-specific reference numbering
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when transaction message is being processed.
Trigger Criteria:
Context: A transaction message is being processed
Applied to: Format Cargo Control Message
Action: The transaction type is identified as cargo operation
Logic Flow:
IF A transaction message is being processed
AND The transaction type is identified as cargo operation
THEN:
• The message library text is set to 'CARGO CONTROL NUMBER :' to indicate cargo-specific reference numbering
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when transaction message is being processed.
Trigger Criteria:
Context: A transaction message is being processed
Applied to: Format Reference Number Message
Action: The transaction type is neither train nor cargo operation
Logic Flow:
IF A transaction message is being processed
AND The transaction type is neither train nor cargo operation
THEN:
• The message library text is set to 'REFERENCE NUMBER :' as the default reference numbering format
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when error message needs to be formatted and a message number is available.
Trigger Criteria:
Context: An error message needs to be formatted and a message number is available
Applied to: Get Standardized Error Text
Action: The system looks up the error code in the MS table using either GCW122-MSG-NUM or the first 3 characters of the free-form message
Logic Flow:
IF An error message needs to be formatted and a message number is available
AND The system looks up the error code in the MS table using either GCW122-MSG-NUM or the first 3 characters of the free-form message
THEN:
• The system retrieves the corresponding English text from the message table if the lookup is successful
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when error message lookup has been performed in the ms table.
Trigger Criteria:
Context: An error message lookup has been performed in the MS table
Applied to: Use Standard Error Message
Action: The table lookup returns a successful result with error text found
Logic Flow:
IF An error message lookup has been performed in the MS table
AND The table lookup returns a successful result with error text found
THEN:
• The system uses the English text from the message table (GCSTBRT-MS-ENG-TEXT) as the error message content
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when error message lookup has been performed in the ms table.
Trigger Criteria:
Context: An error message lookup has been performed in the MS table
Applied to: Use Free-Form Error Message
Action: The table lookup fails to find standardized error text
Logic Flow:
IF An error message lookup has been performed in the MS table
AND The table lookup fails to find standardized error text
THEN:
• The system uses the original free-form message text (TED-02-FREE-FORM-MSG) and adds an additional error message indicating the lookup failure
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when error message text has been determined (either standard or free-form). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Error message text has been determined (either standard or free-form)
Applied to: Add Error Context Information
Action: The error message is being prepared for distribution
Logic Flow:
IF Error message text has been determined (either standard or free-form)
AND The error message is being prepared for distribution
THEN:
• The system adds the copy of bad data element (TED-07-COPY-BAD-DATA-ELMT) to provide context about what caused the error
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when error message content has been prepared with context information.
Trigger Criteria:
Context: Error message content has been prepared with context information
Applied to: Format Message for EMI Channel
Action: The message needs to be distributed through electronic mail interface
Logic Flow:
IF Error message content has been prepared with context information
AND The message needs to be distributed through electronic mail interface
THEN:
• The system formats the message into EMI-TEXT-LINE structure for email distribution
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when error message content has been prepared and formatted for emi channel.
Trigger Criteria:
Context: Error message content has been prepared and formatted for EMI channel
Applied to: Format Message for MST Channel
Action: The message needs to be distributed through message switch terminal
Logic Flow:
IF Error message content has been prepared and formatted for EMI channel
AND The message needs to be distributed through message switch terminal
THEN:
• The system formats the message into MST-ENTRY structure for terminal distribution
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when error message content has been prepared and formatted for emi and mst channels.
Trigger Criteria:
Context: Error message content has been prepared and formatted for EMI and MST channels
Applied to: Format Message for Log Channel
Action: The message needs to be logged for audit and tracking purposes
Logic Flow:
IF Error message content has been prepared and formatted for EMI and MST channels
AND The message needs to be logged for audit and tracking purposes
THEN:
• The system formats the message into GCX105-MESSAGE structure for logging distribution
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when error message content has been formatted for all distribution channels.
Trigger Criteria:
Context: Error message content has been formatted for all distribution channels
Applied to: Prepare Message Headers
Action: Message headers need to be prepared for transmission
Logic Flow:
IF Error message content has been formatted for all distribution channels
AND Message headers need to be prepared for transmission
THEN:
• The system sets security byte to HIGH-VALUE, sending transaction to 'GCT1221E', ACF2 user ID from common area, and action code to 'ZZZ'
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when message headers are being prepared.
Trigger Criteria:
Context: Message headers are being prepared
Applied to: Set Message Reference Numbers
Action: Reference number information needs to be included in the message
Logic Flow:
IF Message headers are being prepared
AND Reference number information needs to be included in the message
THEN:
• The system assigns the transaction reference number (OTI-03-REF-NUM) to the train or CCN field in the message header
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when message headers are being prepared with reference numbers.
Trigger Criteria:
Context: Message headers are being prepared with reference numbers
Applied to: Add Date/Time Stamps
Action: Timestamp information needs to be added to the message
Logic Flow:
IF Message headers are being prepared with reference numbers
AND Timestamp information needs to be added to the message
THEN:
• The system assigns the current date (BGN-03-DATE) and time (BGN-04-TIME) to the message header timestamp fields
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when message headers are being prepared with timestamps.
Trigger Criteria:
Context: Message headers are being prepared with timestamps
Applied to: Format Subject Line
Action: Transaction type classification is needed for message routing
Logic Flow:
IF Message headers are being prepared with timestamps
AND Transaction type classification is needed for message routing
THEN:
• The system sets GCX105-CA-CARGO flag for cargo transactions, GCX105-NEW-CA-TRAIN flag for train transactions, or continues without specific classification for other transaction types
Business Justification: Ensures correct system behavior and process compliance when message needs to be sent to primary recipients.
Trigger Criteria:
Context: A message needs to be sent to primary recipients
Applied to: Attempt Primary Message Delivery
Action: The system calls the messaging service with primary recipient information
Logic Flow:
IF A message needs to be sent to primary recipients
AND The system calls the messaging service with primary recipient information
THEN:
• The message delivery is attempted and a return status is provided
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when message delivery attempt has been made to primary recipients.
Trigger Criteria:
Context: A message delivery attempt has been made to primary recipients
Applied to: Primary Delivery Successful?
Action: The system checks the return status flag from the messaging service
Logic Flow:
IF A message delivery attempt has been made to primary recipients
AND The system checks the return status flag from the messaging service
THEN:
• If return status flag equals zero or successful indicator, delivery is considered successful, otherwise it is considered failed
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when primary message delivery has been successful.
Trigger Criteria:
Context: Primary message delivery has been successful
Applied to: Message Delivered Successfully
Action: The system confirms successful delivery
Logic Flow:
IF Primary message delivery has been successful
AND The system confirms successful delivery
THEN:
• The system proceeds to purge the message queue and complete processing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when primary message delivery has failed.
Trigger Criteria:
Context: Primary message delivery has failed
Applied to: Clear Message Recipients
Action: The system needs to attempt fallback delivery
Logic Flow:
IF Primary message delivery has failed
AND The system needs to attempt fallback delivery
THEN:
• All existing recipient fields are cleared to spaces
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when primary message delivery has failed and recipients have been cleared.
Trigger Criteria:
Context: Primary message delivery has failed and recipients have been cleared
Applied to: Set Default Recipient 'OM01247'
Action: The system needs to set a fallback recipient
Logic Flow:
IF Primary message delivery has failed and recipients have been cleared
AND The system needs to set a fallback recipient
THEN:
• The recipient is set to 'OM01247' as the default fallback recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when primary delivery has failed and default recipient has been set.
Trigger Criteria:
Context: Primary delivery has failed and default recipient has been set
Applied to: Retry Message Delivery to Default
Action: The system calls the messaging service with default recipient information
Logic Flow:
IF Primary delivery has failed and default recipient has been set
AND The system calls the messaging service with default recipient information
THEN:
• The message delivery is attempted to the default recipient and a return status is provided
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when message delivery attempt has been made to the default recipient.
Trigger Criteria:
Context: A message delivery attempt has been made to the default recipient
Applied to: Default Delivery Successful?
Action: The system checks the return status flag from the messaging service
Logic Flow:
IF A message delivery attempt has been made to the default recipient
AND The system checks the return status flag from the messaging service
THEN:
• If return status flag equals zero or successful indicator, delivery is considered successful, otherwise it is considered failed
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when fallback message delivery to default recipient has been successful.
Trigger Criteria:
Context: Fallback message delivery to default recipient has been successful
Applied to: Message Delivered to Default
Action: The system confirms successful delivery to default recipient
Logic Flow:
IF Fallback message delivery to default recipient has been successful
AND The system confirms successful delivery to default recipient
THEN:
• The system proceeds to purge the message queue and complete processing
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when message delivery processing has completed either successfully or unsuccessfully.
Trigger Criteria:
Context: Message delivery processing has completed either successfully or unsuccessfully
Applied to: Purge Message Queue
Action: The system needs to clean up the message queue
Logic Flow:
IF Message delivery processing has completed either successfully or unsuccessfully
AND The system needs to clean up the message queue
THEN:
• The message queue is purged using the PURG function
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when all message delivery attempts have been completed and queue has been purged.
Trigger Criteria:
Context: All message delivery attempts have been completed and queue has been purged
Applied to: End Message Processing
Action: The system finishes message processing
Logic Flow:
IF All message delivery attempts have been completed and queue has been purged
AND The system finishes message processing
THEN:
• Control is returned to the calling process and message processing ends
R-GCX122A-cbl-00314 (+1)File: GCX122A.cblBusiness Rule: Process Message Wrapping
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when all message entries have been processed and sent to the message switching terminal.
Trigger Criteria:
Context: All message entries have been processed and sent to the message switching terminal
Applied to: Set Function Code to 'WRAP'
Action: The system needs to complete the message transmission process
Logic Flow:
IF All message entries have been processed and sent to the message switching terminal
AND The system needs to complete the message transmission process
THEN:
• The system sets the user function code to 'WRAP' and sends the wrap command to finalize the message transmission
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when user function code is set to 'wrap' and message switching terminal parameters are prepared. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The user function code is set to 'WRAP' and message switching terminal parameters are prepared
Applied to: Send Wrap Command to MST
Action: The system executes the wrap command transmission
Logic Flow:
IF The user function code is set to 'WRAP' and message switching terminal parameters are prepared
AND The system executes the wrap command transmission
THEN:
• The system calls the message switching terminal service with the wrap command, communication control block, alternate PCB, call letters, and message header record
R-GCX122A-cbl-00316 (+8)File: GCX122A.cblBusiness Rule: Update Test Acknowledgment Tables
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when reference number is provided in the message.
Trigger Criteria:
Context: A reference number is provided in the message
Applied to: Check Reference Number Pattern
Action: The reference number equals '6105ETESTTRAIN00000000000' OR starts with '6105ECPRSTESTCARGO' OR starts with '6105ETESTCARGO'
Logic Flow:
IF A reference number is provided in the message
AND The reference number equals '6105ETESTTRAIN00000000000' OR starts with '6105ECPRSTESTCARGO' OR starts with '6105ETESTCARGO'
THEN:
• The message is classified as test data and special test processing is triggered
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when test message has been identified.
Trigger Criteria:
Context: A test message has been identified
Applied to: Retrieve T2 Test Table Entry
Action: The system attempts to retrieve the T2 table entry with empty sequence ID
Logic Flow:
IF A test message has been identified
AND The system attempts to retrieve the T2 table entry with empty sequence ID
THEN:
• The T2 test table segment is loaded for timestamp updates
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when system has attempted to retrieve the t2 test table entry.
Trigger Criteria:
Context: The system has attempted to retrieve the T2 test table entry
Applied to: Table Entry Found?
Action: The table entry retrieval returns a non-zero status code
Logic Flow:
IF The system has attempted to retrieve the T2 test table entry
AND The table entry retrieval returns a non-zero status code
THEN:
• An error message 'T2 CHECK TABLE ENTRY NOT FOUND' is displayed and processing terminates
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when valid t2 test table entry has been retrieved.
Trigger Criteria:
Context: A valid T2 test table entry has been retrieved
Applied to: Message Type?
Action: The message type indicator shows train (OTI-02-TRAIN is true)
Logic Flow:
IF A valid T2 test table entry has been retrieved
AND The message type indicator shows train (OTI-02-TRAIN is true)
THEN:
• The system prepares to update the train test acknowledgment field (T2-358-ACK)
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when message is identified as a train test message and t2 table entry is available.
Trigger Criteria:
Context: The message is identified as a train test message and T2 table entry is available
Applied to: Update Train Test Acknowledgment Field
Action: The system processes the train test acknowledgment
Logic Flow:
IF The message is identified as a train test message and T2 table entry is available
AND The system processes the train test acknowledgment
THEN:
• The T2-358-ACK field is updated with current date (century + date) and time
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when message is identified as a cargo test message and t2 table entry is available.
Trigger Criteria:
Context: The message is identified as a cargo test message and T2 table entry is available
Applied to: Update Cargo Test Acknowledgment Field
Action: The system processes the cargo test acknowledgment
Logic Flow:
IF The message is identified as a cargo test message and T2 table entry is available
AND The system processes the cargo test acknowledgment
THEN:
• The T2-309-ACK field is updated with current date (century + date) and time
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when appropriate test acknowledgment field has been identified (train or cargo).
Trigger Criteria:
Context: The appropriate test acknowledgment field has been identified (train or cargo)
Applied to: Set Current Date/Century to ACK Field
Action: The system updates the timestamp
Logic Flow:
IF The appropriate test acknowledgment field has been identified (train or cargo)
AND The system updates the timestamp
THEN:
• The current machine century is placed in positions 1-2and current machine date is placed in positions 3-8 of the acknowledgment field
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when date portion of the test acknowledgment field has been updated.
Trigger Criteria:
Context: The date portion of the test acknowledgment field has been updated
Applied to: Set Current Time to ACK Field
Action: The system completes the timestamp update
Logic Flow:
IF The date portion of the test acknowledgment field has been updated
AND The system completes the timestamp update
THEN:
• The first 4 digits of current machine time are placed in positions 9-12 of the acknowledgment field
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when t2 test table entry has been updated with current timestamp information.
Trigger Criteria:
Context: The T2 test table entry has been updated with current timestamp information
Applied to: Save Updated Table Entry
Action: The system saves the changes
Logic Flow:
IF The T2 test table entry has been updated with current timestamp information
AND The system saves the changes
THEN:
• The updated T2 table segment is written back to the database using replace function
R-GCX122A-cbl-00325 (+9)File: GCX122A.cblBusiness Rule: Process Iron Highway Status Updates
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo record has been processed and updated.
Trigger Criteria:
Context: A cargo record has been processed and updated
Applied to: Has Cargo Status Changed?
Action: The system checks if the saved status differs from the current status
Logic Flow:
IF A cargo record has been processed and updated
AND The system checks if the saved status differs from the current status
THEN:
• Iron Highway processing is triggered only when status has changed
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo status change has been detected.
Trigger Criteria:
Context: A cargo status change has been detected
Applied to: Retrieve Iron Highway Configuration
Action: The system retrieves Iron Highway configuration using the cargo origin station number as the key
Logic Flow:
IF A cargo status change has been detected
AND The system retrieves Iron Highway configuration using the cargo origin station number as the key
THEN:
• The configuration data is loaded from the IH table for further processing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when iron highway configuration lookup has been performed.
Trigger Criteria:
Context: Iron Highway configuration lookup has been performed
Applied to: Configuration Found?
Action: The system checks if configuration data was successfully retrieved
Logic Flow:
IF Iron Highway configuration lookup has been performed
AND The system checks if configuration data was successfully retrieved
THEN:
• Processing continues only if valid configuration is found, otherwise the process terminates
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid iron highway configuration has been found.
Trigger Criteria:
Context: Valid Iron Highway configuration has been found
Applied to: Set Up Iron Highway Transaction Record
Action: The system sets up the transaction record
Logic Flow:
IF Valid Iron Highway configuration has been found
AND The system sets up the transaction record
THEN:
• The record type is set to cargo and the current cargo status is mapped to the transaction
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when iron highway transaction record has been initialized.
Trigger Criteria:
Context: Iron Highway transaction record has been initialized
Applied to: Map Cargo Control Number Data
Action: The system maps cargo data to the transaction record
Logic Flow:
IF Iron Highway transaction record has been initialized
AND The system maps cargo data to the transaction record
THEN:
• The cargo control number key and current status are transferred to the Iron Highway record
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo control number data has been mapped.
Trigger Criteria:
Context: Cargo control number data has been mapped
Applied to: Map Equipment ID and Waybill
Action: The system maps equipment and waybill data
Logic Flow:
IF Cargo control number data has been mapped
AND The system maps equipment and waybill data
THEN:
• The equipment ID and first 15 characters of waybill key are transferred to the Iron Highway record
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when equipment and waybill data has been mapped.
Trigger Criteria:
Context: Equipment and waybill data has been mapped
Applied to: Search for Shipment ID Reference
Action: The system searches through up to 10 reference number entries
Logic Flow:
IF Equipment and waybill data has been mapped
AND The system searches through up to 10 reference number entries
THEN:
• Each reference number qualifier is checked to identify CN type references
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when reference number search has been performed.
Trigger Criteria:
Context: Reference number search has been performed
Applied to: Found CN Reference Number?
Action: The system finds a reference number with qualifier 'CN'
Logic Flow:
IF Reference number search has been performed
AND The system finds a reference number with qualifier 'CN'
THEN:
• The corresponding reference number value is identified as the shipment ID
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cn qualified reference number has been found.
Trigger Criteria:
Context: A CN qualified reference number has been found
Applied to: Set Shipment ID from Reference
Action: The system assigns the shipment ID
Logic Flow:
IF A CN qualified reference number has been found
AND The system assigns the shipment ID
THEN:
• The reference number value associated with CN qualifier is moved to the shipment ID field
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when iron highway transaction record has been fully populated. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Iron Highway transaction record has been fully populated
Applied to: Call Iron Highway Interface
Action: The system calls the Iron Highway interface program
Logic Flow:
IF Iron Highway transaction record has been fully populated
AND The system calls the Iron Highway interface program
THEN:
• The transaction data is submitted to the Iron Highway system for processing
Business Justification: Ensures correct system behavior and process compliance when system needs to access administration configuration data.
Trigger Criteria:
Context: The system needs to access administration configuration data
Applied to: Retrieve Administration Table Entry - Access GCSTBRT table with 'AD' table ID and 'ADMINID' sequence to get Merlin user configuration data
Action: A request is made to retrieve the administration table entry with table ID 'AD' and sequence ID 'ADMINID'
Logic Flow:
IF The system needs to access administration configuration data
AND A request is made to retrieve the administration table entry with table ID 'AD' and sequence ID 'ADMINID'
THEN:
• The system should retrieve the administration segment containing Merlin user configuration data
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when system is preparing to access the administration table.
Trigger Criteria:
Context: The system is preparing to access the administration table
Applied to: Set Function Code to 'GU' - Get Unique, Clear Key Values and Flags, Set Table ID to 'AD', Set Sequence ID to 'ADMINID'
Action: Setting up table access parameters
Logic Flow:
IF The system is preparing to access the administration table
AND Setting up table access parameters
THEN:
• The function code should be set to 'GU' for unique retrieval, table ID should be 'AD', sequence ID should be 'ADMINID', and all key values and flags should be cleared
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when table segment retrieval operation has been executed for administration data.
Trigger Criteria:
Context: A table segment retrieval operation has been executed for administration data
Applied to: Return Flag = 0?, Move Retrieved Segment to Administration Segment
Action: The return flag equals 0 indicating successful retrieval
Logic Flow:
IF A table segment retrieval operation has been executed for administration data
AND The return flag equals 0 indicating successful retrieval
THEN:
• The retrieved table segment should be moved to the administration segment structure for further processing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when table segment retrieval operation has been executed for administration data. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A table segment retrieval operation has been executed for administration data
Applied to: Admin Table Not Found, Call Error Handler
Action: The return flag is not equal to 0 indicating retrieval failure
Logic Flow:
IF A table segment retrieval operation has been executed for administration data
AND The return flag is not equal to 0 indicating retrieval failure
THEN:
• An error message should be set indicating admin table not found and the error handler should be called
R-GCX122A-cbl-00339 (+12)File: GCX122A.cblBusiness Rule: Validate DC
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when system needs to validate dc-p merlin user ids.
Trigger Criteria:
Context: The system needs to validate DC-P Merlin user IDs
Applied to: Get DC-P Merlin ID 1 from Admin Table GCSTBRT-AD-DC-P-MERLIN-1
Action: The administration table lookup is performed with table ID 'AD' and sequence ID 'ADMINID'
Logic Flow:
IF The system needs to validate DC-P Merlin user IDs
AND The administration table lookup is performed with table ID 'AD' and sequence ID 'ADMINID'
THEN:
• The first DC-P Merlin ID is retrieved from GCSTBRT-AD-DC-P-MERLIN-1 field
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when dc-p merlin id 1 has been retrieved from the administration table.
Trigger Criteria:
Context: A DC-P Merlin ID 1 has been retrieved from the administration table
Applied to: Check ID Exists in EMTZ Segment
Action: The system checks the EMTZ segment for user existence using the Merlin ID as the key
Logic Flow:
IF A DC-P Merlin ID 1 has been retrieved from the administration table
AND The system checks the EMTZ segment for user existence using the Merlin ID as the key
THEN:
• The system determines if the user ID exists based on the status code response
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when dc-p merlin id 1 exists in the emtz segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context:DC-P Merlin ID 1 exists in the EMTZ segment
Applied to: Use Original Merlin ID Set ID Found Flag
Action: The status code indicates successful user validation
Logic Flow:
IFDC-P Merlin ID 1 exists in the EMTZ segment
AND The status code indicates successful user validation
THEN:
• The original Merlin ID is stored as WS-DCP-MERLIN-IDand the ID found flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when dc-p merlin id 1 does not exist in the emtz segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context:DC-P Merlin ID 1 does not exist in the EMTZ segment
Applied to: Set Default ID 'OM01247' Set ID Not Found Flag
Action: The status code indicates user validation failure
Logic Flow:
IFDC-P Merlin ID 1 does not exist in the EMTZ segment
AND The status code indicates user validation failure
THEN:
• The default ID 'OM01247' is assigned to both GCSTBRT-AD-DC-P-MERLIN-1andWS-DCP-MERLIN-ID, and the ID not found flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when second dc-p merlin id has been retrieved from the admin table.
Trigger Criteria:
Context: The second DC-P Merlin ID has been retrieved from the admin table
Applied to: Check if Second Merlin ID Exists in EMTZ Segment
Action: The system checks if the second Merlin ID exists in the EMTZ segment
Logic Flow:
IF The second DC-P Merlin ID has been retrieved from the admin table
AND The system checks if the second Merlin ID exists in the EMTZ segment
THEN:
• If the second Merlin ID is valid (status code is space), assign it to IFS Merlin ID, otherwise assign the first DC-P Merlin ID as default to IFS Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when second dc-p merlin id has been validated successfully in the emtz segment.
Trigger Criteria:
Context: The second DC-P Merlin ID has been validated successfully in the EMTZ segment
Applied to: Set IFS Merlin ID to Second Merlin ID
Action: The validation status code is space indicating success
Logic Flow:
IF The second DC-P Merlin ID has been validated successfully in the EMTZ segment
AND The validation status code is space indicating success
THEN:
• The system assigns the second DC-P Merlin ID to the IFS Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when second dc-p merlin id validation has failed in the emtz segment.
Trigger Criteria:
Context: The second DC-P Merlin ID validation has failed in the EMTZ segment
Applied to: Set IFS Merlin ID to Default First Merlin ID
Action: The validation status code is not space indicating failure
Logic Flow:
IF The second DC-P Merlin ID validation has failed in the EMTZ segment
AND The validation status code is not space indicating failure
THEN:
• The system assigns the first DC-P Merlin ID as the default value to the IFS Merlin ID
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when system has retrieved the third dc-p merlin id from the admin table (gcstbrt-ad-dc-p-merlin-3). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The system has retrieved the third DC-P Merlin ID from the admin table (GCSTBRT-AD-DC-P-MERLIN-3)
Applied to: Check if third Merlin ID exists in EMTZ segment and set default to first ID if invalid
Action: The system validates the third Merlin ID against the EMTZ user segment
Logic Flow:
IF The system has retrieved the third DC-P Merlin ID from the admin table (GCSTBRT-AD-DC-P-MERLIN-3)
AND The system validates the third Merlin ID against the EMTZ user segment
THEN:
• If the third Merlin ID exists in the system, assign it to WS-HHS-MERLIN-ID; otherwise assign the first DC-P Merlin ID (GCSTBRT-AD-DC-P-MERLIN-1) as the default value for HHS system
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when third dc-p merlin id has been successfully validated in the emtz segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The third DC-P Merlin ID has been successfully validated in the EMTZ segment
Applied to: Set HHS Merlin ID to Third Merlin ID Value
Action: The validation status indicates the Merlin ID exists in the system (CC-STATUS-CODE is SPACE)
Logic Flow:
IF The third DC-P Merlin ID has been successfully validated in the EMTZ segment
AND The validation status indicates the Merlin ID exists in the system (CC-STATUS-CODE is SPACE)
THEN:
• Assign the third DC-P Merlin ID value to the HHS Merlin ID (WS-HHS-MERLIN-ID)
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when third dc-p merlin id validation has failed in the emtz segment. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The third DC-P Merlin ID validation has failed in the EMTZ segment
Applied to: Set HHS Merlin ID to Default First Merlin ID
Action: The validation status indicates the Merlin ID does not exist in the system (CC-STATUS-CODE is not SPACE)
Logic Flow:
IF The third DC-P Merlin ID validation has failed in the EMTZ segment
AND The validation status indicates the Merlin ID does not exist in the system (CC-STATUS-CODE is not SPACE)
THEN:
• Assign the first DC-P Merlin ID (GCSTBRT-AD-DC-P-MERLIN-1) as the default value to the HHS Merlin ID (WS-HHS-MERLIN-ID)
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when fourth dc-p merlin id has been retrieved from the admin table (gcstbrt-ad-dc-p-merlin-4). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The fourth DC-P Merlin ID has been retrieved from the admin table (GCSTBRT-AD-DC-P-MERLIN-4)
Applied to: Check if Fourth Merlin ID Exists in EMTZ Segment
Action: The system checks if this fourth Merlin ID exists in the EMTZ segment
Logic Flow:
IF The fourth DC-P Merlin ID has been retrieved from the admin table (GCSTBRT-AD-DC-P-MERLIN-4)
AND The system checks if this fourth Merlin ID exists in the EMTZ segment
THEN:
• If the fourth Merlin ID is valid (status code is space), assign it to WS-IMS-MERLIN-ID, otherwise assign the first DC-P Merlin ID (GCSTBRT-AD-DC-P-MERLIN-1) to WS-IMS-MERLIN-ID as default
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when fourth dc-p merlin id validation has been performed and the status code indicates success (space). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The fourth DC-P Merlin ID validation has been performed and the status code indicates success (space)
Applied to: Set IMS Merlin ID to Fourth ID Value
Action: The validation result shows the fourth Merlin ID exists in the EMTZ segment
Logic Flow:
IF The fourth DC-P Merlin ID validation has been performed and the status code indicates success (space)
AND The validation result shows the fourth Merlin ID exists in the EMTZ segment
THEN:
• The system assigns the fourth DC-P Merlin ID value to the IMS Merlin ID variable (WS-IMS-MERLIN-ID)
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when fourth dc-p merlin id validation has been performed and the status code indicates failure (not space). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The fourth DC-P Merlin ID validation has been performed and the status code indicates failure (not space)
Applied to: Set IMS Merlin ID to Default First ID
Action: The validation result shows the fourth Merlin ID does not exist in the EMTZ segment
Logic Flow:
IF The fourth DC-P Merlin ID validation has been performed and the status code indicates failure (not space)
AND The validation result shows the fourth Merlin ID does not exist in the EMTZ segment
THEN:
• The system assigns the first DC-P Merlin ID value (GCSTBRT-AD-DC-P-MERLIN-1) to the IMS Merlin ID variable (WS-IMS-MERLIN-ID) as a fallback default
R-GCX122A-cbl-00343 (+6)File: GCX122A.cblBusiness Rule: Retrieve Train Report by Reference Number
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train report retrieval operation is initiated.
Trigger Criteria:
Context: A train report retrieval operation is initiated
Applied to: Set Database Access Status to 'GE'
Action: The system prepares to access the train report database
Logic Flow:
IF A train report retrieval operation is initiated
AND The system prepares to access the train report database
THEN:
• The database access status must be set to 'GE' to enable exact match retrieval
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when reference number is provided for train report lookup.
Trigger Criteria:
Context: A reference number is provided for train report lookup
Applied to: Move Reference Number to Search Key
Action: The system prepares the database search parameters
Logic Flow:
IF A reference number is provided for train report lookup
AND The system prepares the database search parameters
THEN:
• The reference number must be moved to the B4-KEY-VALUE field for database access
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when database access parameters are configured with reference number and access mode. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The database access parameters are configured with reference number and access mode
Applied to: Call Database Access Function Z220-GHU-B4-TRAIN
Action: The system needs to retrieve train report data
Logic Flow:
IF The database access parameters are configured with reference number and access mode
AND The system needs to retrieve train report data
THEN:
• The Z220-GHU-B4-TRAIN function must be called to access the GCSB4RT database
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when database access attempt has been made for a train report.
Trigger Criteria:
Context: A database access attempt has been made for a train report
Applied to: Train Report Found?
Action: The system evaluates the database access result
Logic Flow:
IF A database access attempt has been made for a train report
AND The system evaluates the database access result
THEN:
• IfCC-STATUS-CODE is SPACES then train report exists, otherwise train report does not exist
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train report database lookup has been successful.
Trigger Criteria:
Context: A train report database lookup has been successful
Applied to: Set Train Report Found Flag
Action: The system confirms train report existence
Logic Flow:
IF A train report database lookup has been successful
AND The system confirms train report existence
THEN:
• The SW-TRAIN-REPORT-FOUND flag must be set to TRUE
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train report database lookup has failed.
Trigger Criteria:
Context: A train report database lookup has failed
Applied to: Set Train Report Not Found Flag
Action: The system confirms train report does not exist
Logic Flow:
IF A train report database lookup has failed
AND The system confirms train report does not exist
THEN:
• The SW-TRAIN-REPORT-NOT-FOUND flag must be set to TRUE
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train report has been successfully retrieved from the database. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A train report has been successfully retrieved from the database
Applied to: Get Train Last Modified Terminal
Action: The system needs to determine the processing terminal
Logic Flow:
IF A train report has been successfully retrieved from the database
AND The system needs to determine the processing terminal
THEN:
• IfGCB4R-LAST-MOD-LTERM is not SPACES then use GCB4R-LAST-MOD-LTERM, otherwise use GCB4R-CREATION-LTERM as WS-LTERM-PROCESS
R-GCX122A-cbl-00350 (+12)File: GCX122A.cblBusiness Rule: Update Train Report Status and Timestamps
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when acknowledgment message contains a train reference number.
Trigger Criteria:
Context: An acknowledgment message contains a train reference number
Applied to: Retrieve Train Report by Reference Number
Action: The system processes the train acknowledgment
Logic Flow:
IF An acknowledgment message contains a train reference number
AND The system processes the train acknowledgment
THEN:
• The system retrieves the corresponding train report from the database using the reference number
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train reference number is provided for acknowledgment.
Trigger Criteria:
Context: A train reference number is provided for acknowledgment
Applied to: Train Report Found?
Action: The system attempts to retrieve the train report
Logic Flow:
IF A train reference number is provided for acknowledgment
AND The system attempts to retrieve the train report
THEN:
• The system determines if the train report exists or is not found in the database
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train acknowledgment is being processed.
Trigger Criteria:
Context: A train acknowledgment is being processed
Applied to: Log Train Not Found Error
Action: The train report is not found in the database
Logic Flow:
IF A train acknowledgment is being processed
AND The train report is not found in the database
THEN:
• The system adds 'TRAIN REPORT NOT FOUND ON CUSTOMS DATABASE' message to the error log and sets train error flag
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train acknowledgment is being processed.
Trigger Criteria:
Context: A train acknowledgment is being processed
Applied to: Record Acknowledgment Number
Action: The system updates the train record
Logic Flow:
IF A train acknowledgment is being processed
AND The system updates the train record
THEN:
• The system records the acknowledgment reference number from the message into the train record
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train acknowledgment is being processed.
Trigger Criteria:
Context: A train acknowledgment is being processed
Applied to: Capture Current Date and Time
Action: The system needs to timestamp the acknowledgment
Logic Flow:
IF A train acknowledgment is being processed
AND The system needs to timestamp the acknowledgment
THEN:
• The system captures the current machine date, century, and time from the system
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train report is found for acknowledgment processing.
Trigger Criteria:
Context: A train report is found for acknowledgment processing
Applied to: Clear Security Error Flags
Action: The system begins updating the train report
Logic Flow:
IF A train report is found for acknowledgment processing
AND The system begins updating the train report
THEN:
• The system clears the security error flag in the train record
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train report is being acknowledged.
Trigger Criteria:
Context: A train report is being acknowledged
Applied to: Clear Position and Port Data
Action: The train record is marked as deleted or delete-pending
Logic Flow:
IF A train report is being acknowledged
AND The train record is marked as deleted or delete-pending
THEN:
• The system initializes (clears) the security position and port data fields
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train report exists for acknowledgment.
Trigger Criteria:
Context: A train report exists for acknowledgment
Applied to: Train Deleted or Delete Pending?
Action: The system processes the acknowledgment
Logic Flow:
IF A train report exists for acknowledgment
AND The system processes the acknowledgment
THEN:
• The system checks if the train record is marked as deleted or delete-pending
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when valid train report is being acknowledged.
Trigger Criteria:
Context: A valid train report is being acknowledged
Applied to: Set Train Status to ACK
Action: The system processes the acknowledgment
Logic Flow:
IF A valid train report is being acknowledged
AND The system processes the acknowledgment
THEN:
• The system sets the train record status to ACK
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when current date and time have been captured for acknowledgment.
Trigger Criteria:
Context: Current date and time have been captured for acknowledgment
Applied to: Save ACK Timestamp to Train Record
Action: The system updates the train record
Logic Flow:
IF Current date and time have been captured for acknowledgment
AND The system updates the train record
THEN:
• The system stores the combined date-time value as the acknowledgment timestamp in the train record
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when all acknowledgment data has been prepared for a train record.
Trigger Criteria:
Context: All acknowledgment data has been prepared for a train record
Applied to: Update Train Report in Database
Action: The system completes acknowledgment processing
Logic Flow:
IF All acknowledgment data has been prepared for a train record
AND The system completes acknowledgment processing
THEN:
• The system updates the train record in the database with all acknowledgment information
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train record has been successfully acknowledged.
Trigger Criteria:
Context: A train record has been successfully acknowledged
Applied to: AEI Send Flag Enabled?
Action: The system determines notification requirements
Logic Flow:
IF A train record has been successfully acknowledged
AND The system determines notification requirements
THEN:
• The system checks if the AEI send flag is set to 'Y' (Yes) in the train record
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train acknowledgment has been processed and aei send flag is enabled.
Trigger Criteria:
Context: A train acknowledgment has been processed and AEI send flag is enabled
Applied to: Send AEI Status Message
Action: The system sends notifications
Logic Flow:
IF A train acknowledgment has been processed and AEI send flag is enabled
AND The system sends notifications
THEN:
• The system creates and sends an AEI message containing train ID and current status
R-GCX122A-cbl-00363 (+5)File: GCX122A.cblBusiness Rule: Retrieve Cargo Control Record by Reference Number
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when input message containing a reference number in oti-03-ref-num.
Trigger Criteria:
Context: An input message containing a reference number in OTI-03-REF-NUM
Applied to: Set Reference Number from Message
Action: The system needs to retrieve cargo control records
Logic Flow:
IF An input message containing a reference number in OTI-03-REF-NUM
AND The system needs to retrieve cargo control records
THEN:
• The reference number is set as the key value for both CCRT-SSAQandA2RT-SSAQ segments
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when reference number has been set as the key value for a2rt-ssaq.
Trigger Criteria:
Context: A reference number has been set as the key value for A2RT-SSAQ
Applied to: Access GCSA2RT Segment First
Action: The system performs cargo control record retrieval
Logic Flow:
IF A reference number has been set as the key value for A2RT-SSAQ
AND The system performs cargo control record retrieval
THEN:
• The system calls CIMS with GHU function to access GCA2-PCB using GCSCCS52 segment andA2RT-SSAQ key
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when gcsa2rt segment access has been attempted.
Trigger Criteria:
Context: The GCSA2RT segment access has been attempted
Applied to: Clear GCSA2RT Data
Action: The status code indicates the GCSA2RT record was not found (CC-STATUS-CODE is not spaces)
Logic Flow:
IF The GCSA2RT segment access has been attempted
AND The status code indicates the GCSA2RT record was not found (CC-STATUS-CODE is not spaces)
THEN:
• The system moves spaces to GCSCCS52 to clear the segment data
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when gcsa2rt segment processing has been completed (whether found or not found).
Trigger Criteria:
Context: The GCSA2RT segment processing has been completed (whether found or not found)
Applied to: Access GCSCCRT Segment
Action: The system continues cargo control record retrieval
Logic Flow:
IF The GCSA2RT segment processing has been completed (whether found or not found)
AND The system continues cargo control record retrieval
THEN:
• The system calls CIMS with GHU function to access GCCC-PCB using GCCC-CARGO-REPORT-SEGMENTandCCRT-SSAQ key
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when gcsccrt segment access has been attempted.
Trigger Criteria:
Context: The GCSCCRT segment access has been attempted
Applied to: Return Cargo Control Data
Action: The status code indicates the GCSCCRT record was found (CC-STATUS-CODE is spaces)
Logic Flow:
IF The GCSCCRT segment access has been attempted
AND The status code indicates the GCSCCRT record was found (CC-STATUS-CODE is spaces)
THEN:
• The system returns with the cargo control data available in GCCC-CARGO-REPORT-SEGMENT for further processing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when gcsccrt segment access has been attempted.
Trigger Criteria:
Context: The GCSCCRT segment access has been attempted
Applied to: Return Record Not Found Status
Action: The status code indicates the GCSCCRT record was not found (CC-STATUS-CODE is not spaces)
Logic Flow:
IF The GCSCCRT segment access has been attempted
AND The status code indicates the GCSCCRT record was not found (CC-STATUS-CODE is not spaces)
THEN:
• The system returns with a not found status, making the cargo control data unavailable for processing
R-GCX122A-cbl-00369 (+9)File: GCX122A.cblBusiness Rule: Update Cargo Status and Process Terminal Information
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo acknowledgment message with reference number is received.
Trigger Criteria:
Context: A cargo acknowledgment message with reference number is received
Applied to: Retrieve Cargo Control Record by Reference Number
Action: The system attempts to retrieve the cargo control record using the reference number
Logic Flow:
IF A cargo acknowledgment message with reference number is received
AND The system attempts to retrieve the cargo control record using the reference number
THEN:
• The system performs database lookup using the reference number as the key for both cargo control and related segments
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo acknowledgment is being processed.
Trigger Criteria:
Context: A cargo acknowledgment is being processed
Applied to: CCN Not Found
Action: The cargo control record is not found in the database
Logic Flow:
IF A cargo acknowledgment is being processed
AND The cargo control record is not found in the database
THEN:
• The system adds error message 'CCN NOT FOUND ON CUSTOMS D.B. FOR 824 ACK' to the message text and MST entry
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo control record lookup has failed.
Trigger Criteria:
Context: Cargo control record lookup has failed
Applied to: Set Error Flag for DCP Interface
Action: The system needs to indicate an interface error condition
Logic Flow:
IF Cargo control record lookup has failed
AND The system needs to indicate an interface error condition
THEN:
• The system sets the DCP interface error flag to true
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo control record exists and acknowledgment is being processed.
Trigger Criteria:
Context: A cargo control record exists and acknowledgment is being processed
Applied to: Update Status to ACK
Action: The current cargo status is SENT
Logic Flow:
IF A cargo control record exists and acknowledgment is being processed
AND The current cargo status is SENT
THEN:
• The system updates the cargo current status to ACK
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo acknowledgment is being processed and cargo record exists.
Trigger Criteria:
Context: A cargo acknowledgment is being processed and cargo record exists
Applied to: Update Status to ACK
Action: The system processes the acknowledgment
Logic Flow:
IF A cargo acknowledgment is being processed and cargo record exists
AND The system processes the acknowledgment
THEN:
• The system sets the working current status to ACK for processing purposes
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo acknowledgment is being processed and cargo record exists.
Trigger Criteria:
Context: A cargo acknowledgment is being processed and cargo record exists
Applied to: Process Arrival Notifications
Action: The cargo arrival indicator equals Y
Logic Flow:
IF A cargo acknowledgment is being processed and cargo record exists
AND The cargo arrival indicator equals Y
THEN:
• The system performs arrival processing notifications
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo record exists and needs terminal assignment for processing.
Trigger Criteria:
Context: A cargo record exists and needs terminal assignment for processing
Applied to: Determine Processing Terminal
Action: The system evaluates terminal information
Logic Flow:
IF A cargo record exists and needs terminal assignment for processing
AND The system evaluates terminal information
THEN:
• The system uses last modify terminal if available, otherwise uses creation terminal as fallback
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo record has last modify terminal information.
Trigger Criteria:
Context: Cargo record has last modify terminal information
Applied to: Use Last Modify Terminal
Action: The last modify terminal field is not empty
Logic Flow:
IF Cargo record has last modify terminal information
AND The last modify terminal field is not empty
THEN:
• The system assigns the last modify terminal to the processing terminal variable
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo record exists but last modify terminal is not available.
Trigger Criteria:
Context: Cargo record exists but last modify terminal is not available
Applied to: Use Creation Terminal
Action: The last modify terminal field is empty or spaces
Logic Flow:
IF Cargo record exists but last modify terminal is not available
AND The last modify terminal field is empty or spaces
THEN:
• The system assigns the creation terminal to the processing terminal variable
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo acknowledgment processing is complete with all status and terminal updates.
Trigger Criteria:
Context: Cargo acknowledgment processing is complete with all status and terminal updates
Applied to: Update Cargo Control Record
Action: The system needs to persist the changes
Logic Flow:
IF Cargo acknowledgment processing is complete with all status and terminal updates
AND The system needs to persist the changes
THEN:
• The system updates the cargo control record in the database with all modifications
R-GCX122A-cbl-00379 (+8)File: GCX122A.cblBusiness Rule: Retrieve Train Report from Database
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train error processing request with a reference number.
Trigger Criteria:
Context: A train error processing request with a reference number
Applied to: Is Test Train Reference?
Action: The reference number equals '6105ETESTTRAIN00000000000'
Logic Flow:
IF A train error processing request with a reference number
AND The reference number equals '6105ETESTTRAIN00000000000'
THEN:
• The system performs special test processing and sets test train indicator
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train error processing request that is not a test reference.
Trigger Criteria:
Context: A train error processing request that is not a test reference
Applied to: Set Train Error Flag
Action: The system begins train error processing
Logic Flow:
IF A train error processing request that is not a test reference
AND The system begins train error processing
THEN:
• The train error flag is set to true
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when valid train reference number for processing.
Trigger Criteria:
Context: A valid train reference number for processing
Applied to: Access GCSB4RT Database
Action: The system needs to retrieve train report data
Logic Flow:
IF A valid train reference number for processing
AND The system needs to retrieve train report data
THEN:
• The system accesses GCSB4RT database with GE status and the reference number as key
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train report lookup that returns no results and the message is a v67 warning.
Trigger Criteria:
Context: A train report lookup that returns no results and the message is a V67 warning
Applied to: Set Train/Cargo Not Found Message for V67
Action: The free form message starts with 'V67'
Logic Flow:
IF A train report lookup that returns no results and the message is a V67 warning
AND The free form message starts with 'V67'
THEN:
• The system adds message 'TRAIN/CARGO NOT FOUND ON CUSTOMS DATABASE FOR V67 WARNING' and sets DCP interface error flag
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train report lookup that returns no results and the message is not a v67 warning.
Trigger Criteria:
Context: A train report lookup that returns no results and the message is not a V67 warning
Applied to: Set Train Report Not Found Message
Action: The free form message does not start with 'V67'
Logic Flow:
IF A train report lookup that returns no results and the message is not a V67 warning
AND The free form message does not start with 'V67'
THEN:
• The system adds message 'TRAIN REPORT NOT FOUND ON CUSTOMS DATABASE' and sets DCP interface error flag
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train report database lookup request.
Trigger Criteria:
Context: A train report database lookup request
Applied to: Set Train Report Found Flag
Action: The database returns a valid train report record
Logic Flow:
IF A train report database lookup request
AND The database returns a valid train report record
THEN:
• The system sets the train report found flag to true
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train report is found in the database and the message is a v67 warning.
Trigger Criteria:
Context: A train report is found in the database and the message is a V67 warning
Applied to: Set Train Report Found Flag
Action: The free form message starts with 'V67'
Logic Flow:
IF A train report is found in the database and the message is a V67 warning
AND The free form message starts with 'V67'
THEN:
• The system sets the train type indicator to true
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when found train report with terminal information.
Trigger Criteria:
Context: A found train report with terminal information
Applied to: Use Last Modified Terminal
Action: The last modified terminal field is not empty
Logic Flow:
IF A found train report with terminal information
AND The last modified terminal field is not empty
THEN:
• The system uses the last modified terminal for processing
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when found train report with terminal information.
Trigger Criteria:
Context: A found train report with terminal information
Applied to: Use Creation Terminal
Action: The last modified terminal field is empty
Logic Flow:
IF A found train report with terminal information
AND The last modified terminal field is empty
THEN:
• The system uses the creation terminal for processing
R-GCX122A-cbl-00388 (+14)File: GCX122A.cblBusiness Rule: Retrieve Cargo Control Record
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo error message is being processed.
Trigger Criteria:
Context: A cargo error message is being processed
Applied to: Check if Test Cargo Message
Action: The reference number starts with '6105ECPRSTESTCARGO' or '6105ETESTCARGO'
Logic Flow:
IF A cargo error message is being processed
AND The reference number starts with '6105ECPRSTESTCARGO' or '6105ETESTCARGO'
THEN:
• The message is flagged as test cargo and routed to special test processing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when test cargo message has been identified.
Trigger Criteria:
Context: A test cargo message has been identified
Applied to: Process Special Test Check
Action: Special test processing is invoked
Logic Flow:
IF A test cargo message has been identified
AND Special test processing is invoked
THEN:
• The system updates test timestamps in the T2 table and exits cargo error processing
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when non-test cargo error message is being processed.
Trigger Criteria:
Context: A non-test cargo error message is being processed
Applied to: Set Cargo Error Processing Flag
Action: The cargo error processing begins
Logic Flow:
IF A non-test cargo error message is being processed
AND The cargo error processing begins
THEN:
• The cargo error flag is set to indicate cargo-specific error handling
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo reference number is provided.
Trigger Criteria:
Context: A cargo reference number is provided
Applied to: Access GCSCCRT Segment with Reference Number
Action: The system searches for the cargo control record
Logic Flow:
IF A cargo reference number is provided
AND The system searches for the cargo control record
THEN:
• The GCSCCRT segment is accessed using the reference number as the key
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo reference number is provided.
Trigger Criteria:
Context: A cargo reference number is provided
Applied to: Access GCSA2RT Segment with Reference Number
Action: The system needs complete cargo information
Logic Flow:
IF A cargo reference number is provided
AND The system needs complete cargo information
THEN:
• The GCSA2RT segment is accessed using the same reference number
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo control record is not found in the database.
Trigger Criteria:
Context: A cargo control record is not found in the database
Applied to: Check for V67 Warning Message
Action: The free-form message starts with 'V67'
Logic Flow:
IF A cargo control record is not found in the database
AND The free-form message starts with 'V67'
THEN:
• The message is identified as a V67 warning requiring train error processing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo control record is not found in the database.
Trigger Criteria:
Context: A cargo control record is not found in the database
Applied to: Set Error Flag for DCP Interface
Action: The error is processed
Logic Flow:
IF A cargo control record is not found in the database
AND The error is processed
THEN:
• The DCP interface error flag is set to indicate interface issues
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when v67 warning message is detected for a missing cargo record.
Trigger Criteria:
Context: A V67 warning message is detected for a missing cargo record
Applied to: Process as Train Error Instead
Action: The system processes the V67 warning
Logic Flow:
IF A V67 warning message is detected for a missing cargo record
AND The system processes the V67 warning
THEN:
• The message is routed to train error processing instead of cargo error processing
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo control record is not found and it's not a v67 warning.
Trigger Criteria:
Context: A cargo control record is not found and it's not a V67 warning
Applied to: Record CCN Not Found Error
Action: The system processes the missing cargo record
Logic Flow:
IF A cargo control record is not found and it's not a V67 warning
AND The system processes the missing cargo record
THEN:
• An error message 'CCN NOT FOUND ON CUSTOMS DATABASE' is recorded for user notification
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo control record is successfully found.
Trigger Criteria:
Context: A cargo control record is successfully found
Applied to: Save Current Cargo Status
Action: The cargo record is accessed
Logic Flow:
IF A cargo control record is successfully found
AND The cargo record is accessed
THEN:
• The current status is saved for later comparison and processing decisions
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo control record is successfully located.
Trigger Criteria:
Context: A cargo control record is successfully located
Applied to: Set Cargo Report Found Flag
Action: The record retrieval is completed
Logic Flow:
IF A cargo control record is successfully located
AND The record retrieval is completed
THEN:
• The cargo report found flag is set to enable subsequent cargo processing
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo control record has been found.
Trigger Criteria:
Context: A cargo control record has been found
Applied to: Determine Last Modify Terminal
Action: The system determines message routing
Logic Flow:
IF A cargo control record has been found
AND The system determines message routing
THEN:
• The last modify terminal field is checked for availability
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo record has a last modify terminal recorded.
Trigger Criteria:
Context: A cargo record has a last modify terminal recorded
Applied to: Use Last Modify Terminal
Action: Terminal selection for processing is required
Logic Flow:
IF A cargo record has a last modify terminal recorded
AND Terminal selection for processing is required
THEN:
• The last modify terminal is selected for message routing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo record has no last modify terminal recorded.
Trigger Criteria:
Context: A cargo record has no last modify terminal recorded
Applied to: Use Creation Terminal
Action: Terminal selection for processing is required
Logic Flow:
IF A cargo record has no last modify terminal recorded
AND Terminal selection for processing is required
THEN:
• The creation terminal is selected as the fallback for message routing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when terminal has been selected for processing.
Trigger Criteria:
Context: A terminal has been selected for processing
Applied to: Store Terminal for Processing
Action: The terminal selection is completed
Logic Flow:
IF A terminal has been selected for processing
AND The terminal selection is completed
THEN:
• The selected terminal is stored in the processing context for message routing
Business Justification: Establishes the required business protocol to be followed when message processing request is initiated.
Trigger Criteria:
Context: A message processing request is initiated
Applied to: Message Number Available?
Action: The system checks for availability of a predefined message number in GCW122-MSG-NUM
Logic Flow:
IF A message processing request is initiated
AND The system checks for availability of a predefined message number in GCW122-MSG-NUM
THEN:
• If predefined message number exists and is not spaces, use it for key construction, otherwise extract first 3 characters from free-form message text
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when predefined message number exists in gcw122-msg-num and is not spaces.
Trigger Criteria:
Context: A predefined message number exists in GCW122-MSG-NUM and is not spaces
Applied to: Build Key with Predefined Message Number
Action: The system builds the table lookup key
Logic Flow:
IF A predefined message number exists in GCW122-MSG-NUM and is not spaces
AND The system builds the table lookup key
THEN:
• Concatenate 'B' prefix with the predefined message number to form the sequence ID for table lookup
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when no predefined message number exists or gcw122-msg-num contains spaces.
Trigger Criteria:
Context: No predefined message number exists or GCW122-MSG-NUM contains spaces
Applied to: Build Key with Error Code from Message
Action: The system builds the table lookup key
Logic Flow:
IF No predefined message number exists or GCW122-MSG-NUM contains spaces
AND The system builds the table lookup key
THEN:
• Extract first 3 characters from TED-02-FREE-FORM-MSGand concatenate with 'B' prefix to form the sequence ID for table lookup
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when message table lookup operation is required.
Trigger Criteria:
Context: A message table lookup operation is required
Applied to: Set Table ID to 'MS'
Action: The system prepares table access parameters
Logic Flow:
IF A message table lookup operation is required
AND The system prepares table access parameters
THEN:
• Set table identifier to 'MS' to access the message text table
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when table lookup parameters are prepared with table id 'ms' and constructed sequence id. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Table lookup parameters are prepared with table ID 'MS' and constructed sequence ID
Applied to: Call Table Lookup Service
Action: The system needs to retrieve standardized message text
Logic Flow:
IF Table lookup parameters are prepared with table ID 'MS' and constructed sequence ID
AND The system needs to retrieve standardized message text
THEN:
• Call GCCTBIO service with GU function code to perform table segment retrieval
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when table lookup service has been invoked for message text retrieval.
Trigger Criteria:
Context: Table lookup service has been invoked for message text retrieval
Applied to: Message Text Found?
Action: The system evaluates the lookup operation result
Logic Flow:
IF Table lookup service has been invoked for message text retrieval
AND The system evaluates the lookup operation result
THEN:
• IfGCCTBIO-RETURN-FLAG equals 0, message text was found successfully, otherwise message text was not found
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when message text was successfully retrieved from the message table (gcctbio-return-flag equals 0). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Message text was successfully retrieved from the message table (GCCTBIO-RETURN-FLAG equals 0)
Applied to: Set Message Found Flag
Action: The system processes the lookup result
Logic Flow:
IF Message text was successfully retrieved from the message table (GCCTBIO-RETURN-FLAG equals 0)
AND The system processes the lookup result
THEN:
• Set SW-GCSTBRT-MS-FOUND flag to true, move retrieved table segment to GCSTBRT-MS-SEGMENT, and store English text in WS-GCSTBRT-MS-ENG-TEXT
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when message text was found and message found flag is set to true.
Trigger Criteria:
Context: Message text was found and message found flag is set to true
Applied to: Store Retrieved Message Text
Action: The system stores the retrieved message text
Logic Flow:
IF Message text was found and message found flag is set to true
AND The system stores the retrieved message text
THEN:
• Extract English text from GCSTBRT-MS-ENG-TEXTand make it available for message processing operations
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when message text lookup operation failed (gcctbio-return-flag not equal to 0).
Trigger Criteria:
Context: Message text lookup operation failed (GCCTBIO-RETURN-FLAG not equal to 0)
Applied to: Set Message Not Found Flag
Action: The system processes the failed lookup result
Logic Flow:
IF Message text lookup operation failed (GCCTBIO-RETURN-FLAG not equal to 0)
AND The system processes the failed lookup result
THEN:
• Set SW-GCSTBRT-MS-NOT-FOUND flag to true to indicate message text was not available in the table
R-GCX122A-cbl-00412 (+7)File: GCX122A.cblBusiness Rule: Update Train Record Status
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train error message is being processed.
Trigger Criteria:
Context: A train error message is being processed
Applied to: Error Type = 'X' Info Only?
Action: The error type is 'X' indicating informational message only
Logic Flow:
IF A train error message is being processed
AND The error type is 'X' indicating informational message only
THEN:
• The system sets status to WARNING for warning items or INFO for other items and exits without database updates
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train error message requires status update.
Trigger Criteria:
Context: A train error message requires status update
Applied to: Train Report Found in Database?
Action: The system checks for train record existence in the database
Logic Flow:
IF A train error message requires status update
AND The system checks for train record existence in the database
THEN:
• Processing continues only if the train record is found, otherwise the update process is skipped
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train record exists in the database.
Trigger Criteria:
Context: A train record exists in the database
Applied to: Train Deleted or Delete Pending?
Action: The train record is marked as deleted or delete pending
Logic Flow:
IF A train record exists in the database
AND The train record is marked as deleted or delete pending
THEN:
• The system skips the status update process for this record
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train record requires error status update and is not deleted.
Trigger Criteria:
Context: A train record requires error status update and is not deleted
Applied to: Set Resend Flag to 'Y'
Action: The system processes the error update
Logic Flow:
IF A train record requires error status update and is not deleted
AND The system processes the error update
THEN:
• The resend flag is set to 'Y', train key is copied to error train field, and position date is copied to error date field
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train record is being updated with an error message.
Trigger Criteria:
Context: A train record is being updated with an error message
Applied to: Error Type = 'R' Reject?
Action: The error type is 'R' indicating a rejection
Logic Flow:
IF A train record is being updated with an error message
AND The error type is 'R' indicating a rejection
THEN:
• The system sets reject status flag, train status to REJECT, and current status to 'REJECT'
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train record is being updated with an error message.
Trigger Criteria:
Context: A train record is being updated with an error message
Applied to: Set ERROR Status
Action: The error type is not 'R'
Logic Flow:
IF A train record is being updated with an error message
AND The error type is not 'R'
THEN:
• The system sets error status flag, train status to ERROR, and current status to 'ERROR'
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train record status update is being performed.
Trigger Criteria:
Context: A train record status update is being performed
Applied to: Save Train Root Segment
Action: The system needs to update the database record
Logic Flow:
IF A train record status update is being performed
AND The system needs to update the database record
THEN:
• The current train root segment is saved, the record is retrieved from database, the saved segment is restored, and the record is replaced in the database
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when train record status has been successfully updated.
Trigger Criteria:
Context: A train record status has been successfully updated
Applied to: AEI Send Flag = 'Y'?
Action: The AEI send flag is set to 'Y' for the train record
Logic Flow:
IF A train record status has been successfully updated
AND The AEI send flag is set to 'Y' for the train record
THEN:
• The system sends an AEI status message containing train ID and current status
R-GCX122A-cbl-00420 (+4)File: GCX122A.cblBusiness Rule: Update Cargo Record Status
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo error message is being processed with error type information available from the message table.
Trigger Criteria:
Context: A cargo error message is being processed with error type information available from the message table
Applied to: Is Error Type 'X' Info?
Action: The error type from the message table is 'X' (informational)
Logic Flow:
IF A cargo error message is being processed with error type information available from the message table
AND The error type from the message table is 'X' (informational)
THEN:
• The system should set the current status to 'WARNING' for warning items or 'INFO' for other items and exit without updating the cargo database record
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo error message is being processed and the error type is not informational ('x').
Trigger Criteria:
Context: A cargo error message is being processed and the error type is not informational ('X')
Applied to: Set Error/Release Status Index to 'E'
Action: The cargo report is found in the system
Logic Flow:
IF A cargo error message is being processed and the error type is not informational ('X')
AND The cargo report is found in the system
THEN:
• The system should set the error or release status index to 'E' to indicate error processing mode
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo error message is being processed and the cargo report exists in the system.
Trigger Criteria:
Context: A cargo error message is being processed and the cargo report exists in the system
Applied to: Is Error Type 'R' Reject?
Action: The error type from the message table is 'R' (reject)
Logic Flow:
IF A cargo error message is being processed and the cargo report exists in the system
AND The error type from the message table is 'R' (reject)
THEN:
• The system should set the error status to 'R', set the current status to 'REJECT', and update the cargo record in the database
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo error message is being processed and the cargo report exists in the system.
Trigger Criteria:
Context: A cargo error message is being processed and the cargo report exists in the system
Applied to: Set Current Status to ERROR
Action: The error type from the message table is not 'R' (not a reject) and not 'X' (not informational)
Logic Flow:
IF A cargo error message is being processed and the cargo report exists in the system
AND The error type from the message table is not 'R' (not a reject) and not 'X' (not informational)
THEN:
• The system should set the error status to 'E', set the current status to 'ERROR', and update the cargo record in the database
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo error message has been processed and the appropriate error status has been determined.
Trigger Criteria:
Context: A cargo error message has been processed and the appropriate error status has been determined
Applied to: Update Cargo Record in GCSCCRT
Action: The cargo record status needs to be persisted
Logic Flow:
IF A cargo error message has been processed and the appropriate error status has been determined
AND The cargo record status needs to be persisted
THEN:
• The system should update the cargo record in the GCSCCRT database with the new error status and current status
R-GCX122A-cbl-00425 (+6)File: GCX122A.cblBusiness Rule: Get Port Code and Email Users
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train report exists with port of release information.
Trigger Criteria:
Context: A train report exists with port of release information
Applied to: Extract Port Code from Train Report
Action: The system needs to send AEI notifications
Logic Flow:
IF A train report exists with port of release information
AND The system needs to send AEI notifications
THEN:
• The port code from the train report's port of release field is extracted and used as the lookup key
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when system needs to lookup email recipients for a port code.
Trigger Criteria:
Context: The system needs to lookup email recipients for a port code
Applied to: Set Record Type to CUSEMAIL
Action: Preparing the database query parameters
Logic Flow:
IF The system needs to lookup email recipients for a port code
AND Preparing the database query parameters
THEN:
• The record type is set to 'CUSEMAIL' to indicate email user lookup
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when port code and record type of cusemail are specified. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A port code and record type of CUSEMAIL are specified
Applied to: Call Database to Get Email Users
Action: The database lookup service is called
Logic Flow:
IF A port code and record type of CUSEMAIL are specified
AND The database lookup service is called
THEN:
• The system attempts to retrieve email user information for the port code
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when database lookup for email recipients has been performed.
Trigger Criteria:
Context: A database lookup for email recipients has been performed
Applied to: Email Users Found?
Action: The system evaluates the lookup results
Logic Flow:
IF A database lookup for email recipients has been performed
AND The system evaluates the lookup results
THEN:
• If the return code indicates success, use retrieved recipients; otherwise use default recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when database lookup successfully returned email recipients.
Trigger Criteria:
Context: The database lookup successfully returned email recipients
Applied to: Use Retrieved Email Recipients
Action: Building the recipient list for AEI notifications
Logic Flow:
IF The database lookup successfully returned email recipients
AND Building the recipient list for AEI notifications
THEN:
• The system iterates through up to 10 returned email addresses and adds non-blank entries to the recipient list
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when database lookup for email recipients failed or returned no results.
Trigger Criteria:
Context: The database lookup for email recipients failed or returned no results
Applied to: Use Default Merlin ID as Recipient
Action: Building the recipient list for AEI notifications
Logic Flow:
IF The database lookup for email recipients failed or returned no results
AND Building the recipient list for AEI notifications
THEN:
• The system uses the default Merlin ID as both the sender and the first recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when email recipients have been determined (either from database or default). ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Email recipients have been determined (either from database or default)
Applied to: Prepare Email User List for AEI Message
Action: Preparing to send AEI notification
Logic Flow:
IF Email recipients have been determined (either from database or default)
AND Preparing to send AEI notification
THEN:
• The system sets the default Merlin ID as sender, configures recipient list, clears copy and keyword fields, sets message width to 080, and initializes return status
R-GCX122A-cbl-00432 (+7)File: GCX122A.cblBusiness Rule: Get Supervisor Merlin ID from Terminal
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when processing terminal identifier (lterm) exists.
Trigger Criteria:
Context: A processing terminal identifier (LTERM) exists
Applied to: Access LT Table with LTERM
Action: The system needs to retrieve supervisor configuration
Logic Flow:
IF A processing terminal identifier (LTERM) exists
AND The system needs to retrieve supervisor configuration
THEN:
• The system accesses the LT table using the LTERM as the key to retrieve terminal configuration data
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when request to access lt table with a specific lterm.
Trigger Criteria:
Context: A request to access LT table with a specific LTERM
Applied to: LT Table Entry Found?
Action: The table lookup is performed
Logic Flow:
IF A request to access LT table with a specific LTERM
AND The table lookup is performed
THEN:
• If the return flag equals 0, the terminal configuration exists, otherwise it does not exist
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when valid lt table entry exists for the lterm.
Trigger Criteria:
Context: A valid LT table entry exists for the LTERM
Applied to: Retrieve LT Segment Data
Action: The table segment is successfully retrieved
Logic Flow:
IF A valid LT table entry exists for the LTERM
AND The table segment is successfully retrieved
THEN:
• The system moves the table segment data to the LT segment structure for processing
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when terminal configuration data has been retrieved from lt table.
Trigger Criteria:
Context: Terminal configuration data has been retrieved from LT table
Applied to: Check for Alternate Terminal
Action: The system processes the terminal configuration
Logic Flow:
IF Terminal configuration data has been retrieved from LT table
AND The system processes the terminal configuration
THEN:
• The system checks if the LT-ALTERNATE field contains a non-space value
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when alternate terminal is specified in the lt-alternate field. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: An alternate terminal is specified in the LT-ALTERNATE field
Applied to: Update LTERM to Alternate
Action: The alternate terminal field is not spaces
Logic Flow:
IF An alternate terminal is specified in the LT-ALTERNATE field
AND The alternate terminal field is not spaces
THEN:
• The system updates the processing LTERM to the alternate terminal value and updates the MST call letters accordingly
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when supervisor merlin id is retrieved from terminal configuration.
Trigger Criteria:
Context: A supervisor Merlin ID is retrieved from terminal configuration
Applied to: Validate Supervisor Merlin ID
Action: The system validates the supervisor ID
Logic Flow:
IF A supervisor Merlin ID is retrieved from terminal configuration
AND The system validates the supervisor ID
THEN:
• The system performs a lookup using the supervisor Merlin ID as the key to verify its existence
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when supervisor merlin id validation returns a successful status.
Trigger Criteria:
Context: The supervisor Merlin ID validation returns a successful status
Applied to: Set Valid Supervisor ID
Action: The status code is spaces (indicating success)
Logic Flow:
IF The supervisor Merlin ID validation returns a successful status
AND The status code is spaces (indicating success)
THEN:
• The system assigns the supervisor Merlin ID to the user Merlin field for message routing
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when supervisor merlin id validation fails.
Trigger Criteria:
Context: The supervisor Merlin ID validation fails
Applied to: Add Invalid ID Error Message
Action: The status code is not spaces (indicating failure)
Logic Flow:
IF The supervisor Merlin ID validation fails
AND The status code is not spaces (indicating failure)
THEN:
• The system adds an error message 'SUPERVISOR MERLIN USERID INVALID' with the invalid ID and clears the user Merlin field
Business Justification: Governs the functional prerequisites and system routing when cargo arrival processing request is initiated.
Trigger Criteria:
Context: A cargo arrival processing request is initiated
Applied to: Initialize GCX148 Input Structure
Action: The system begins arrival transaction initialization
Logic Flow:
IF A cargo arrival processing request is initiated
AND The system begins arrival transaction initialization
THEN:
• The GCX148 input structure is initialized to clear any previous data
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when arrival transaction is being prepared.
Trigger Criteria:
Context: An arrival transaction is being prepared
Applied to: Set Security Byte to High-Value
Action: Security parameters are being configured
Logic Flow:
IF An arrival transaction is being prepared
AND Security parameters are being configured
THEN:
• The security byte is set to high-value to indicate maximum security clearance required
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo record with a valid cargo control number exists.
Trigger Criteria:
Context: A cargo record with a valid cargo control number exists
Applied to: Move Cargo Control Number to Transaction
Action: An arrival transaction is being prepared for the cargo
Logic Flow:
IF A cargo record with a valid cargo control number exists
AND An arrival transaction is being prepared for the cargo
THEN:
• The cargo control number from the cargo record is assigned to the arrival transaction
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when arrival transaction is being prepared for cargo.
Trigger Criteria:
Context: An arrival transaction is being prepared for cargo
Applied to: Set Transaction Type to CA-CARGO
Action: The transaction type needs to be specified
Logic Flow:
IF An arrival transaction is being prepared for cargo
AND The transaction type needs to be specified
THEN:
• The transaction type is set to CA-CARGO to indicate this is a cargo-related arrival
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo arrival transaction is being prepared.
Trigger Criteria:
Context: A cargo arrival transaction is being prepared
Applied to: Set Action Code to 'CAA'
Action: The action code needs to be specified
Logic Flow:
IF A cargo arrival transaction is being prepared
AND The action code needs to be specified
THEN:
• The action code is set to 'CAA' to indicate cargo arrival processing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo record contains manifest transaction code information.
Trigger Criteria:
Context: A cargo record contains manifest transaction code information
Applied to: Move Port Code from Manifest Transaction Code
Action: An arrival transaction is being prepared
Logic Flow:
IF A cargo record contains manifest transaction code information
AND An arrival transaction is being prepared
THEN:
• The port code from the manifest transaction code is extracted and assigned to the arrival transaction
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when all arrival transaction parameters have been configured.
Trigger Criteria:
Context: All arrival transaction parameters have been configured
Applied to: Prepare GCT1481E Message Structure
Action: The system prepares to communicate the arrival information
Logic Flow:
IF All arrival transaction parameters have been configured
AND The system prepares to communicate the arrival information
THEN:
• The GCX148 input data is formatted into the GCT1481E message structure
R-GCX122A-cbl-00447 (+2)File: GCX122A.cblBusiness Rule: Retrieve Iron Highway Configuration
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo record exists with an origin station number and the system needs iron highway configuration data.
Trigger Criteria:
Context: A cargo record exists with an origin station number and the system needs Iron Highway configuration data
Applied to: Retrieve Iron Highway Configuration - Access IH table using origin station number to get Iron Highway system configuration
Action: The system accesses the IH table using the origin station number as the key
Logic Flow:
IF A cargo record exists with an origin station number and the system needs Iron Highway configuration data
AND The system accesses the IH table using the origin station number as the key
THEN:
• The Iron Highway configuration is retrieved if found, otherwise the configuration remains unavailable
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when system needs to retrieve iron highway configuration data.
Trigger Criteria:
Context: The system needs to retrieve Iron Highway configuration data
Applied to: Set Function Code to GU - Get Unique
Action: Setting up table access parameters
Logic Flow:
IF The system needs to retrieve Iron Highway configuration data
AND Setting up table access parameters
THEN:
• Function code is set to GU for unique record retrieval, table ID is set to 'IH', and origin station number is used as the search key
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when table lookup has been performed for iron highway configuration.
Trigger Criteria:
Context: A table lookup has been performed for Iron Highway configuration
Applied to: Configuration Found?
Action: The system checks the return status from the table access
Logic Flow:
IF A table lookup has been performed for Iron Highway configuration
AND The system checks the return status from the table access
THEN:
• If return flag equals '0' then configuration is available, otherwise configuration is not available
R-GCX122A-cbl-00450 (+11)File: GCX122A.cblBusiness Rule: Prepare Iron Highway Transaction Data
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo record exists with an origin station number.
Trigger Criteria:
Context: A cargo record exists with an origin station number
Applied to: Get Iron Highway Configuration Table
Action: The system needs to prepare Iron Highway transaction data
Logic Flow:
IF A cargo record exists with an origin station number
AND The system needs to prepare Iron Highway transaction data
THEN:
• The system looks up the Iron Highway configuration table using the cargo origin station number as the key
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when lookup has been performed on the iron highway configuration table.
Trigger Criteria:
Context: A lookup has been performed on the Iron Highway configuration table
Applied to: Configuration Found?
Action: The system checks the lookup result
Logic Flow:
IF A lookup has been performed on the Iron Highway configuration table
AND The system checks the lookup result
THEN:
• If configuration is found (return flag equals '0'), proceed with data mapping, otherwise skip Iron Highway processing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when iron highway configuration has been successfully retrieved.
Trigger Criteria:
Context: Iron Highway configuration has been successfully retrieved
Applied to: Set Record Type from Configuration
Action: The system prepares the Iron Highway transaction data structure
Logic Flow:
IF Iron Highway configuration has been successfully retrieved
AND The system prepares the Iron Highway transaction data structure
THEN:
• The record type code from the configuration is assigned to the Iron Highway record type field
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo record has a current status value.
Trigger Criteria:
Context: A cargo record has a current status value
Applied to: Map Current Cargo Status
Action: The system prepares Iron Highway transaction data
Logic Flow:
IF A cargo record has a current status value
AND The system prepares Iron Highway transaction data
THEN:
• The cargo current status is mapped to the Iron Highway CCN status field
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo record contains an equipment id for indexing.
Trigger Criteria:
Context: A cargo record contains an equipment ID for indexing
Applied to: Map Equipment ID for Index
Action: The system prepares Iron Highway transaction data
Logic Flow:
IF A cargo record contains an equipment ID for indexing
AND The system prepares Iron Highway transaction data
THEN:
• The equipment ID for index is mapped to the Iron Highway car ID field
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo record has a waybill key for indexing.
Trigger Criteria:
Context: A cargo record has a waybill key for indexing
Applied to: Map Waybill Key First 15 Characters
Action: The system prepares Iron Highway transaction data
Logic Flow:
IF A cargo record has a waybill key for indexing
AND The system prepares Iron Highway transaction data
THEN:
• The first 15 characters of the waybill key are mapped to the Iron Highway waybill field
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo record has a ccn key identifier.
Trigger Criteria:
Context: A cargo record has a CCN key identifier
Applied to: Map Cargo Control Number
Action: The system prepares Iron Highway transaction data
Logic Flow:
IF A cargo record has a CCN key identifier
AND The system prepares Iron Highway transaction data
THEN:
• The CCN key is mapped to the Iron Highway CCN field
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when system is preparing to process cargo reference numbers.
Trigger Criteria:
Context: The system is preparing to process cargo reference numbers
Applied to: Initialize Reference Counter
Action: Iron Highway data mapping begins
Logic Flow:
IF The system is preparing to process cargo reference numbers
AND Iron Highway data mapping begins
THEN:
• The reference number counter is set to zero
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo record contains multiple reference numbers.
Trigger Criteria:
Context: Cargo record contains multiple reference numbers
Applied to: Loop Through Reference Numbers
Action: The system processes Iron Highway data
Logic Flow:
IF Cargo record contains multiple reference numbers
AND The system processes Iron Highway data
THEN:
• The system loops through reference numbers incrementing the counter from 1 to 10
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo reference number entry is being processed.
Trigger Criteria:
Context: A cargo reference number entry is being processed
Applied to: Reference Qualifier = 'CN'?
Action: The system checks the reference number qualifier
Logic Flow:
IF A cargo reference number entry is being processed
AND The system checks the reference number qualifier
THEN:
• If the qualifier equals 'CN', the reference number is identified as a shipment ID candidate
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when reference number has been identified with 'cn' qualifier.
Trigger Criteria:
Context: A reference number has been identified with 'CN' qualifier
Applied to: Map Reference Number to Shipment ID
Action: The system maps the reference data
Logic Flow:
IF A reference number has been identified with 'CN' qualifier
AND The system maps the reference data
THEN:
• The reference number value is assigned to the Iron Highway shipment ID field
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when iron highway transaction data has been completely mapped. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: Iron Highway transaction data has been completely mapped
Applied to: Call Iron Highway Interface
Action: All required fields have been populated
Logic Flow:
IF Iron Highway transaction data has been completely mapped
AND All required fields have been populated
THEN:
• The system calls the GCCIH program with the Iron Highway data structure
R-GCX122A-cbl-00471 (+11)File: GCX122A.cblBusiness Rule: Send AEI Status Message
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train record requires aei status notification and has a port code.
Trigger Criteria:
Context: A train record requires AEI status notification and has a port code
Applied to: Retrieve Email Recipients by Port Code
Action: The system looks up email recipients using the port code from the train's position port
Logic Flow:
IF A train record requires AEI status notification and has a port code
AND The system looks up email recipients using the port code from the train's position port
THEN:
• The system retrieves the customer email list for that port code
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when system has attempted to retrieve email recipients by port code.
Trigger Criteria:
Context: The system has attempted to retrieve email recipients by port code
Applied to: Recipients Found?
Action: The email lookup returns a success status
Logic Flow:
IF The system has attempted to retrieve email recipients by port code
AND The email lookup returns a success status
THEN:
• The system uses the retrieved email recipient list for AEI notification
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when email recipients were successfully retrieved from the customer email table.
Trigger Criteria:
Context: Email recipients were successfully retrieved from the customer email table
Applied to: Use Retrieved Email List
Action: The system prepares the AEI notification
Logic Flow:
IF Email recipients were successfully retrieved from the customer email table
AND The system prepares the AEI notification
THEN:
• The system populates up to 10 email recipient addresses from the retrieved list and sets default Merlin ID as sender
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when email recipient lookup failed or returned no results.
Trigger Criteria:
Context: Email recipient lookup failed or returned no results
Applied to: Use Default Merlin ID
Action: The system prepares the AEI notification
Logic Flow:
IF Email recipient lookup failed or returned no results
AND The system prepares the AEI notification
THEN:
• The system sets default Merlin ID as both sender and first recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train record requires aei status notification with valid train id and status.
Trigger Criteria:
Context: A train record requires AEI status notification with valid train ID and status
Applied to: Format Status Message with Train ID and Status
Action: The system formats the AEI message
Logic Flow:
IF A train record requires AEI status notification with valid train ID and status
AND The system formats the AEI message
THEN:
• The system creates a subject line containing 'TRAIN: ' followed by the Canadian customs train ID, ' STATUS: ' followed by the current train status
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when aei message is formatted with recipients, sender, and status information.
Trigger Criteria:
Context: AEI message is formatted with recipients, sender, and status information
Applied to: Send AEI Message to Recipients
Action: The system sends the AEI notification
Logic Flow:
IF AEI message is formatted with recipients, sender, and status information
AND The system sends the AEI notification
THEN:
• The system calls the email messaging service with formatted message details and item width of 080
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when system has attempted to send the primary aei notification.
Trigger Criteria:
Context: The system has attempted to send the primary AEI notification
Applied to: Send Successful?
Action: The email messaging service returns a status
Logic Flow:
IF The system has attempted to send the primary AEI notification
AND The email messaging service returns a status
THEN:
• The system checks if the return status flag indicates successful delivery
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when primary aei notification was sent successfully.
Trigger Criteria:
Context: The primary AEI notification was sent successfully
Applied to: AEI Message Sent Successfully
Action: The system completes AEI processing
Logic Flow:
IF The primary AEI notification was sent successfully
AND The system completes AEI processing
THEN:
• The system purges the message queue and continues normal processing
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when primary aei notification send failed.
Trigger Criteria:
Context: The primary AEI notification send failed
Applied to: Send to Default Recipients OM01247 and AEI9999
Action: The system attempts fallback notification
Logic Flow:
IF The primary AEI notification send failed
AND The system attempts fallback notification
THEN:
• The system clears recipient list and sends notification to OM01247 as first recipient and AEI9999 as second recipient
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when system has attempted to send aei notification to fallback recipients.
Trigger Criteria:
Context: The system has attempted to send AEI notification to fallback recipients
Applied to: Fallback Send Successful?
Action: The email messaging service returns a status for the fallback attempt
Logic Flow:
IF The system has attempted to send AEI notification to fallback recipients
AND The email messaging service returns a status for the fallback attempt
THEN:
• The system checks if the return status flag indicates successful delivery
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when both primary and fallback aei notification sends have failed.
Trigger Criteria:
Context: Both primary and fallback AEI notification sends have failed
Applied to: Log Send Failure Error
Action: The system handles the send failure
Logic Flow:
IF Both primary and fallback AEI notification sends have failed
AND The system handles the send failure
THEN:
• The system logs error message 'SEND TO FILE OF OM01247 FAILED' and calls error handling routine
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when database error occurred during email recipient lookup.
Trigger Criteria:
Context: A database error occurred during email recipient lookup
Applied to: Complete AEI Processing
Action: The system completes AEI processing
Logic Flow:
IF A database error occurred during email recipient lookup
AND The system completes AEI processing
THEN:
• The system sends database error notification to support team with SQL error code details
R-GCX122A-cbl-00483 (+6)File: GCX122A.cblBusiness Rule: Handle Test Train Processing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when train error message is received with a reference number.
Trigger Criteria:
Context: A train error message is received with a reference number
Applied to: Reference Number = '6105ETESTTRAIN00000000000'?
Action: The reference number equals '6105ETESTTRAIN00000000000'
Logic Flow:
IF A train error message is received with a reference number
AND The reference number equals '6105ETESTTRAIN00000000000'
THEN:
• The system sets the test train indicator and initiates test processing workflow
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when train reference number matches the test train pattern '6105etesttrain00000000000'.
Trigger Criteria:
Context: The train reference number matches the test train pattern '6105ETESTTRAIN00000000000'
Applied to: Set Test Train Indicator
Action: The system confirms this is test data
Logic Flow:
IF The train reference number matches the test train pattern '6105ETESTTRAIN00000000000'
AND The system confirms this is test data
THEN:
• The system sets TEST-TRAIN indicator to true and calls special test table processing
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when system needs to update test train acknowledgment timestamps.
Trigger Criteria:
Context: The system needs to update test train acknowledgment timestamps
Applied to: T2 Table Found?
Action: The T2 test table lookup is performed
Logic Flow:
IF The system needs to update test train acknowledgment timestamps
AND The T2 test table lookup is performed
THEN:
• If the table is not found, the system reports a configuration error and stops processing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when test train acknowledgment is being processed and the t2 table is accessible.
Trigger Criteria:
Context: A test train acknowledgment is being processed and the T2 table is accessible
Applied to: Record Current Date in T2-358-ACK & Record Current Century in T2-358-ACK & Record Current Time in T2-358-ACK
Action: The system updates the test acknowledgment timestamp
Logic Flow:
IF A test train acknowledgment is being processed and the T2 table is accessible
AND The system updates the test acknowledgment timestamp
THEN:
• The current machine date is stored in positions 3-6 of the T2-358-ACK field
• The current machine century is stored in positions 1-2 of the T2-358-ACK field
• The first 4 digits of the current machine time are stored in positions 9-12 of the T2-358-ACK field
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when test train acknowledgment timestamps have been updated in memory.
Trigger Criteria:
Context: The test train acknowledgment timestamps have been updated in memory
Applied to: Save Updated Test Table
Action: The system completes the timestamp recording
Logic Flow:
IF The test train acknowledgment timestamps have been updated in memory
AND The system completes the timestamp recording
THEN:
• The updated T2 table segment is written back to the database using replace operation
R-GCX122A-cbl-00490 (+6)File: GCX122A.cblBusiness Rule: Handle Test Cargo Processing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo error message is received with a reference number.
Trigger Criteria:
Context: A cargo error message is received with a reference number
Applied to: Check Reference Number
Action: The reference number starts with '6105ECPRSTESTCARGO' or starts with '6105ETESTCARGO'
Logic Flow:
IF A cargo error message is received with a reference number
AND The reference number starts with '6105ECPRSTESTCARGO' or starts with '6105ETESTCARGO'
THEN:
• The system should identify this as test cargo data and set the test cargo flag
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo reference number matches test cargo patterns.
Trigger Criteria:
Context: A cargo reference number matches test cargo patterns
Applied to: Set Test Cargo Flag
Action: The reference starts with '6105ECPRSTESTCARGO' or '6105ETESTCARGO'
Logic Flow:
IF A cargo reference number matches test cargo patterns
AND The reference starts with '6105ECPRSTESTCARGO' or '6105ETESTCARGO'
THEN:
• The system should set the TEST-CARGO flag to true and perform special test processing
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when test cargo processing is required.
Trigger Criteria:
Context: Test cargo processing is required
Applied to: Retrieve T2 Test Table
Action: The system needs to update test acknowledgment data
Logic Flow:
IF Test cargo processing is required
AND The system needs to update test acknowledgment data
THEN:
• The system should retrieve the T2 table segment from the GCSTBRT table with table ID 'T2'
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when system attempts to retrieve the t2 test table.
Trigger Criteria:
Context: The system attempts to retrieve the T2 test table
Applied to: T2 Table Found?
Action: The T2 table retrieval operation is performed
Logic Flow:
IF The system attempts to retrieve the T2 test table
AND The T2 table retrieval operation is performed
THEN:
• If the table is not found (return flag not equal to '0'), log an error message 'T2 CHECK TABLE ENTRY NOT FOUND'
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when test cargo processing is active and t2 table is available.
Trigger Criteria:
Context: Test cargo processing is active and T2 table is available
Applied to: Update Test Acknowledgment Timestamp
Action: A cargo test acknowledgment needs to be recorded
Logic Flow:
IF Test cargo processing is active and T2 table is available
AND A cargo test acknowledgment needs to be recorded
THEN:
• The system should update T2-309-ACK field with current machine date (positions 3-8), current century (positions 1-2), and current time first 4 digits (positions 9-12)
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when t2 table has been updated with test acknowledgment timestamp.
Trigger Criteria:
Context: The T2 table has been updated with test acknowledgment timestamp
Applied to: Save Updated T2 Table
Action: The timestamp update is complete
Logic Flow:
IF The T2 table has been updated with test acknowledgment timestamp
AND The timestamp update is complete
THEN:
• The system should save the updated T2 table segment back to the database using REPL function
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo error message is received.
Trigger Criteria:
Context: A cargo error message is received
Applied to: Continue Normal Cargo Error Processing
Action: The reference number does not match test cargo patterns
Logic Flow:
IF A cargo error message is received
AND The reference number does not match test cargo patterns
THEN:
• The system should continue with normal cargo error processing workflow
R-GCX122A-cbl-00497 (+10)File: GCX122A.cblBusiness Rule: Send AEI Message with Recipients
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when aei message needs to be sent for train status notification.
Trigger Criteria:
Context: An AEI message needs to be sent for train status notification
Applied to: Initialize AEI Work Table
Action: The system begins the AEI message process
Logic Flow:
IF An AEI message needs to be sent for train status notification
AND The system begins the AEI message process
THEN:
• The AEI work table structure is initialized to prepare for email recipient lookup
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when train status notification needs to be sent and the aei work table is initialized. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: A train status notification needs to be sent and the AEI work table is initialized
Applied to: Call Database to Get Email Recipients
Action: The system calls the database with the port code from train position data
Logic Flow:
IF A train status notification needs to be sent and the AEI work table is initialized
AND The system calls the database with the port code from train position data
THEN:
• The system attempts to retrieve corresponding email recipients for that port
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when database call to retrieve email recipients returns successfully. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The database call to retrieve email recipients returns successfully
Applied to: Use Retrieved Email Recipients
Action: The return code indicates success
Logic Flow:
IF The database call to retrieve email recipients returns successfully
AND The return code indicates success
THEN:
• The system populates the recipient list with up to 10 email addresses from the database result and sets the default Merlin ID as sender
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when database call to retrieve email recipients fails or returns no results. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The database call to retrieve email recipients fails or returns no results
Applied to: Use Default Merlin ID Recipients
Action: The return code indicates failure or no recipients found
Logic Flow:
IF The database call to retrieve email recipients fails or returns no results
AND The return code indicates failure or no recipients found
THEN:
• The system sets the default Merlin ID as both sender and first recipient in the recipient list
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when email recipients have been determined and train status information is available.
Trigger Criteria:
Context: Email recipients have been determined and train status information is available
Applied to: Set Message Subject and Format
Action: The system prepares the AEI message content
Logic Flow:
IF Email recipients have been determined and train status information is available
AND The system prepares the AEI message content
THEN:
• The message subject is formatted as 'TRAIN: [train_id] STATUS: [current_status]' and message formatting parameters are set
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when aei message is formatted with subject, recipients, and content. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The AEI message is formatted with subject, recipients, and content
Applied to: Call Email Send Service
Action: The system calls the email send service
Logic Flow:
IF The AEI message is formatted with subject, recipients, and content
AND The system calls the email send service
THEN:
• The email service processes the send request and returns a status indicating success or failure
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when email send service is called with the aei message.
Trigger Criteria:
Context: The email send service is called with the AEI message
Applied to: Message Sent Successfully
Action: The email send service returns a successful status
Logic Flow:
IF The email send service is called with the AEI message
AND The email send service returns a successful status
THEN:
• The AEI message process completes successfully and no further action is required
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when primary email send operation fails.
Trigger Criteria:
Context: The primary email send operation fails
Applied to: Send to Backup Recipients OM01247 and AEI9999
Action: The email send service returns a failure status
Logic Flow:
IF The primary email send operation fails
AND The email send service returns a failure status
THEN:
• The system clears the recipient list and sets 'OM01247' as first recipient and 'AEI9999' as second recipient, then attempts to send the message again
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when backup email send service is called after primary send failure.
Trigger Criteria:
Context: The backup email send service is called after primary send failure
Applied to: Process Complete
Action: The backup email send service returns a successful status
Logic Flow:
IF The backup email send service is called after primary send failure
AND The backup email send service returns a successful status
THEN:
• The AEI message process completes successfully using the backup recipients
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when both primary and backup email send operations fail.
Trigger Criteria:
Context: Both primary and backup email send operations fail
Applied to: Log Send Failure Error
Action: The backup email send service also returns a failure status
Logic Flow:
IF Both primary and backup email send operations fail
AND The backup email send service also returns a failure status
THEN:
• The system logs the error message 'SEND TO FILE OF OM01247 FAILED' and calls the error handling routine
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when database call returns a db2 error condition. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: The database call returns a DB2 error condition
Applied to: Process Complete
Action: The return code indicates a DB2 error
Logic Flow:
IF The database call returns a DB2 error condition
AND The return code indicates a DB2 error
THEN:
• The system performs DB2 abend processing to handle the database error condition
Business Justification: Establishes the required business protocol to be followed when cargo arrival transaction needs to be processed.
Trigger Criteria:
Context: A cargo arrival transaction needs to be processed
Applied to: Initialize Arrival Message Structure
Action: The arrival processing begins
Logic Flow:
IF A cargo arrival transaction needs to be processed
AND The arrival processing begins
THEN:
• The arrival message structure is initialized to clear any previous data
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when arrival message structure has been initialized.
Trigger Criteria:
Context: An arrival message structure has been initialized
Applied to: Set Security Parameters
Action: Security parameters need to be set
Logic Flow:
IF An arrival message structure has been initialized
AND Security parameters need to be set
THEN:
• The security byte is set to high-value to indicate secure transmission
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo record exists with a valid cargo control number.
Trigger Criteria:
Context: A cargo record exists with a valid cargo control number
Applied to: Extract Cargo Control Number
Action: An arrival message is being prepared
Logic Flow:
IF A cargo record exists with a valid cargo control number
AND An arrival message is being prepared
THEN:
• The cargo control number is extracted and assigned to the message train or US CCN field
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when arrival message is being prepared for cargo.
Trigger Criteria:
Context: An arrival message is being prepared for cargo
Applied to: Set Message Type to Cargo Arrival
Action: The message type needs to be specified
Logic Flow:
IF An arrival message is being prepared for cargo
AND The message type needs to be specified
THEN:
• The message type is set to cargo arrival indicator
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo arrival message is being prepared.
Trigger Criteria:
Context: A cargo arrival message is being prepared
Applied to: Set Action Code to 'CAA'
Action: The action code needs to be specified
Logic Flow:
IF A cargo arrival message is being prepared
AND The action code needs to be specified
THEN:
• The action code is set to 'CAA' to indicate cargo arrival action
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo record contains manifest transaction code information.
Trigger Criteria:
Context: A cargo record contains manifest transaction code information
Applied to: Extract Port Code from Manifest
Action: Port information is needed for the arrival message
Logic Flow:
IF A cargo record contains manifest transaction code information
AND Port information is needed for the arrival message
THEN:
• The port code is extracted from the manifest transaction code and assigned to the message port code field
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when all arrival message components have been populated.
Trigger Criteria:
Context: All arrival message components have been populated
Applied to: Prepare Message for Transmission
Action: The message needs to be prepared for transmission
Logic Flow:
IF All arrival message components have been populated
AND The message needs to be prepared for transmission
THEN:
• The complete message input is formatted and prepared for the messaging system
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when arrival message has been prepared for transmission.
Trigger Criteria:
Context: An arrival message has been prepared for transmission
Applied to: Send Message to Transaction Queue
Action: The message needs to be sent to the processing queue
Logic Flow:
IF An arrival message has been prepared for transmission
AND The message needs to be sent to the processing queue
THEN:
• The message is transmitted using the CIMS interface with CHNG function to the alternate PCB
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when arrival message has been sent to the transaction queue.
Trigger Criteria:
Context: An arrival message has been sent to the transaction queue
Applied to: Write Message to Log
Action: Logging is required for audit purposes
Logic Flow:
IF An arrival message has been sent to the transaction queue
AND Logging is required for audit purposes
THEN:
• The message is written to the system log using WRITMSGL with message code, content, length and module name
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when arrival message has been logged to the system.
Trigger Criteria:
Context: An arrival message has been logged to the system
Applied to: Complete Message Transmission
Action: The transmission process needs to be completed
Logic Flow:
IF An arrival message has been logged to the system
AND The transmission process needs to be completed
THEN:
• The message is purged from the processing queue using CIMS with PURG function to the alternate PCB
R-GCX122A-cbl-00518 (+9)File: GCX122A.cblBusiness Rule: Call Iron Highway Interface
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo record has been processed and may have a status change.
Trigger Criteria:
Context: A cargo record has been processed and may have a status change
Applied to: Check if Cargo Status Changed
Action: The system compares the saved status with the current cargo status
Logic Flow:
IF A cargo record has been processed and may have a status change
AND The system compares the saved status with the current cargo status
THEN:
• If the statuses are different, Iron Highway processing continues, otherwise it exits
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when cargo status has changed and iron highway processing is required.
Trigger Criteria:
Context: Cargo status has changed and Iron Highway processing is required
Applied to: Retrieve Iron Highway Configuration
Action: The system looks up Iron Highway configuration using the cargo origin station number as the key
Logic Flow:
IF Cargo status has changed and Iron Highway processing is required
AND The system looks up Iron Highway configuration using the cargo origin station number as the key
THEN:
• The system retrieves the IH table configuration data for further processing
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when lookup for iron highway configuration has been performed.
Trigger Criteria:
Context: A lookup for Iron Highway configuration has been performed
Applied to: IH Config Found?
Action: The system checks the return flag from the table lookup
Logic Flow:
IF A lookup for Iron Highway configuration has been performed
AND The system checks the return flag from the table lookup
THEN:
• If return flag equals '0', configuration is found and processing continues, otherwise Iron Highway processing exits
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when iron highway configuration is available and cargo processing is active.
Trigger Criteria:
Context: Iron Highway configuration is available and cargo processing is active
Applied to: Set Record Type for Cargo
Action: The system prepares transaction data for Iron Highway interface
Logic Flow:
IF Iron Highway configuration is available and cargo processing is active
AND The system prepares transaction data for Iron Highway interface
THEN:
• The record type is set to cargo type using the GCX105 cargo indicator
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when iron highway transaction data is being prepared.
Trigger Criteria:
Context: Iron Highway transaction data is being prepared
Applied to: Map Current Status to IH Format
Action: The system processes the current cargo status
Logic Flow:
IF Iron Highway transaction data is being prepared
AND The system processes the current cargo status
THEN:
• The current cargo status is mapped to the Iron Highway CCN status field
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when iron highway transaction data is being prepared.
Trigger Criteria:
Context: Iron Highway transaction data is being prepared
Applied to: Map Equipment ID to Car ID
Action: The system processes cargo equipment information
Logic Flow:
IF Iron Highway transaction data is being prepared
AND The system processes cargo equipment information
THEN:
• The cargo equipment ID for index is mapped to the Iron Highway car ID field
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when iron highway transaction data is being prepared.
Trigger Criteria:
Context: Iron Highway transaction data is being prepared
Applied to: Map Waybill Information
Action: The system processes cargo waybill information
Logic Flow:
IF Iron Highway transaction data is being prepared
AND The system processes cargo waybill information
THEN:
• The first 15 characters of the cargo waybill key for index are mapped to the Iron Highway waybill field
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when iron highway transaction data is being prepared.
Trigger Criteria:
Context: Iron Highway transaction data is being prepared
Applied to: Map Cargo Control Number
Action: The system processes cargo control information
Logic Flow:
IF Iron Highway transaction data is being prepared
AND The system processes cargo control information
THEN:
• The cargo CCN key is mapped to the Iron Highway CCN field
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when iron highway transaction data is being prepared with cargo reference numbers.
Trigger Criteria:
Context: Iron Highway transaction data is being prepared with cargo reference numbers
Applied to: Extract Shipment ID from Reference Numbers
Action: The system processes up to 10 reference number entries looking for CN qualifier
Logic Flow:
IF Iron Highway transaction data is being prepared with cargo reference numbers
AND The system processes up to 10 reference number entries looking for CN qualifier
THEN:
• When a reference number qualifier equals 'CN', the corresponding reference number is mapped to the Iron Highway shipment ID
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when all iron highway transaction data has been prepared and mapped. ⚠️ COBOL Technical Logic
Trigger Criteria:
Context: All Iron Highway transaction data has been prepared and mapped
Applied to: Call GCCIH Interface
Action: The system is ready to send the transaction to Iron Highway
Logic Flow:
IF All Iron Highway transaction data has been prepared and mapped
AND The system is ready to send the transaction to Iron Highway
THEN:
• The GCCIH program is called with the prepared Iron Highway transaction data
R-GCX122A-cbl-00528 (+8)File: GCX122A.cblBusiness Rule: Retrieve Email Recipients by Port Code
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when train record exists with port information.
Trigger Criteria:
Context: A train record exists with port information
Applied to: Extract Port Code from Train Record
Action: The system needs to send AEI notification messages
Logic Flow:
IF A train record exists with port information
AND The system needs to send AEI notification messages
THEN:
• The port code is extracted from the train record's port of release field and used as the lookup key
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when system needs to query for email recipients.
Trigger Criteria:
Context: The system needs to query for email recipients
Applied to: Set Record Type to CUSEMAIL
Action: Preparing to query the database for email distribution list
Logic Flow:
IF The system needs to query for email recipients
AND Preparing to query the database for email distribution list
THEN:
• The record type is set to 'CUSEMAIL' to identify the correct table/record type
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when port code is available and record type is set to cusemail.
Trigger Criteria:
Context: A port code is available and record type is set to CUSEMAIL
Applied to: Query Database for Email Recipients
Action: The system executes the database query
Logic Flow:
IF A port code is available and record type is set to CUSEMAIL
AND The system executes the database query
THEN:
• The system calls the database service to retrieve email recipients for the specified port code
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when database query for email recipients has been executed.
Trigger Criteria:
Context: A database query for email recipients has been executed
Applied to: Query Successful?
Action: The system checks the return code from the database query
Logic Flow:
IF A database query for email recipients has been executed
AND The system checks the return code from the database query
THEN:
• If return code equals success constant, query is considered successful, otherwise it failed
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when database query was successful and returned email recipients.
Trigger Criteria:
Context: The database query was successful and returned email recipients
Applied to: Loop Through Retrieved Email List
Action: The system processes the retrieved email list
Logic Flow:
IF The database query was successful and returned email recipients
AND The system processes the retrieved email list
THEN:
• The system loops through email recipients from position 1 to 10 or until a blank entry is found
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when system is processing email recipients from the database query result.
Trigger Criteria:
Context: The system is processing email recipients from the database query result
Applied to: More Email Recipients?
Action: The system checks the current email recipient entry
Logic Flow:
IF The system is processing email recipients from the database query result
AND The system checks the current email recipient entry
THEN:
• If the email user ID is not blank and the counter is 10 or less, there are more recipients to process
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when valid email recipient exists in the query results.
Trigger Criteria:
Context: A valid email recipient exists in the query results
Applied to: Add Email Recipient to Distribution List
Action: The system processes the email recipient
Logic Flow:
IF A valid email recipient exists in the query results
AND The system processes the email recipient
THEN:
• The email user ID is moved to the corresponding position in the message distribution list
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when database query for email recipients failed.
Trigger Criteria:
Context: The database query for email recipients failed
Applied to: Use Default Merlin ID as Recipient
Action: The system needs to set up email distribution
Logic Flow:
IF The database query for email recipients failed
AND The system needs to set up email distribution
THEN:
• The default Merlin ID is used as the first recipient in the distribution list
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when system is preparing to send aei notification messages.
Trigger Criteria:
Context: The system is preparing to send AEI notification messages
Applied to: Set Default Merlin ID as Sender
Action: Setting up the message sender information
Logic Flow:
IF The system is preparing to send AEI notification messages
AND Setting up the message sender information
THEN:
• The default Merlin ID is assigned as the from-user-code for the message
R-GCX122A-cbl-00537 (+3)File: GCX122A.cblBusiness Rule: Update Test Train Acknowledgment Timestamp
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when test train message is being processed and the t2 table segment has been retrieved.
Trigger Criteria:
Context: A test train message is being processed and the T2 table segment has been retrieved
Applied to: Update Test Train Acknowledgment Timestamp - Record current system date, century, and time in T2-358-ACK field
Action: The system processes the test train acknowledgment
Logic Flow:
IF A test train message is being processed and the T2 table segment has been retrieved
AND The system processes the test train acknowledgment
THEN:
• The current system date (6 digits), century (2 digits), and time (4 digits) are recorded in the T2-358-ACK field with date in positions 3-8, century in positions 1-2, and time in positions 9-12
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when test cargo message is being processed and the t2 table segment has been retrieved.
Trigger Criteria:
Context: A test cargo message is being processed and the T2 table segment has been retrieved
Applied to: Update Test Train Acknowledgment Timestamp - Record current system date, century, and time in T2-358-ACK field
Action: The system processes the test cargo acknowledgment
Logic Flow:
IF A test cargo message is being processed and the T2 table segment has been retrieved
AND The system processes the test cargo acknowledgment
THEN:
• The current system date (6 digits), century (2 digits), and time (4 digits) are recorded in the T2-309-ACK field with date in positions 3-8, century in positions 1-2, and time in positions 9-12
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when test message (train or cargo) needs timestamp processing.
Trigger Criteria:
Context: A test message (train or cargo) needs timestamp processing
Applied to: Retrieve T2 Table Segment
Action: The system prepares to update acknowledgment timestamps
Logic Flow:
IF A test message (train or cargo) needs timestamp processing
AND The system prepares to update acknowledgment timestamps
THEN:
• The T2 table segment is retrieved using table ID 'T2' and empty sequence ID, andif retrieval fails an error message 'T2 CHECK TABLE ENTRY NOT FOUND' is generated
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when t2 table segment has been updated with new acknowledgment timestamps.
Trigger Criteria:
Context: The T2 table segment has been updated with new acknowledgment timestamps
Applied to: Save Updated T2 Table Segment
Action: The timestamp updates are complete
Logic Flow:
IF The T2 table segment has been updated with new acknowledgment timestamps
AND The timestamp updates are complete
THEN:
• The updated T2 table segment is saved back to the database using the REPL function
R-GCX122A-cbl-00541 (+5)File: GCX122A.cblBusiness Rule: Update Test Acknowledgment Timestamp
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when test acknowledgment processing request is initiated.
Trigger Criteria:
Context: A test acknowledgment processing request is initiated
Applied to: Retrieve T2 Test Table Entry
Action: The system attempts to retrieve the T2 test table entry with empty sequence ID
Logic Flow:
IF A test acknowledgment processing request is initiated
AND The system attempts to retrieve the T2 test table entry with empty sequence ID
THEN:
• The system should fetch the T2 table segment for timestamp update operations
Rule Belongs to : GCX122A.cbl
Business Justification: Establishes the required business protocol to be followed when system has attempted to retrieve the t2 test table entry.
Trigger Criteria:
Context: The system has attempted to retrieve the T2 test table entry
Applied to: Table Entry Found?
Action: The table retrieval operation completes
Logic Flow:
IF The system has attempted to retrieve the T2 test table entry
AND The table retrieval operation completes
THEN:
• If the return flag is not '0', the system should display an error message 'T2 CHECK TABLE ENTRY NOT FOUND' and terminate processing
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when valid t2 test table entry has been retrieved.
Trigger Criteria:
Context: A valid T2 test table entry has been retrieved
Applied to: Message Type?
Action: The system evaluates the transaction type from the OTI message
Logic Flow:
IF A valid T2 test table entry has been retrieved
AND The system evaluates the transaction type from the OTI message
THEN:
• IfOTI-02-TRAIN is true, process as train test; ifOTI-02-CARGO is true, process as cargo test
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when message type is identified as train test (oti-02-train is true) and t2 table entry is available.
Trigger Criteria:
Context: The message type is identified as train test (OTI-02-TRAIN is true) and T2 table entry is available
Applied to: Update T2-358-ACK Field for Train Test
Action: The system processes the train test acknowledgment
Logic Flow:
IF The message type is identified as train test (OTI-02-TRAIN is true) and T2 table entry is available
AND The system processes the train test acknowledgment
THEN:
• The system should move the machine century to positions 1-2, machine date to positions 3-8, and machine time (first 4 digits) to positions 9-12 of the T2-358-ACK field
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when message type is identified as cargo test (oti-02-cargo is true) and t2 table entry is available.
Trigger Criteria:
Context: The message type is identified as cargo test (OTI-02-CARGO is true) and T2 table entry is available
Applied to: Update T2-309-ACK Field for Cargo Test
Action: The system processes the cargo test acknowledgment
Logic Flow:
IF The message type is identified as cargo test (OTI-02-CARGO is true) and T2 table entry is available
AND The system processes the cargo test acknowledgment
THEN:
• The system should move the machine century to positions 1-2, machine date to positions 3-8, and machine time (first 4 digits) to positions 9-12 of the T2-309-ACK field
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when appropriate timestamp field (t2-358-ack or t2-309-ack) has been updated with current system date and time.
Trigger Criteria:
Context: The appropriate timestamp field (T2-358-ACK or T2-309-ACK) has been updated with current system date and time
Applied to: Save Updated T2 Table Entry
Action: The timestamp update is complete
Logic Flow:
IF The appropriate timestamp field (T2-358-ACK or T2-309-ACK) has been updated with current system date and time
AND The timestamp update is complete
THEN:
• The system should perform a REPL operation to save the updated T2 table segment back to the database
R-GCX122A-cbl-00547 (+6)File: GCX122A.cblBusiness Rule: Prepare Message for Transmission
Rule Belongs to : GCX122A.cbl
Business Justification: Defines the strict business conditions required to proceed when cargo arrival processing request is initiated.
Trigger Criteria:
Context: A cargo arrival processing request is initiated
Applied to: Initialize Message Structure
Action: The system begins preparing the arrival message
Logic Flow:
IF A cargo arrival processing request is initiated
AND The system begins preparing the arrival message
THEN:
• The message input structure is completely cleared of any previous data
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when arrival message is being prepared for transmission.
Trigger Criteria:
Context: An arrival message is being prepared for transmission
Applied to: Set Security Level to High
Action: The security level is being configured
Logic Flow:
IF An arrival message is being prepared for transmission
AND The security level is being configured
THEN:
• The security byte is set to high-value to ensure maximum protection
Rule Belongs to : GCX122A.cbl
Business Justification: Dictates the expected operational logic and validation steps when cargo record exists with a valid cargo control number.
Trigger Criteria:
Context: A cargo record exists with a valid cargo control number
Applied to: Extract Cargo Control Number
Action: An arrival message is being prepared
Logic Flow:
IF A cargo record exists with a valid cargo control number
AND An arrival message is being prepared
THEN:
• The cargo control number is extracted and assigned to the message identifier field
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when arrival message is being prepared for cargo.
Trigger Criteria:
Context: An arrival message is being prepared for cargo
Applied to: Set Message Type to Cargo
Action: The message type classification is being set
Logic Flow:
IF An arrival message is being prepared for cargo
AND The message type classification is being set
THEN:
• The message is marked as a cargo-type message
Rule Belongs to : GCX122A.cbl
Business Justification: Governs the functional prerequisites and system routing when cargo arrival message is being prepared.
Trigger Criteria:
Context: A cargo arrival message is being prepared
Applied to: Set Action Code to 'CAA' - Cargo Arrival
Action: The action code is being assigned
Logic Flow:
IF A cargo arrival message is being prepared
AND The action code is being assigned
THEN:
• The action code is set to 'CAA' to indicate cargo arrival
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo record contains manifest transaction information with a port code.
Trigger Criteria:
Context: A cargo record contains manifest transaction information with a port code
Applied to: Extract Port Code from Manifest
Action: An arrival message is being prepared
Logic Flow:
IF A cargo record contains manifest transaction information with a port code
AND An arrival message is being prepared
THEN:
• The port code from the manifest transaction is extracted and assigned to the message port code field
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when arrival message has been fully formatted with all required information.
Trigger Criteria:
Context: An arrival message has been fully formatted with all required information
Applied to: Prepare Message for Transmission
Action: The message is ready for transmission
Logic Flow:
IF An arrival message has been fully formatted with all required information
AND The message is ready for transmission
THEN:
• The message is sent through the messaging system and the transmission queue is purged
R-GCX122A-cbl-00554File: GCX122A.cblBusiness Rule: Extract Shipment ID from Reference Numbers
Rule Belongs to : GCX122A.cbl
Business Justification: Ensures correct system behavior and process compliance when cargo record exists with multiple n901/n902 reference number pairs.
Trigger Criteria:
Context: A cargo record exists with multiple N901/N902 reference number pairs
Applied to: Extract Shipment ID from Reference Numbers - Loop through N901/N902 reference number pairs to find CN qualifier and extract shipment ID
Action: The system processes the cargo record for shipment ID extraction
Logic Flow:
IF A cargo record exists with multiple N901/N902 reference number pairs
AND The system processes the cargo record for shipment ID extraction
THEN:
• The system loops through up to 10 reference number pairs, finds the pair where N901 qualifier equals 'CN', and extracts the corresponding N902 reference number as the shipment ID