Complete extracted index of all Electronic Data Interchange (EDI), S309, and segment parsing behaviors across the legacy architecture.
🎯 EDI Scope Detected: Extracted 565 specific EDI behaviors out of 1389 total legacy rules in US Train.
Module: CCISCOM 1 EDI Rules Found
R-CCISCOM-cbl-000099:CCCOM Initialization
Process Rules
Business View: Assuming cccom version mismatch detected requiring full initialization during the '9:CCCOM Initialization' routine, when first time iscom to cccom conversion is performed, the system executes logic to ensure that transfer cc-common-area from iscom to cccom directly without intermediate default value assignment.
Given
CCCOM version mismatch detected requiring full initialization
When
First time ISCOM to CCCOM conversion is performed
Then
Transfer CC-COMMON-AREA from ISCOM to CCCOM directly without intermediate default value assignment
Business View: Assuming error processing has been completed (either cerrprod or cerrtest was called, or dump-only mode bypassed processing) during the '7:Error Notification - Display Blocking Error Message' routine, when the program reaches the error notification stage, the system executes logic to ensure that the system displays blocking error message '# cims: blocking error.' to the system error output.
Given
Error processing has been completed (either CERRPROD or CERRTEST was called, or dump-only mode bypassed processing)
When
The program reaches the error notification stage
Then
The system displays blocking error message '# CIMS: BLOCKING ERROR.' to the system error output
R-CERR-cbl-00012Skip Error Handler Routing - Proceed Directly to Error Notification
Decision Rules
Business View: Assuming the common communication area has been initialized via dcccom program during the 'Skip Error Handler Routing - Proceed Directly to Error Notification' routine, when the dump-only indicator (ws-dump-only) is set to true, the system executes logic to ensure that the system skips the environment detection logic and does not invoke either cerrprod (production error handler) or cerrtest (test error handler), proceeding directly to program termination.
Given
The common communication area has been initialized via DCCCOM program
When
The dump-only indicator (WS-DUMP-ONLY) is set to True
Then
The system skips the environment detection logic and does not invoke either CERRPROD (production error handler) or CERRTEST (test error handler), proceeding directly to program termination
R-CERR-cbl-00034Display Main Message: CIMS BLOCKING ERROR
Process Rules
Business View: Assuming the error notification header has been displayed during the 'Display Main Message: CIMS BLOCKING ERROR' routine, when the main error message display is executed, the system executes logic to ensure that the system displays the message '# cims: blocking error.' to the system error output (syserr).
Given
The error notification header has been displayed
When
The main error message display is executed
Then
The system displays the message '# CIMS: BLOCKING ERROR.' to the system error output (SYSERR)
R-CERR-cbl-00035Display Footer Line: Hash Border
Process Rules
Business View: Assuming the main blocking error message has been displayed during the 'Display Footer Line: Hash Border' routine, when the error notification footer display is executed, the system executes logic to ensure that the system displays a hash border footer line '###########################################' to the system error output (syserr).
Given
The main blocking error message has been displayed
When
The error notification footer display is executed
Then
The system displays a hash border footer line '###########################################' to the system error output (SYSERR)
R-CERR-cbl-00036Error Notification Complete
Process Rules
Business View: Assuming a blocking error requires notification during the 'Error Notification Complete' routine, when the complete error notification sequence is executed, the system executes logic to ensure that the system displays the complete formatted error message consisting of header border, main error message 'cims: blocking error', and footer border, all directed to system error output (syserr) for immediate operator visibility.
Given
A blocking error requires notification
When
The complete error notification sequence is executed
Then
The system displays the complete formatted error message consisting of header border, main error message 'CIMS: BLOCKING ERROR', and footer border, all directed to system error output (SYSERR) for immediate operator visibility
Module: CIMS 28 EDI Rules Found
R-CIMS-cbl-000123:PCB Address Resolution
Process Rules
Business View: <EXCLUSION CRITERIA> If the address area is not null and the pcb address is valid and the communication area version matches and the segment level is not '98' or '99' or force reset is true, and address area validation occurs occurs during the '3:PCB Address Resolution' routine, then the system must guarantee that the first 8 bytes of the address area are cleared to spaces.
EXCLUDING
The address area is not null AND the PCB address is valid AND the communication area version matches AND the segment level is not '98' or '99' OR force reset is true
When
Address area validation occurs
Then
The first 8 bytes of the address area are cleared to spaces
R-CIMS-cbl-00013PCB Address Provided?
Validation Rules
Business View: Assuming the address area is null during the 'PCB Address Provided?' routine, when address area validation occurs, the system executes logic to ensure that the address area is set to the default csi address area, pcb name is set to zero, pcb number is set to zero, an error message 'zero pcb address error' is set in the communication area, and the error handler is invoked.
Given
The address area is null
When
Address area validation occurs
Then
The address area is set to the default CSI address area, PCB name is set to zero, PCB number is set to zero, an error message 'Zero PCB Address Error' is set in the communication area, and the error handler is invoked
R-CIMS-cbl-0001613:Error Handling for Missing PCB Address
Validation Rules
Business View: Assuming the pcb address is null after completing the table search during the '13:Error Handling for Missing PCB Address' routine, when pcb address validation occurs, the system executes logic to ensure that the pcb name and number are captured, an error message 'zero pcb address error' is set in the communication area, and the error handler is invoked.
Given
The PCB address is null after completing the table search
When
PCB address validation occurs
Then
The PCB name and number are captured, an error message 'Zero PCB Address Error' is set in the communication area, and the error handler is invoked
R-CIMS-cbl-000186:IMS Database Call Execution
Action Rules
Business View: Assuming the pcb address is valid and all parameters are prepared during the '6:IMS Database Call Execution' routine, when database call is executed, the system executes logic to ensure that the database interface is invoked with the function code, pcb copy, io area, and up to 6 segment search arguments (ssa1 through ssa6).
Given
The PCB address is valid and all parameters are prepared
When
Database call is executed
Then
The database interface is invoked with the function code, PCB copy, IO area, and up to 6 segment search arguments (SSA1 through SSA6)
R-CIMS-cbl-000239:PCB Status Information Update
Process Rules
Business View: Assuming a database call has been executed during the '9:PCB Status Information Update' routine, when status information update occurs, the system executes logic to ensure that the pcb copy is stored in the communication area's pcb copy field, and if the segment level is not '98' or '99', the feedback key length is stored in the communication area's length feedback key field.
Given
A database call has been executed
When
Status information update occurs
Then
The PCB copy is stored in the communication area's PCB copy field, and if the segment level is not '98' or '99', the feedback key length is stored in the communication area's length feedback key field
R-CIMS-cbl-0002812:Error Handling for Invalid Status
Validation Rules
Business View: <EXCLUSION CRITERIA> If the status code does not match any acceptable status code in the table, and status code validation completes occurs during the '12:Error Handling for Invalid Status' routine, then the system must guarantee that an error message is formatted as '[status code]: ims rc code not in acceptable list' and stored in the communication area's error message field, and the error handler is invoked.
EXCLUDING
The status code does not match any acceptable status code in the table
When
Status code validation completes
Then
An error message is formatted as '[Status Code]: IMS RC CODE NOT IN ACCEPTABLE LIST' and stored in the communication area's error message field, and the error handler is invoked
R-CIMS-cbl-000565 or More Arguments?
Decision Rules
Business View: Assuming an ims database operation is being prepared with io area already captured during the '5 or More Arguments?' routine, when the argument count is 5 or more, the system executes logic to ensure that the first segment search argument (ssa1) is captured from the fifth argument position and stored in the last ssa1 field of the communication area.
Given
An IMS database operation is being prepared with IO Area already captured
When
The argument count is 5 or more
Then
The first Segment Search Argument (SSA1) is captured from the fifth argument position and stored in the Last SSA1 field of the communication area
R-CIMS-cbl-000576 or More Arguments?
Decision Rules
Business View: Assuming an ims database operation is being prepared with ssa1 already captured during the '6 or More Arguments?' routine, when the argument count is 6 or more, the system executes logic to ensure that the second segment search argument (ssa2) is captured from the sixth argument position and stored in the last ssa2 field of the communication area.
Given
An IMS database operation is being prepared with SSA1 already captured
When
The argument count is 6 or more
Then
The second Segment Search Argument (SSA2) is captured from the sixth argument position and stored in the Last SSA2 field of the communication area
R-CIMS-cbl-000587 or More Arguments?
Decision Rules
Business View: Assuming an ims database operation is being prepared with ssa2 already captured during the '7 or More Arguments?' routine, when the argument count is 7 or more, the system executes logic to ensure that the third segment search argument (ssa3) is captured from the seventh argument position and stored in the last ssa3 field of the communication area.
Given
An IMS database operation is being prepared with SSA2 already captured
When
The argument count is 7 or more
Then
The third Segment Search Argument (SSA3) is captured from the seventh argument position and stored in the Last SSA3 field of the communication area
R-CIMS-cbl-000598 or More Arguments?
Decision Rules
Business View: Assuming an ims database operation is being prepared with ssa3 already captured during the '8 or More Arguments?' routine, when the argument count is 8 or more, the system executes logic to ensure that the fourth segment search argument (ssa4) is captured from the eighth argument position and stored in the last ssa4 field of the communication area.
Given
An IMS database operation is being prepared with SSA3 already captured
When
The argument count is 8 or more
Then
The fourth Segment Search Argument (SSA4) is captured from the eighth argument position and stored in the Last SSA4 field of the communication area
R-CIMS-cbl-000609 or More Arguments?
Decision Rules
Business View: Assuming an ims database operation is being prepared with ssa4 already captured during the '9 or More Arguments?' routine, when the argument count is 9 or more, the system executes logic to ensure that the fifth segment search argument (ssa5) is captured from the ninth argument position and stored in the last ssa5 field of the communication area.
Given
An IMS database operation is being prepared with SSA4 already captured
When
The argument count is 9 or more
Then
The fifth Segment Search Argument (SSA5) is captured from the ninth argument position and stored in the Last SSA5 field of the communication area
R-CIMS-cbl-0006110 or More Arguments?
Decision Rules
Business View: Assuming an ims database operation is being prepared with ssa5 already captured during the '10 or More Arguments?' routine, when the argument count is 10 or more, the system executes logic to ensure that the sixth segment search argument (ssa6) is captured from the tenth argument position and stored in the last ssa6 field of the communication area.
Given
An IMS database operation is being prepared with SSA5 already captured
When
The argument count is 10 or more
Then
The sixth Segment Search Argument (SSA6) is captured from the tenth argument position and stored in the Last SSA6 field of the communication area
Business View: Assuming the system has completed searching through the pcb table or no pcb name was provided during the 'Generate Missing PCB Error Message' routine, when the pcb address remains null after the search process, the system executes logic to ensure that the system generates an error message containing the pcb name and pcb number, stores it in the communication area error message field, and invokes the error handler program 'cerr'.
Given
The system has completed searching through the PCB table or no PCB name was provided
When
The PCB address remains NULL after the search process
Then
The system generates an error message containing the PCB name and PCB number, stores it in the communication area error message field, and invokes the error handler program 'CERR'
R-CIMS-cbl-00071Search Index <= 249?
Process Rules
Business View: Assuming the system is iterating through the pcb table during the 'Search Index <= 249?' routine, when a database name entry at position i contains spaces, the system executes logic to ensure that the search loop terminates immediately regardless of the current index value.
Given
The system is iterating through the PCB table
When
A database name entry at position I contains spaces
Then
The search loop terminates immediately regardless of the current index value
R-CIMS-cbl-00162Call CBLTDLI Interface
Action Rules
Business View: Assuming a valid pcb address has been resolved and set, a function code is specified, an io area is available for data exchange, and zero to six ssa parameters are provided for segment qualification during the 'Call CBLTDLI Interface' routine, when the system invokes the cbltdli interface with the function code, pcb reference, io area, and all provided ssa parameters (ssa1 through ssa6), the system executes logic to ensure that the ims database operation is executed and control returns with the operation result reflected in the pcb status code and any retrieved or updated data in the io area.
Given
A valid PCB address has been resolved and set, a function code is specified, an IO area is available for data exchange, and zero to six SSA parameters are provided for segment qualification
When
The system invokes the CBLTDLI interface with the function code, PCB reference, IO area, and all provided SSA parameters (SSA1 through SSA6)
Then
The IMS database operation is executed and control returns with the operation result reflected in the PCB status code and any retrieved or updated data in the IO area
R-CIMS-cbl-00115Copy Key Feedback Length to Common Area
Validation Rules
Business View: <EXCLUSION CRITERIA> If the pcb has been copied to the common area and contains a segment level indicator, and the segment level is not equal to '98' and the segment level is not equal to '99' occurs during the 'Copy Key Feedback Length to Common Area' routine, then the system must guarantee that the key feedback length from the pcb is copied to the common area's key length field for use in subsequent key-based operations.
EXCLUDING
The PCB has been copied to the common area and contains a segment level indicator
When
The segment level is not equal to '98' AND the segment level is not equal to '99'
Then
The key feedback length from the PCB is copied to the common area's key length field for use in subsequent key-based operations
R-CIMS-cbl-00116Copy Key Feedback Length to Common Area
Decision Rules
Business View: Assuming the pcb has been copied to the common area and contains a segment level indicator during the 'Copy Key Feedback Length to Common Area' routine, when the segment level is equal to '98' or the segment level is equal to '99', the system executes logic to ensure that the key feedback length is not copied to the common area and processing continues without storing key length information.
Given
The PCB has been copied to the common area and contains a segment level indicator
When
The segment level is equal to '98' OR the segment level is equal to '99'
Then
The key feedback length is not copied to the common area and processing continues without storing key length information
R-CIMS-cbl-00123Status Code is Invalid
Decision Rules
Business View: Assuming the system has completed checking all 12 acceptable status codes in cc-acc-status-tab of cccom and the counter i has exceeded 12 during the 'Status Code is Invalid' routine, when no match was found between cc-status-code of cccom and any entry in cc-acc-status-tab of cccom, the system executes logic to ensure that the system constructs an error message by concatenating cc-status-code of cccom with the text ': ims rc code not in acceptable list' and stores it in cc-error-message of cccom, then calls the error handler program 'cerr' using cccom and executes goback.
Given
The system has completed checking all 12 acceptable status codes in CC-ACC-STATUS-TAB of CCCOM and the counter I has exceeded 12
When
No match was found between CC-STATUS-CODE of CCCOM and any entry in CC-ACC-STATUS-TAB of CCCOM
Then
The system constructs an error message by concatenating CC-STATUS-CODE of CCCOM with the text ': IMS RC CODE NOT IN ACCEPTABLE LIST' and stores it in CC-ERROR-MESSAGE of CCCOM, then calls the error handler program 'CERR' using CCCOM and executes GOBACK
R-CIMS-cbl-00125Build Error Message with Status Code
Validation Rules
Business View: <EXCLUSION CRITERIA> If the ims status code cc-status-code of cccom is not in the acceptable status list, and the system needs to report the error condition occurs during the 'Build Error Message with Status Code' routine, then the system must guarantee that the system uses string operation to concatenate cc-status-code of cccom with the literal text ': ims rc code not in acceptable list' delimited by size and stores the result into cc-error-message of cccom.
EXCLUDING
The IMS status code CC-STATUS-CODE of CCCOM is not in the acceptable status list
When
The system needs to report the error condition
Then
The system uses STRING operation to concatenate CC-STATUS-CODE of CCCOM with the literal text ': IMS RC CODE NOT IN ACCEPTABLE LIST' delimited by SIZE and stores the result into CC-ERROR-MESSAGE of CCCOM
R-CIMS-cbl-00126Call Error Handler
Action Rules
Business View: Assuming an invalid ims status code has been detected and the error message has been constructed in cc-error-message of cccom during the 'Call Error Handler' routine, when the system needs to handle the error condition, the system executes logic to ensure that the system calls the error handler program 'cerr' using cccom as the parameter to process the error.
Given
An invalid IMS status code has been detected and the error message has been constructed in CC-ERROR-MESSAGE of CCCOM
When
The system needs to handle the error condition
Then
The system calls the error handler program 'CERR' using CCCOM as the parameter to process the error
R-CIMS-cbl-00169Status Code is Invalid
Validation Rules
Business View: Assuming an ims database operation has completed with a status code in cc-status-code of cccom, and the status code has been compared against all 12 entries in the acceptable status table cc-acc-status-tab of cccom without finding a match during the 'Status Code is Invalid' routine, when the counter i exceeds 12 indicating all acceptable status codes have been checked without a match, the system executes logic to ensure that the system constructs an error message by concatenating the status code with the text ': ims rc code not in acceptable list' and stores it in cc-error-message of cccom, then invokes the error handler program cerr with cccom as parameter, and returns control to the caller.
Given
An IMS database operation has completed with a status code in CC-STATUS-CODE OF CCCOM, and the status code has been compared against all 12 entries in the acceptable status table CC-ACC-STATUS-TAB OF CCCOM without finding a match
When
The counter I exceeds 12 indicating all acceptable status codes have been checked without a match
Then
The system constructs an error message by concatenating the status code with the text ': IMS RC CODE NOT IN ACCEPTABLE LIST' and stores it in CC-ERROR-MESSAGE OF CCCOM, then invokes the error handler program CERR with CCCOM as parameter, and returns control to the caller
R-CIMS-cbl-00129Build Error Message
Validation Rules
Business View: <EXCLUSION CRITERIA> If an ims database operation has completed and returned a status code in cc-status-code of cccom, and the status code is not found in the acceptable status table (cc-acc-status-tab) after checking all 12 entries occurs during the 'Build Error Message' routine, then the system must guarantee that the system builds an error message by concatenating the status code with the text ': ims rc code not in acceptable list' and stores the complete message in cc-error-message of cccom.
EXCLUDING
An IMS database operation has completed and returned a status code in CC-STATUS-CODE of CCCOM
When
The status code is not found in the acceptable status table (CC-ACC-STATUS-TAB) after checking all 12 entries
Then
The system builds an error message by concatenating the status code with the text ': IMS RC CODE NOT IN ACCEPTABLE LIST' and stores the complete message in CC-ERROR-MESSAGE of CCCOM
R-CIMS-cbl-00130Call Error Handler Program 'CERR'
Action Rules
Business View: Assuming an error message has been constructed in cc-error-message of cccom indicating an unacceptable ims status code during the 'Call Error Handler Program 'CERR'' routine, when the status code validation fails after checking all acceptable status codes, the system executes logic to ensure that the system calls the error handler program 'cerr' passing cccom as parameter to process the error condition.
Given
An error message has been constructed in CC-ERROR-MESSAGE of CCCOM indicating an unacceptable IMS status code
When
The status code validation fails after checking all acceptable status codes
Then
The system calls the error handler program 'CERR' passing CCCOM as parameter to process the error condition
R-CIMS-cbl-00133Move PCB Name to Error Message
Process Rules
Business View: Assuming a pcb address resolution attempt has failed and the pcb address is null during the 'Move PCB Name to Error Message' routine, when the system needs to report the error condition, the system executes logic to ensure that the pcb mnemonic name is moved to the error message pcb name field.
Given
A PCB address resolution attempt has failed and the PCB address is null
When
The system needs to report the error condition
Then
The PCB mnemonic name is moved to the error message PCB name field
R-CIMS-cbl-00134Move PCB Number to Error Message
Process Rules
Business View: Assuming a pcb address resolution has failed and the pcb name has been captured during the 'Move PCB Number to Error Message' routine, when the system continues building the error message, the system executes logic to ensure that the pcb number is moved to the error message pcb number field.
Given
A PCB address resolution has failed and the PCB name has been captured
When
The system continues building the error message
Then
The PCB number is moved to the error message PCB number field
Business View: Assuming the pcb name and pcb number have been captured for error reporting during the 'Construct Error Message: 'ZERO PCB ADDR ERROR MESSAGE'' routine, when the system needs to format the complete error message, the system executes logic to ensure that the standardized 'zero-pcb-addr-error-message' is constructed containing the pcb name and number.
Given
The PCB name and PCB number have been captured for error reporting
When
The system needs to format the complete error message
Then
The standardized 'ZERO-PCB-ADDR-ERROR-MESSAGE' is constructed containing the PCB name and number
R-CIMS-cbl-00136Move Error Message to Common Area Error Field
Process Rules
Business View: Assuming a complete error message has been constructed for the zero pcb address condition during the 'Move Error Message to Common Area Error Field' routine, when the system prepares to invoke error handling, the system executes logic to ensure that the error message is moved to the cc-error-message field of the cccom common area.
Given
A complete error message has been constructed for the zero PCB address condition
When
The system prepares to invoke error handling
Then
The error message is moved to the CC-ERROR-MESSAGE field of the CCCOM common area
R-CIMS-cbl-00137Call Error Handler Program 'CERR' with Common Area
Action Rules
Business View: Assuming the pcb address is null after resolution attempts and the error message has been stored in the common area during the 'Call Error Handler Program 'CERR' with Common Area' routine, when the system needs to handle the unrecoverable error condition, the system executes logic to ensure that the error handler program 'cerr' is called with the cccom common area containing the error details.
Given
The PCB address is null after resolution attempts and the error message has been stored in the common area
When
The system needs to handle the unrecoverable error condition
Then
The error handler program 'CERR' is called with the CCCOM common area containing the error details
Business View: Assuming the message coordination program has started execution during the '1: Message Writing Initialization' routine, when the system begins message processing workflow, the system executes logic to ensure that the system invokes the writmsg module to initialize message writing operations.
Given
The message coordination program has started execution
When
The system begins message processing workflow
Then
The system invokes the WRITMSG module to initialize message writing operations
R-WRITMSGL-cbl-000022: Extended Message Writing
Action Rules
Business View: Assuming the basic message writing initialization has completed successfully and six message parameters (p1, p2, p3, p4, p5, p6) are available during the '2: Extended Message Writing' routine, when the system proceeds to extended message processing, the system executes logic to ensure that the system invokes the writmsgx module with all six parameters (p1, p2, p3, p4, p5, p6) to perform extended message writing operations.
Given
The basic message writing initialization has completed successfully AND six message parameters (P1, P2, P3, P4, P5, P6) are available
When
The system proceeds to extended message processing
Then
The system invokes the WRITMSGX module with all six parameters (P1, P2, P3, P4, P5, P6) to perform extended message writing operations
R-WRITMSGL-cbl-00003End Program
Process Rules
Business View: Assuming both message writing operations (basic and extended) have completed execution during the 'End Program' routine, when all message processing steps are finished, the system executes logic to ensure that the system terminates the program and returns control to the calling program.
Given
Both message writing operations (basic and extended) have completed execution
When
All message processing steps are finished
Then
The system terminates the program and returns control to the calling program
R-WRITMSGL-cbl-00004Call WRITMSG Program
Action Rules
Business View: Assuming the message writing coordinator program has started execution during the 'Call WRITMSG Program' routine, when the system begins the message processing workflow, the system executes logic to ensure that the writmsg program is called to initialize message writing functionality without any parameters.
Given
The message writing coordinator program has started execution
When
The system begins the message processing workflow
Then
The WRITMSG program is called to initialize message writing functionality without any parameters
Business View: Assuming the writmsg program has completed initialization and six message parameters (p1, p2, p3, p4, p5, p6) are available during the 'Initialize Message Writing Functionality' routine, when the system proceeds to extended message processing, the system executes logic to ensure that the writmsgx program is called with all six parameters (p1, p2, p3, p4, p5, p6) to process the extended message operation.
Given
The WRITMSG program has completed initialization AND six message parameters (P1, P2, P3, P4, P5, P6) are available
When
The system proceeds to extended message processing
Then
The WRITMSGX program is called with all six parameters (P1, P2, P3, P4, P5, P6) to process the extended message operation
Business View: Assuming the writmsg program has completed initialization and the writmsgx program has completed extended message processing during the 'End: Message Writing Initialization' routine, when all message writing operations are finished, the system executes logic to ensure that the system returns control to the calling program.
Given
The WRITMSG program has completed initialization AND the WRITMSGX program has completed extended message processing
When
All message writing operations are finished
Then
The system returns control to the calling program
R-WRITMSGL-cbl-00007Call WRITMSGX Program with 6 Parameters
Action Rules
Business View: Assuming the basic message writing operation has completed successfully and six business parameters (p1, p2, p3, p4, p5, p6) are available during the 'Call WRITMSGX Program with 6 Parameters' routine, when the extended message writing process is initiated, the system executes logic to ensure that the system calls the writmsgx program with all six parameters (p1, p2, p3, p4, p5, p6) to generate the extended message output.
Given
The basic message writing operation has completed successfully and six business parameters (P1, P2, P3, P4, P5, P6) are available
When
The extended message writing process is initiated
Then
The system calls the WRITMSGX program with all six parameters (P1, P2, P3, P4, P5, P6) to generate the extended message output
Module: GCCE358 90 EDI Rules Found
R-GCCE358-cbl-000011:Validate Processing Mode
Validation Rules
Business View: Assuming edi 358 processing is initiated during the '1:Validate Processing Mode' routine, when the processing mode is checked, the system executes logic to ensure that processing continues only if mode is foreground or background, otherwise sets wrong mode indicator.
Given
EDI 358 processing is initiated
When
the processing mode is checked
Then
processing continues only if mode is FOREGROUND or BACKGROUND, otherwise sets wrong mode indicator
R-GCCE358-cbl-000022:Generate Transmission Number
Computation Rules
Business View: Assuming a valid processing mode is confirmed during the '2:Generate Transmission Number' routine, when generating transmission number, the system executes logic to ensure that use prefix 106 for foreground mode or prefix 110 for background mode, combined with machine time.
Given
a valid processing mode is confirmed
When
generating transmission number
Then
use prefix 106 for FOREGROUND mode or prefix 110 for BACKGROUND mode, combined with machine time
R-GCCE358-cbl-000033:Insert EDI Root Segment
Validation Rules
Business View: Assuming a transmission number is generated during the '3:Insert EDI Root Segment' routine, when attempting to insert edi root segment, the system executes logic to ensure that if transmission number already exists, increment by 1 and retry until unique number is found.
Given
a transmission number is generated
When
attempting to insert EDI root segment
Then
if transmission number already exists, increment by 1 and retry until unique number is found
R-GCCE358-cbl-000055:Process M10 Manifest Header
Definitional Rules
Business View: Assuming bill of lading count is calculated during the '5:Process M10 Manifest Header' routine, when creating m10 manifest header, the system executes logic to ensure that set scac to 'cprs', transport type to 'r', country to 'ca', vessel name to customer train id, voyage number to train creation date, quantity to bol count, manifest type to 's', condition response to 'y', record type to 'train', and record number to customer train id.
Given
bill of lading count is calculated
When
creating M10 manifest header
Then
set SCAC to 'CPRS', transport type to 'R', country to 'CA', vessel name to customer train ID, voyage number to train creation date, quantity to BOL count, manifest type to 'S', condition response to 'Y', record type to 'TRAIN', and record number to customer train ID
R-GCCE358-cbl-0001210:Create VID Equipment Segment
Process Rules
Business View: Assuming equipment information is processed and validated during the '10:Create VID Equipment Segment' routine, when creating vid equipment segment, the system executes logic to ensure that populate vid segment with equipment type, initial, processed equipment number, and determined load status.
Given
equipment information is processed and validated
When
creating VID equipment segment
Then
populate VID segment with equipment type, initial, processed equipment number, and determined load status
R-GCCE358-cbl-0001411:Process Bill of Lading Records
Process Rules
Business View: Assuming equipment has bill of lading information during the '11:Process Bill of Lading Records' routine, when processing bill of lading records, the system executes logic to ensure that extract scac and bol/waybill information from equipment data for mbl segment creation.
Given
equipment has bill of lading information
When
processing bill of lading records
Then
extract SCAC and BOL/Waybill information from equipment data for MBL segment creation
R-GCCE358-cbl-0001714:Create MBL Bill Segment
Process Rules
Business View: Assuming bill of lading information and automated carrier status is determined during the '14:Create MBL Bill Segment' routine, when creating mbl bill segment, the system executes logic to ensure that populate mbl segment with scac, bol/waybill number, and determined response code.
Given
bill of lading information and automated carrier status is determined
When
creating MBL bill segment
Then
populate MBL segment with SCAC, BOL/Waybill number, and determined response code
R-GCCE358-cbl-0001815:Start EDI Send Function
Action Rules
Business View: Assuming all edi segments are created successfully during the '15:Start EDI Send Function' routine, when starting edi send function, the system executes logic to ensure that invoke edi send function with transmission number and high-values security setting.
Given
all EDI segments are created successfully
When
starting EDI send function
Then
invoke EDI send function with transmission number and high-values security setting
R-GCCE358-cbl-0001916:Start Log Update Function
Action Rules
Business View: Assuming edi processing is completed during the '16:Start Log Update Function' routine, when starting log update function, the system executes logic to ensure that if foreground mode use foreground action code and transaction name, if background mode use background action code and transaction name, include user id, current date and time.
Given
EDI processing is completed
When
starting log update function
Then
if FOREGROUND mode use foreground action code and transaction name, if BACKGROUND mode use background action code and transaction name, include user ID, current date and time
R-GCCE358-cbl-00023Check Processing Mode
Decision Rules
Business View: Assuming a train equipment processing request is initiated during the 'Check Processing Mode' routine, when the system checks the processing mode indicator, the system executes logic to ensure that if the mode is foreground, set transmission prefix to 106, otherwise if the mode is background, set transmission prefix to 110.
Given
A train equipment processing request is initiated
When
The system checks the processing mode indicator
Then
If the mode is foreground, set transmission prefix to 106, otherwise if the mode is background, set transmission prefix to 110
R-GCCE358-cbl-00024Get Current Machine Time
Computation Rules
Business View: Assuming the transmission prefix has been determined based on processing mode during the 'Get Current Machine Time' routine, when the system needs to create a transmission number, the system executes logic to ensure that retrieve the current machine time and use it as the base transmission number.
Given
The transmission prefix has been determined based on processing mode
When
The system needs to create a transmission number
Then
Retrieve the current machine time and use it as the base transmission number
R-GCCE358-cbl-00025Combine Prefix + Machine Time to Create Transmission Number
Computation Rules
Business View: Assuming a transmission prefix (106 or 110) and machine time are available during the 'Combine Prefix + Machine Time to Create Transmission Number' routine, when the system creates the transmission number, the system executes logic to ensure that combine the prefix with the machine time to form the complete transmission number.
Given
A transmission prefix (106 or 110) and machine time are available
When
The system creates the transmission number
Then
Combine the prefix with the machine time to form the complete transmission number
R-GCCE358-cbl-00026Transmission Number Generated
Validation Rules
Business View: Assuming a transmission number has been generated during the 'Transmission Number Generated' routine, when the system attempts to create a transmission record, the system executes logic to ensure that if the transmission number already exists, increment the number by 1 and retry until a unique number is found.
Given
A transmission number has been generated
When
The system attempts to create a transmission record
Then
If the transmission number already exists, increment the number by 1 and retry until a unique number is found
Business View: Assuming an edi transmission needs to be created during the 'Initialize Root Segment Structure' routine, when the root segment creation process begins, the system executes logic to ensure that the a9rt transmission segment structure is initialized to empty values.
Given
An EDI transmission needs to be created
When
The root segment creation process begins
Then
The A9RT transmission segment structure is initialized to empty values
R-GCCE358-cbl-00028Set Transmission Number from Generated Value
Definitional Rules
Business View: Assuming a transmission number has been generated based on machine time during the 'Set Transmission Number from Generated Value' routine, when creating the edi root segment, the system executes logic to ensure that the transmission number is assigned to the a9rt transmission number field.
Given
A transmission number has been generated based on machine time
When
Creating the EDI root segment
Then
The transmission number is assigned to the A9RT transmission number field
R-GCCE358-cbl-00029Set Transaction Set to '358'
Definitional Rules
Business View: Assuming an edi root segment is being created for train equipment data during the 'Set Transaction Set to '358'' routine, when setting the transaction set identifier, the system executes logic to ensure that the transaction set code is set to '358'.
Given
An EDI root segment is being created for train equipment data
When
Setting the transaction set identifier
Then
The transaction set code is set to '358'
R-GCCE358-cbl-00030Attempt to Insert Root Segment into EDI Database
Action Rules
Business View: Assuming a complete edi root segment with transmission number and transaction set during the 'Attempt to Insert Root Segment into EDI Database' routine, when inserting the segment into the edi database, the system executes logic to ensure that the system attempts to insert the a9rt segment using database insert operation.
Given
A complete EDI root segment with transmission number and transaction set
When
Inserting the segment into the EDI database
Then
The system attempts to insert the A9RT segment using database insert operation
R-GCCE358-cbl-00031Insert Successful?
Validation Rules
Business View: Assuming an edi root segment insertion has been attempted during the 'Insert Successful?' routine, when the database insert operation completes, the system executes logic to ensure that if the status code is not blank, the insertion failed due to duplicate transmission number.
Given
An EDI root segment insertion has been attempted
When
The database insert operation completes
Then
If the status code is not blank, the insertion failed due to duplicate transmission number
R-GCCE358-cbl-00032Increment Transmission Number by 1
Computation Rules
Business View: Assuming an edi root segment insertion failed due to duplicate transmission number during the 'Increment Transmission Number by 1' routine, when resolving the transmission number collision, the system executes logic to ensure that the transmission number is incremented by 1 and assigned to the root segment.
Given
An EDI root segment insertion failed due to duplicate transmission number
When
Resolving the transmission number collision
Then
The transmission number is incremented by 1 and assigned to the root segment
R-GCCE358-cbl-00033Root Segment Successfully Created
Process Rules
Business View: Assuming a transmission number collision has been detected and resolved by incrementing during the 'Root Segment Successfully Created' routine, when attempting to insert the root segment again, the system executes logic to ensure that the system continues the insertion retry loop until the status code is blank indicating success.
Given
A transmission number collision has been detected and resolved by incrementing
When
Attempting to insert the root segment again
Then
The system continues the insertion retry loop until the status code is blank indicating success
R-GCCE358-cbl-00131Initialize Root Segment with Transmission Number and Transaction Set '358'
Definitional Rules
Business View: Assuming a transmission needs to be created for edi processing during the 'Initialize Root Segment with Transmission Number and Transaction Set '358'' routine, when the system initializes the root segment, the system executes logic to ensure that the transmission number is set from machine time, transaction set is set to '358', and the root segment is prepared for insertion.
Given
A transmission needs to be created for EDI processing
When
The system initializes the root segment
Then
The transmission number is set from machine time, transaction set is set to '358', and the root segment is prepared for insertion
R-GCCE358-cbl-00132Attempt to Insert Root Segment into EDI Database
Action Rules
Business View: Assuming a root segment has been initialized with transmission number and transaction set during the 'Attempt to Insert Root Segment into EDI Database' routine, when the system attempts to insert the root segment into the edi database, the system executes logic to ensure that the insertion is attempted and the result status is captured for evaluation.
Given
A root segment has been initialized with transmission number and transaction set
When
The system attempts to insert the root segment into the EDI database
Then
The insertion is attempted and the result status is captured for evaluation
R-GCCE358-cbl-00133Insert Successful?
Decision Rules
Business View: Assuming a root segment insertion has been attempted during the 'Insert Successful?' routine, when the insertion fails due to duplicate transmission number, the system executes logic to ensure that the system detects the failure and initiates the duplicate resolution process.
Given
A root segment insertion has been attempted
When
The insertion fails due to duplicate transmission number
Then
The system detects the failure and initiates the duplicate resolution process
R-GCCE358-cbl-00134Increment Transmission Number by 1
Process Rules
Business View: Assuming a duplicate transmission number conflict has been detected during the 'Increment Transmission Number by 1' routine, when the system needs to resolve the conflict, the system executes logic to ensure that the transmission number is incremented by 1 and the insertion process is retried.
Given
A duplicate transmission number conflict has been detected
When
The system needs to resolve the conflict
Then
The transmission number is incremented by 1 and the insertion process is retried
Business View: Assuming a root segment insertion has been attempted during the 'Root Segment Successfully Inserted' routine, when the insertion is successful without conflicts, the system executes logic to ensure that the root segment is successfully stored in the edi database and the process continues.
Given
A root segment insertion has been attempted
When
The insertion is successful without conflicts
Then
The root segment is successfully stored in the EDI database and the process continues
Business View: Assuming the system needs to create a new m10 manifest segment during the 'Initialize M10 Segment Structure' routine, when m10 manifest processing begins, the system executes logic to ensure that the m10 segment structure is initialized to clear any previous data.
Given
The system needs to create a new M10 manifest segment
When
M10 manifest processing begins
Then
The M10 segment structure is initialized to clear any previous data
R-GCCE358-cbl-00041Set M10 Identifier
Definitional Rules
Business View: Assuming an m10 manifest segment is being created during the 'Set M10 Identifier' routine, when the segment identifier needs to be set, the system executes logic to ensure that the identifier is set to 'm10'.
Given
An M10 manifest segment is being created
When
The segment identifier needs to be set
Then
The identifier is set to 'M10'
R-GCCE358-cbl-00042Set SCAC Code to 'CPRS'
Definitional Rules
Business View: Assuming an m10 manifest segment is being created for rail transport during the 'Set SCAC Code to 'CPRS'' routine, when the scac code needs to be assigned, the system executes logic to ensure that the scac code is set to 'cprs' for canadian pacific railway.
Given
An M10 manifest segment is being created for rail transport
When
The SCAC code needs to be assigned
Then
The SCAC code is set to 'CPRS' for Canadian Pacific Railway
R-GCCE358-cbl-00043Set Transport Type Code to 'R' for Rail
Definitional Rules
Business View: Assuming an m10 manifest segment is being created during the 'Set Transport Type Code to 'R' for Rail' routine, when the transport type code needs to be assigned, the system executes logic to ensure that the transport type code is set to 'r' to indicate rail transport.
Given
An M10 manifest segment is being created
When
The transport type code needs to be assigned
Then
The transport type code is set to 'R' to indicate rail transport
R-GCCE358-cbl-00044Set Country Code to 'CA' for Canada
Definitional Rules
Business View: Assuming an m10 manifest segment is being created for canadian rail operations during the 'Set Country Code to 'CA' for Canada' routine, when the country code needs to be assigned, the system executes logic to ensure that the country code is set to 'ca' for canada.
Given
An M10 manifest segment is being created for Canadian rail operations
When
The country code needs to be assigned
Then
The country code is set to 'CA' for Canada
R-GCCE358-cbl-00045Set Vessel Name from Train ID
Definitional Rules
Business View: Assuming an m10 manifest segment is being created and customer train id is available during the 'Set Vessel Name from Train ID' routine, when the vessel name needs to be assigned, the system executes logic to ensure that the vessel name is set to the customer train id from the train list.
Given
An M10 manifest segment is being created and customer train ID is available
When
The vessel name needs to be assigned
Then
The vessel name is set to the customer train ID from the train list
R-GCCE358-cbl-00046Set Voyage Number from Train Creation Date
Definitional Rules
Business View: Assuming an m10 manifest segment is being created and train creation date is available during the 'Set Voyage Number from Train Creation Date' routine, when the voyage number needs to be assigned, the system executes logic to ensure that the voyage number is set to the train creation date from the train list.
Given
An M10 manifest segment is being created and train creation date is available
When
The voyage number needs to be assigned
Then
The voyage number is set to the train creation date from the train list
R-GCCE358-cbl-00047Set Quantity from Bill of Lading Count
Computation Rules
Business View: Assuming an m10 manifest segment is being created and bill of lading count is calculated during the 'Set Quantity from Bill of Lading Count' routine, when the quantity needs to be assigned, the system executes logic to ensure that the quantity is set to the total count of bills of lading.
Given
An M10 manifest segment is being created and bill of lading count is calculated
When
The quantity needs to be assigned
Then
The quantity is set to the total count of bills of lading
R-GCCE358-cbl-00048Set Manifest Type Code to 'S' for Standard
Definitional Rules
Business View: Assuming an m10 manifest segment is being created during the 'Set Manifest Type Code to 'S' for Standard' routine, when the manifest type code needs to be assigned, the system executes logic to ensure that the manifest type code is set to 's' for standard manifest.
Given
An M10 manifest segment is being created
When
The manifest type code needs to be assigned
Then
The manifest type code is set to 'S' for standard manifest
R-GCCE358-cbl-00049Set Conditional Response Code to 'Y'
Definitional Rules
Business View: Assuming an m10 manifest segment is being created during the 'Set Conditional Response Code to 'Y'' routine, when the conditional response code needs to be assigned, the system executes logic to ensure that the conditional response code is set to 'y' to indicate response is required.
Given
An M10 manifest segment is being created
When
The conditional response code needs to be assigned
Then
The conditional response code is set to 'Y' to indicate response is required
R-GCCE358-cbl-00050Set Record Type to 'TRAIN'
Definitional Rules
Business View: Assuming an m10 manifest segment is being created for train operations during the 'Set Record Type to 'TRAIN'' routine, when the record type needs to be assigned, the system executes logic to ensure that the record type is set to 'train'.
Given
An M10 manifest segment is being created for train operations
When
The record type needs to be assigned
Then
The record type is set to 'TRAIN'
R-GCCE358-cbl-00051Set Record Number from Train ID
Definitional Rules
Business View: Assuming an m10 manifest segment is being created and customer train id is available during the 'Set Record Number from Train ID' routine, when the record number needs to be assigned, the system executes logic to ensure that the record number is set to the customer train id from the train list.
Given
An M10 manifest segment is being created and customer train ID is available
When
The record number needs to be assigned
Then
The record number is set to the customer train ID from the train list
R-GCCE358-cbl-00052Insert M10 Segment into EDI Database
Action Rules
Business View: Assuming an m10 manifest segment is fully populated with all required data during the 'Insert M10 Segment into EDI Database' routine, when the segment needs to be stored for edi transmission, the system executes logic to ensure that the m10 segment is inserted into the edi database with proper sequence numbering.
Given
An M10 manifest segment is fully populated with all required data
When
The segment needs to be stored for EDI transmission
Then
The M10 segment is inserted into the EDI database with proper sequence numbering
R-GCCE358-cbl-00141Apply Count to M10 Manifest Quantity
Definitional Rules
Business View: Assuming the bill of lading count has been calculated from all equipment records during the 'Apply Count to M10 Manifest Quantity' routine, when the system creates the m10 manifest record, the system executes logic to ensure that the m10 quantity field is set to the calculated bill of lading count.
Given
The bill of lading count has been calculated from all equipment records
When
The system creates the M10 manifest record
Then
The M10 quantity field is set to the calculated bill of lading count
Business View: Assuming the system is processing port information for edi transmission during the 'Initialize P4 Segment Structure' routine, when p4 segment processing begins, the system executes logic to ensure that the p4 segment structure is initialized and the identifier is set to 'p4'.
Given
The system is processing port information for EDI transmission
When
P4 segment processing begins
Then
The P4 segment structure is initialized and the identifier is set to 'P4'
R-GCCE358-cbl-00054Set Departure Location ID from Train Data
Definitional Rules
Business View: Assuming train data contains origin service center information during the 'Set Departure Location ID from Train Data' routine, when p4 segment is being populated with location details, the system executes logic to ensure that the departure location id is set from the train's origin service center.
Given
Train data contains origin service center information
When
P4 segment is being populated with location details
Then
The departure location ID is set from the train's origin service center
R-GCCE358-cbl-00055Extract Estimated Departure Date
Process Rules
Business View: Assuming train data contains estimated departure date information during the 'Extract Estimated Departure Date' routine, when p4 segment requires departure date information, the system executes logic to ensure that the estimated departure date is extracted and moved to temporary date field for processing.
Given
Train data contains estimated departure date information
When
P4 segment requires departure date information
Then
The estimated departure date is extracted and moved to temporary date field for processing
R-GCCE358-cbl-00058Set Quantity from Bill of Lading Count
Definitional Rules
Business View: Assuming bill of lading count has been calculated from equipment processing during the 'Set Quantity from Bill of Lading Count' routine, when p4 segment quantity field needs to be populated, the system executes logic to ensure that the quantity is set to the bill of lading count value.
Given
Bill of lading count has been calculated from equipment processing
When
P4 segment quantity field needs to be populated
Then
The quantity is set to the bill of lading count value
R-GCCE358-cbl-00059Set Estimated Time of Arrival
Definitional Rules
Business View: Assuming train data contains estimated time of arrival information during the 'Set Estimated Time of Arrival' routine, when p4 segment time field needs to be populated, the system executes logic to ensure that the time field is set from the train's estimated time of arrival.
Given
Train data contains estimated time of arrival information
When
P4 segment time field needs to be populated
Then
The time field is set from the train's estimated time of arrival
R-GCCE358-cbl-00060Set FIRMS Code from Train Data
Definitional Rules
Business View: Assuming train data contains firms code information during the 'Set FIRMS Code from Train Data' routine, when p4 segment id code field needs to be populated, the system executes logic to ensure that the id code field is set from the train's firms code.
Given
Train data contains FIRMS code information
When
P4 segment ID code field needs to be populated
Then
The ID code field is set from the train's FIRMS code
R-GCCE358-cbl-00061Insert P4 Segment into EDI Database
Action Rules
Business View: Assuming p4 segment has been fully populated with all required port information during the 'Insert P4 Segment into EDI Database' routine, when p4 segment is ready for edi transmission, the system executes logic to ensure that the p4 segment is inserted into the edi transmission database with proper sequence numbering.
Given
P4 segment has been fully populated with all required port information
When
P4 segment is ready for EDI transmission
Then
The P4 segment is inserted into the EDI transmission database with proper sequence numbering
R-GCCE358-cbl-00063Equipment ID Different from Last Processed?
Decision Rules
Business View: Assuming an equipment item is being processed and there is a record of the last processed equipment id during the 'Equipment ID Different from Last Processed?' routine, when the system compares the current equipment id with the last processed equipment id, the system executes logic to ensure that if the equipment ids are different, the system should proceed to create a new vid segment, otherwise skip vid creation for this equipment.
Given
An equipment item is being processed and there is a record of the last processed equipment ID
When
The system compares the current equipment ID with the last processed equipment ID
Then
If the equipment IDs are different, the system should proceed to create a new VID segment, otherwise skip VID creation for this equipment
R-GCCE358-cbl-00065Set Equipment Description Code
Definitional Rules
Business View: Assuming a vid segment is being created for an equipment item during the 'Set Equipment Description Code' routine, when the equipment description code needs to be populated, the system executes logic to ensure that the system should copy the equipment type from the train list equipment data to the vid equipment description code field.
Given
A VID segment is being created for an equipment item
When
The equipment description code needs to be populated
Then
The system should copy the equipment type from the train list equipment data to the VID equipment description code field
R-GCCE358-cbl-00066Set Equipment Initial
Definitional Rules
Business View: Assuming a vid segment is being created for an equipment item during the 'Set Equipment Initial' routine, when the equipment initial needs to be populated, the system executes logic to ensure that the system should copy the equipment initial from the train list equipment data to the vid equipment initial field.
Given
A VID segment is being created for an equipment item
When
The equipment initial needs to be populated
Then
The system should copy the equipment initial from the train list equipment data to the VID equipment initial field
R-GCCE358-cbl-00067Is Equipment CP or Has No Car Number?
Decision Rules
Business View: Assuming an equipment item has a us-ccn-key and cargo data has been retrieved during the 'Is Equipment CP or Has No Car Number?' routine, when the system needs to determine the equipment number for the vid segment, the system executes logic to ensure that if the us-ccn-key starts with 'cprs' or the cargo car number is spaces, then use the train list equipment number, otherwise use the cargo database car number.
Given
An equipment item has a US-CCN-KEY and cargo data has been retrieved
When
The system needs to determine the equipment number for the VID segment
Then
If the US-CCN-KEY starts with 'CPRS' OR the cargo car number is spaces, then use the train list equipment number, otherwise use the cargo database car number
R-GCCE358-cbl-00071Insert VID Segment to EDI Data
Action Rules
Business View: Assuming a vid segment has been fully populated with equipment data during the 'Insert VID Segment to EDI Data' routine, when the segment needs to be added to the edi transmission, the system executes logic to ensure that the system should insert the vid segment into the transmission data with an incremented sequence number.
Given
A VID segment has been fully populated with equipment data
When
The segment needs to be added to the EDI transmission
Then
The system should insert the VID segment into the transmission data with an incremented sequence number
R-GCCE358-cbl-00146Status Code = 'H'?
Decision Rules
Business View: Assuming an equipment item with load/empty status code from the train list during the 'Status Code = 'H'?' routine, when the equipment load/empty status code is 'h' (hold), the system executes logic to ensure that the status code should be converted to 'e' (empty) for the edi transmission.
Given
An equipment item with load/empty status code from the train list
When
The equipment load/empty status code is 'H' (Hold)
Then
The status code should be converted to 'E' (Empty) for the EDI transmission
R-GCCE358-cbl-00152Set Database Access Parameters
Process Rules
Business View: Assuming a cargo lookup operation is initiated during the 'Set Database Access Parameters' routine, when the system prepares to access the cargo database, the system executes logic to ensure that the system sets segment type to gcsusrt, function type to gu (get unique), and index usage to not used.
Given
A cargo lookup operation is initiated
When
The system prepares to access the cargo database
Then
The system sets segment type to GCSUSRT, function type to GU (Get Unique), and index usage to not used
R-GCCE358-cbl-00083Initialize VID Segment Structure
Process Rules
Business View: Assuming a vid equipment segment needs to be created during the 'Initialize VID Segment Structure' routine, when the system starts processing equipment data, the system executes logic to ensure that the vid segment structure is initialized and the identifier is set to 'vid'.
Given
A VID equipment segment needs to be created
When
The system starts processing equipment data
Then
The VID segment structure is initialized and the identifier is set to 'VID'
R-GCCE358-cbl-00084Set Equipment Description Code from Train List
Action Rules
Business View: Assuming equipment data exists in the train list for the current equipment index during the 'Set Equipment Description Code from Train List' routine, when the system processes vid segment creation, the system executes logic to ensure that the equipment description code is set from the train list vid01 equipment type field.
Given
Equipment data exists in the train list for the current equipment index
When
The system processes VID segment creation
Then
The equipment description code is set from the train list VID01 equipment type field
R-GCCE358-cbl-00085Set Equipment Initial from Train List
Action Rules
Business View: Assuming equipment data exists in the train list for the current equipment index during the 'Set Equipment Initial from Train List' routine, when the system processes vid segment creation, the system executes logic to ensure that the equipment initial is set from the train list vid02 equipment initial field.
Given
Equipment data exists in the train list for the current equipment index
When
The system processes VID segment creation
Then
The equipment initial is set from the train list VID02 equipment initial field
R-GCCE358-cbl-00086Is Equipment CP-owned or No Foreign Car Number?
Decision Rules
Business View: Assuming equipment data is being processed for vid segment creation during the 'Is Equipment CP-owned or No Foreign Car Number?' routine, when the system needs to determine the equipment number source, the system executes logic to ensure that if the us-ccn-key starts with 'cprs' or the 350-car-number is spaces, use equipment number from train list, otherwise use the foreign car number from cargo database.
Given
Equipment data is being processed for VID segment creation
When
The system needs to determine the equipment number source
Then
If the US-CCN-KEY starts with 'CPRS' OR the 350-CAR-NUMBER is spaces, use equipment number from train list, otherwise use the foreign car number from cargo database
R-GCCE358-cbl-00087Use Equipment Number from Train List
Action Rules
Business View: <EXCLUSION CRITERIA> If equipment is cp-owned (us-ccn-key starts with 'cprs') or foreign car number is not available (350-car-number is spaces), and the system sets the equipment number in vid segment occurs during the 'Use Equipment Number from Train List' routine, then the system must guarantee that the equipment number is set from the train list vid03 equipment number field.
EXCLUDING
Equipment is CP-owned (US-CCN-KEY starts with 'CPRS') OR foreign car number is not available (350-CAR-NUMBER is spaces)
When
The system sets the equipment number in VID segment
Then
The equipment number is set from the train list VID03 equipment number field
R-GCCE358-cbl-00088Use Foreign Car Number from Cargo Database
Action Rules
Business View: <EXCLUSION CRITERIA> If equipment is not cp-owned (us-ccn-key does not start with 'cprs') and foreign car number is available (350-car-number is not spaces), and the system sets the equipment number in vid segment occurs during the 'Use Foreign Car Number from Cargo Database' routine, then the system must guarantee that the equipment number is set from the cargo database 350-car-number field.
EXCLUDING
Equipment is not CP-owned (US-CCN-KEY does not start with 'CPRS') AND foreign car number is available (350-CAR-NUMBER is not spaces)
When
The system sets the equipment number in VID segment
Then
The equipment number is set from the cargo database 350-CAR-NUMBER field
R-GCCE358-cbl-00089Insert VID Segment into EDI Data
Action Rules
Business View: Assuming vid segment has been populated with equipment data during the 'Insert VID Segment into EDI Data' routine, when the system completes vid segment creation, the system executes logic to ensure that the vid segment is moved to transmission data and inserted into the edi data structure.
Given
VID segment has been populated with equipment data
When
The system completes VID segment creation
Then
The VID segment is moved to transmission data and inserted into the EDI data structure
R-GCCE358-cbl-00090Initialize MBL Segment
Process Rules
Business View: <EXCLUSION CRITERIA> If equipment has an associated bill of lading (us-ccn-key is not spaces), and the system begins mbl processing for the equipment occurs during the 'Initialize MBL Segment' routine, then the system must guarantee that a new mbl segment structure is initialized and the mbl identifier is set to 'mbl'.
EXCLUDING
Equipment has an associated bill of lading (US-CCN-KEY is not spaces)
When
The system begins MBL processing for the equipment
Then
A new MBL segment structure is initialized and the MBL identifier is set to 'MBL'
R-GCCE358-cbl-00091Extract Carrier SCAC Code from Equipment
Definitional Rules
Business View: Assuming equipment has bill of lading information during the 'Extract Carrier SCAC Code from Equipment' routine, when processing mbl segment creation, the system executes logic to ensure that the carrier scac code is extracted from the equipment's mbl01-m1309-us-ccn-scac field and assigned to mbl-01-scac.
Given
Equipment has bill of lading information
When
Processing MBL segment creation
Then
The carrier SCAC code is extracted from the equipment's MBL01-M1309-US-CCN-SCAC field and assigned to MBL-01-SCAC
R-GCCE358-cbl-00092Extract Bill of Lading Number from Equipment
Definitional Rules
Business View: Assuming equipment has bill of lading information during the 'Extract Bill of Lading Number from Equipment' routine, when processing mbl segment creation, the system executes logic to ensure that the bill of lading number is extracted from the equipment's mbl02-m1304-us-ccn-id field and assigned to mbl-02-bol-waybill.
Given
Equipment has bill of lading information
When
Processing MBL segment creation
Then
The bill of lading number is extracted from the equipment's MBL02-M1304-US-CCN-ID field and assigned to MBL-02-BOL-WAYBILL
R-GCCE358-cbl-00097Insert MBL Segment into EDI Data
Process Rules
Business View: Assuming a fully populated mbl segment with carrier and bill information during the 'Insert MBL Segment into EDI Data' routine, when all mbl processing is complete, the system executes logic to ensure that the mbl segment is moved to the transmission data structure and inserted into the edi data stream.
Given
A fully populated MBL segment with carrier and bill information
When
All MBL processing is complete
Then
The MBL segment is moved to the transmission data structure and inserted into the EDI data stream
R-GCCE358-cbl-00167Retrieve SS Segment Data
Process Rules
Business View: Assuming a successful ss table lookup has been completed during the 'Retrieve SS Segment Data' routine, when the system processes the lookup result, the system executes logic to ensure that the ss segment data should be moved from the table buffer to the working storage area.
Given
A successful SS table lookup has been completed
When
The system processes the lookup result
Then
The SS segment data should be moved from the table buffer to the working storage area
R-GCCE358-cbl-00168Automated Carrier Flag = 'Y'?
Decision Rules
Business View: Assuming ss segment data has been retrieved from the table during the 'Automated Carrier Flag = 'Y'?' routine, when the system checks the automated carrier flag, the system executes logic to ensure that if the automated carrier flag equals 'y', the carrier supports automation; otherwise, it does not.
Given
SS segment data has been retrieved from the table
When
The system checks the automated carrier flag
Then
If the automated carrier flag equals 'Y', the carrier supports automation; otherwise, it does not
R-GCCE358-cbl-00171Clear SS Segment Data
Process Rules
Business View: Assuming the ss table lookup operation failed to find a matching record during the 'Clear SS Segment Data' routine, when the system handles the lookup failure, the system executes logic to ensure that the ss segment data area should be cleared to spaces to indicate no data available.
Given
The SS table lookup operation failed to find a matching record
When
The system handles the lookup failure
Then
The SS segment data area should be cleared to spaces to indicate no data available
Business View: Assuming a bill of lading processing request is initiated during the 'Initialize MBL Segment Structure' routine, when the system begins mbl segment creation, the system executes logic to ensure that the mbl segment structure is initialized to clear any previous data.
Given
A bill of lading processing request is initiated
When
The system begins MBL segment creation
Then
The MBL segment structure is initialized to clear any previous data
R-GCCE358-cbl-00105Set MBL Identifier to 'MBL'
Definitional Rules
Business View: Assuming an mbl segment is being created during the 'Set MBL Identifier to 'MBL'' routine, when the segment identifier needs to be set, the system executes logic to ensure that the identifier is set to 'mbl' to indicate this is a master bill of lading segment.
Given
An MBL segment is being created
When
The segment identifier needs to be set
Then
The identifier is set to 'MBL' to indicate this is a Master Bill of Lading segment
R-GCCE358-cbl-00106Extract SCAC Code from Equipment Record
Process Rules
Business View: Assuming an equipment item is being processed for mbl creation during the 'Extract SCAC Code from Equipment Record' routine, when the scac code is needed for the mbl segment, the system executes logic to ensure that the scac code is extracted from the equipment record's ccn scac field.
Given
An equipment item is being processed for MBL creation
When
The SCAC code is needed for the MBL segment
Then
The SCAC code is extracted from the equipment record's CCN SCAC field
R-GCCE358-cbl-00107Extract Bill of Lading Number from Equipment Record
Process Rules
Business View: Assuming an equipment item is being processed for mbl creation during the 'Extract Bill of Lading Number from Equipment Record' routine, when the bill of lading number is needed for the mbl segment, the system executes logic to ensure that the bill of lading number is extracted from the equipment record's ccn id field.
Given
An equipment item is being processed for MBL creation
When
The bill of lading number is needed for the MBL segment
Then
The bill of lading number is extracted from the equipment record's CCN ID field
R-GCCE358-cbl-00108Is SCAC Code 'CPRS'?
Decision Rules
Business View: Assuming an mbl segment is being created with a scac code during the 'Is SCAC Code 'CPRS'?' routine, when the scac code equals 'cprs', the system executes logic to ensure that the response code is set to 'y' indicating automated processing for cp rail.
Given
An MBL segment is being created with a SCAC code
When
The SCAC code equals 'CPRS'
Then
The response code is set to 'Y' indicating automated processing for CP Rail
R-GCCE358-cbl-00109Look up SCAC in SS Table for Port
Action Rules
Business View: <EXCLUSION CRITERIA> If an mbl segment is being created with a non-cprs scac code, and the scac code is not 'cprs' occurs during the 'Look up SCAC in SS Table for Port' routine, then the system must guarantee that the system performs a table lookup using table id 'ss', the scac code, and the origin port to determine carrier automation status.
EXCLUDING
An MBL segment is being created with a non-CPRS SCAC code
When
The SCAC code is not 'CPRS'
Then
The system performs a table lookup using table ID 'SS', the SCAC code, and the origin port to determine carrier automation status
R-GCCE358-cbl-00112Is Equipment Empty with Bill Type 23?
Decision Rules
Business View: <EXCLUSION CRITERIA> If an mbl segment response code has been determined, and the equipment load/empty status is 'e' and the ccn key is not spaces and the bill type code is 23 occurs during the 'Is Equipment Empty with Bill Type 23?' routine, then the system must guarantee that the response code is overridden to 'y' for special er processing requirements.
EXCLUDING
An MBL segment response code has been determined
When
The equipment load/empty status is 'E' AND the CCN key is not spaces AND the bill type code is 23
Then
The response code is overridden to 'Y' for special ER processing requirements
R-GCCE358-cbl-00113Insert MBL Segment into EDI Data
Process Rules
Business View: Assuming an mbl segment has been fully populated with all required data during the 'Insert MBL Segment into EDI Data' routine, when the segment is ready for transmission, the system executes logic to ensure that the mbl segment is inserted into the edi transmission data structure.
Given
An MBL segment has been fully populated with all required data
When
The segment is ready for transmission
Then
The MBL segment is inserted into the EDI transmission data structure
R-GCCE358-cbl-00114Set EDI Send Function Name
Action Rules
Business View: Assuming the system needs to initiate edi message transmission during the 'Set EDI Send Function Name' routine, when the edi send process is started, the system executes logic to ensure that the system sets the edi send function name flag to true to identify the correct processing function.
Given
The system needs to initiate EDI message transmission
When
The EDI send process is started
Then
The system sets the EDI send function name flag to true to identify the correct processing function
R-GCCE358-cbl-00115Set Security Authorization
Authorization Rules
Business View: Assuming an edi message is being prepared for transmission during the 'Set Security Authorization' routine, when security authorization is being configured, the system executes logic to ensure that the system sets the security byte to high-values to enforce maximum security protection.
Given
An EDI message is being prepared for transmission
When
Security authorization is being configured
Then
The system sets the security byte to high-values to enforce maximum security protection
R-GCCE358-cbl-00116Add Transmission Number to Message
Process Rules
Business View: Assuming a transmission number has been generated for the current edi process during the 'Add Transmission Number to Message' routine, when the edi message is being prepared, the system executes logic to ensure that the system adds the transmission number to the message structure for identification.
Given
A transmission number has been generated for the current EDI process
When
The EDI message is being prepared
Then
The system adds the transmission number to the message structure for identification
R-GCCE358-cbl-00117Prepare EDI Message for Transmission
Process Rules
Business View: Assuming all edi message components including security, transmission number, and function name are configured during the 'Prepare EDI Message for Transmission' routine, when the message preparation process is executed, the system executes logic to ensure that the system moves the complete input structure to the message output text for transmission.
Given
All EDI message components including security, transmission number, and function name are configured
When
The message preparation process is executed
Then
The system moves the complete input structure to the message output text for transmission
R-GCCE358-cbl-00118Send Message to EDI Queue
Process Rules
Business View: Assuming an edi message is ready for transmission during the 'Send Message to EDI Queue' routine, when the message is being sent to the edi queue, the system executes logic to ensure that the system sets the edi send function length flag to ensure proper message sizing.
Given
An EDI message is ready for transmission
When
The message is being sent to the EDI queue
Then
The system sets the EDI send function length flag to ensure proper message sizing
R-GCCE358-cbl-00119Send Message to EDI Queue
Action Rules
Business View: Assuming an edi message is formatted and ready with proper length specification during the 'Send Message to EDI Queue' routine, when the message insertion process is initiated, the system executes logic to ensure that the system performs the insert purge message operation to queue the message for transmission.
Given
An EDI message is formatted and ready with proper length specification
When
The message insertion process is initiated
Then
The system performs the insert purge message operation to queue the message for transmission
R-GCCE358-cbl-00120Set Log Update Function Name
Action Rules
Business View: Assuming the system needs to log an edi transmission activity during the 'Set Log Update Function Name' routine, when the log update process is initiated, the system executes logic to ensure that the system sets the function name to log-updt-func-name to identify the logging service.
Given
The system needs to log an EDI transmission activity
When
The log update process is initiated
Then
The system sets the function name to LOG-UPDT-FUNC-NAME to identify the logging service
R-GCCE358-cbl-00121Initialize Security Parameters
Policy Rules
Business View: Assuming a log entry needs to be created for edi transmission during the 'Initialize Security Parameters' routine, when security parameters are being configured, the system executes logic to ensure that the system sets the security byte to high-values for secure transmission.
Given
A log entry needs to be created for EDI transmission
When
Security parameters are being configured
Then
The system sets the security byte to HIGH-VALUES for secure transmission
R-GCCE358-cbl-00122Set Train ID from Train List
Definitional Rules
Business View: Assuming an edi transmission log entry is being created during the 'Set Train ID from Train List' routine, when train identification is required for the log, the system executes logic to ensure that the system sets the train identifier using the us customer train id from the train list.
Given
An EDI transmission log entry is being created
When
Train identification is required for the log
Then
The system sets the train identifier using the US customer train ID from the train list
R-GCCE358-cbl-00124Processing Mode?
Decision Rules
Business View: Assuming an edi transmission log entry requires an action code during the 'Processing Mode?' routine, when the processing mode is background, the system executes logic to ensure that the system uses the background action code.
Given
An EDI transmission log entry requires an action code
When
The processing mode is background
Then
The system uses the background action code
R-GCCE358-cbl-00125Set Foreground Action Code and Transaction Name / Set Background Action Code and Transaction Name
Decision Rules
Business View: Assuming an edi transmission log entry requires a transaction name during the 'Set Foreground Action Code and Transaction Name / Set Background Action Code and Transaction Name' routine, when the processing mode is background, the system executes logic to ensure that the system uses the background transaction name.
Given
An EDI transmission log entry requires a transaction name
When
The processing mode is background
Then
The system uses the background transaction name
R-GCCE358-cbl-00126Set User ID from System
Authorization Rules
Business View: Assuming an edi transmission log entry is being created during the 'Set User ID from System' routine, when user identification is required for audit purposes, the system executes logic to ensure that the system captures and records the acf2 user id from the system.
Given
An EDI transmission log entry is being created
When
User identification is required for audit purposes
Then
The system captures and records the ACF2 user ID from the system
R-GCCE358-cbl-00127Set Current Date from System
Process Rules
Business View: Assuming an edi transmission log entry requires a date stamp during the 'Set Current Date from System' routine, when the current date needs to be recorded, the system executes logic to ensure that the system concatenates the machine century and machine date to create a complete date stamp.
Given
An EDI transmission log entry requires a date stamp
When
The current date needs to be recorded
Then
The system concatenates the machine century and machine date to create a complete date stamp
R-GCCE358-cbl-00128Set Current Time from System
Process Rules
Business View: Assuming an edi transmission log entry requires a time stamp during the 'Set Current Time from System' routine, when the current time needs to be recorded, the system executes logic to ensure that the system records the machine time from the system.
Given
An EDI transmission log entry requires a time stamp
When
The current time needs to be recorded
Then
The system records the machine time from the system
R-GCCE358-cbl-00129Initialize Message as Empty
Definitional Rules
Business View: Assuming a log entry message field needs to be set during the 'Initialize Message as Empty' routine, when no specific message content is required, the system executes logic to ensure that the system initializes the message field to spaces.
Given
A log entry message field needs to be set
When
No specific message content is required
Then
The system initializes the message field to spaces
Module: GCCU358T 121 EDI Rules Found
R-GCCU358T-cbl-00005Valid Bills or Valid Port?
Decision Rules
Business View: Assuming a train has been validated for processing mode and station code during the 'Valid Bills or Valid Port?' routine, when the system checks if bol quantity is greater than 0 or if port is valid, the system executes logic to ensure that proceeds with edi processing if either condition is true, otherwise skips to logging.
Given
A train has been validated for processing mode and station code
When
The system checks if BOL quantity is greater than 0 or if port is valid
Then
Proceeds with EDI processing if either condition is true, otherwise skips to logging
R-GCCU358T-cbl-000065:Generate Transmission Number
Computation Rules
Business View: Assuming edi processing is required during the '5:Generate Transmission Number' routine, when the system generates a transmission number, the system executes logic to ensure that uses prefix 106 for foreground or 003 for background, combined with machine time.
Given
EDI processing is required
When
The system generates a transmission number
Then
Uses prefix 106 for foreground or 003 for background, combined with machine time
R-GCCU358T-cbl-000076:Create EDI Root Segment
Process Rules
Business View: Assuming a unique transmission number has been generated during the '6:Create EDI Root Segment' routine, when the system creates the root segment, the system executes logic to ensure that inserts transmission record with transaction set '358' and generated transmission number.
Given
A unique transmission number has been generated
When
The system creates the root segment
Then
Inserts transmission record with transaction set '358' and generated transmission number
R-GCCU358T-cbl-000087:Build M10 Manifest Header
Process Rules
Business View: Assuming edi root segment has been created and train type determined during the '7:Build M10 Manifest Header' routine, when the system builds the m10 segment, the system executes logic to ensure that sets scac to 'cprs', transport type to 'r', country to 'ca', manifest type to 'k' for export trains with valid port or 's' for others, and application type '28' for export trains with valid port.
Given
EDI root segment has been created and train type determined
When
The system builds the M10 segment
Then
Sets SCAC to 'CPRS', transport type to 'R', country to 'CA', manifest type to 'K' for export trains with valid port or 'S' for others, and application type '28' for export trains with valid port
R-GCCU358T-cbl-000098:Build P4 Port Information
Process Rules
Business View: Assuming m10 segment has been created during the '8:Build P4 Port Information' routine, when the system builds the p4 segment, the system executes logic to ensure that includes origin station code, estimated arrival date with century calculation, bol quantity, arrival time, and firms code.
Given
M10 segment has been created
When
The system builds the P4 segment
Then
Includes origin station code, estimated arrival date with century calculation, BOL quantity, arrival time, and FIRMS code
R-GCCU358T-cbl-000109:Process Equipment VID Segments
Process Rules
Business View: Assuming p4 segment has been created and equipment list exists during the '9:Process Equipment VID Segments' routine, when the system processes each unique equipment id, the system executes logic to ensure that creates vid segment with equipment type, initial, number (using cargo car number if available), and load/empty status (e if train shows h, l if train shows e but cargo weight > 1, otherwise train value).
Given
P4 segment has been created and equipment list exists
When
The system processes each unique equipment ID
Then
Creates VID segment with equipment type, initial, number (using cargo car number if available), and load/empty status (E if train shows H, L if train shows E but cargo weight > 1, otherwise train value)
R-GCCU358T-cbl-0001110:Process Bill of Lading MBL Segments
Process Rules
Business View: <EXCLUSION CRITERIA> If equipment has associated cargo (us ccn key not spaces), and the system creates mbl segment occurs during the '10:Process Bill of Lading MBL Segments' routine, then the system must guarantee that uses cargo-derived scac and bol for valid ports, otherwise uses train list values, and sets automated response based on scac table lookup or special handling for empty cars with bol type '23'.
EXCLUDING
Equipment has associated cargo (US CCN key not spaces)
When
The system creates MBL segment
Then
Uses cargo-derived SCAC and BOL for valid ports, otherwise uses train list values, and sets automated response based on SCAC table lookup or special handling for empty cars with BOL type '23'
Business View: Assuming equipment has cargo with transport export type during the '11:Process N9 Reference Segments' routine, when the system processes n9 segment, the system executes logic to ensure that creates n9 segment with reference qualifier 'ib' and entry number from cargo record.
Given
Equipment has cargo with transport export type
When
The system processes N9 segment
Then
Creates N9 segment with reference qualifier 'IB' and entry number from cargo record
R-GCCU358T-cbl-0001312:Update Train Status to SENT
Process Rules
Business View: Assuming train has valid cargo (bol quantity > 0) or valid port during the '12:Update Train Status to SENT' routine, when the system updates train status, the system executes logic to ensure that sets train status to sent, enables edi sending flag, and updates both train database and train list.
Given
Train has valid cargo (BOL quantity > 0) or valid port
When
The system updates train status
Then
Sets train status to SENT, enables EDI sending flag, and updates both train database and train list
R-GCCU358T-cbl-0001413:Update Train Status to ACK
Process Rules
Business View: Assuming train has no valid cargo (bol quantity = 0) and no valid port during the '13:Update Train Status to ACK' routine, when the system updates train status, the system executes logic to ensure that sets train status to ack and determines edi action based on previous edi send flag.
Given
Train has no valid cargo (BOL quantity = 0) and no valid port
When
The system updates train status
Then
Sets train status to ACK and determines EDI action based on previous EDI send flag
R-GCCU358T-cbl-00015Delete Required?
Decision Rules
Business View: Assuming train status has been set to ack during the 'Delete Required?' routine, when the system checks previous edi send flag, the system executes logic to ensure that sets delete required flag if previously marked to send edi, otherwise sets do not send edi flag.
Given
Train status has been set to ACK
When
The system checks previous EDI send flag
Then
Sets delete required flag if previously marked to send EDI, otherwise sets do not send EDI flag
R-GCCU358T-cbl-0001615:Start EDI Send Function
Action Rules
Business View: Assuming edi segments have been created successfully during the '15:Start EDI Send Function' routine, when the system starts edi send function, the system executes logic to ensure that calls edi send function with high-value security and generated transmission number.
Given
EDI segments have been created successfully
When
The system starts EDI send function
Then
Calls EDI send function with high-value security and generated transmission number
R-GCCU358T-cbl-0001716:Log Transaction Activity
Process Rules
Business View: Assuming train processing has completed during the '16:Log Transaction Activity' routine, when the system logs the transaction, the system executes logic to ensure that uses foreground or background action codes, includes user id, date, time, and appropriate message based on cargo validity.
Given
Train processing has completed
When
The system logs the transaction
Then
Uses foreground or background action codes, includes user ID, date, time, and appropriate message based on cargo validity
R-GCCU358T-cbl-0001817:Process AEI Train Send
Process Rules
Business View: <EXCLUSION CRITERIA> If train is in background mode, has ack status, aei send is enabled, edi is not being sent, and train id position 23 is 't', and the system processes aei train send occurs during the '17:Process AEI Train Send' routine, then the system must guarantee that initiates customs transaction with train information for aei processing.
EXCLUDING
Train is in background mode, has ACK status, AEI send is enabled, EDI is not being sent, and train ID position 23 is 'T'
When
The system processes AEI train send
Then
Initiates customs transaction with train information for AEI processing
R-GCCU358T-cbl-0002121:Check Automated Carrier Status
Decision Rules
Business View: Assuming mbl segment is being processed with a scac code during the '21:Check Automated Carrier Status' routine, when the system checks automated carrier status, the system executes logic to ensure that sets response to 'y' if scac is 'cprs' or if scac table indicates automated carrier, otherwise sets to 'n', with special 'y' setting for empty cars with bol type '23'.
Given
MBL segment is being processed with a SCAC code
When
The system checks automated carrier status
Then
Sets response to 'Y' if SCAC is 'CPRS' or if SCAC table indicates automated carrier, otherwise sets to 'N', with special 'Y' setting for empty cars with BOL type '23'
R-GCCU358T-cbl-00022AEI Train Send Check?
Decision Rules
Business View: <EXCLUSION CRITERIA> If train processing has completed and edi is not being sent, and the system checks aei train send eligibility occurs during the 'AEI Train Send Check?' routine, then the system must guarantee that proceeds with aei processing if train is in background mode and meets aei criteria.
EXCLUDING
Train processing has completed and EDI is not being sent
When
The system checks AEI train send eligibility
Then
Proceeds with AEI processing if train is in background mode and meets AEI criteria
R-GCCU358T-cbl-00023Has Valid Cargo?
Decision Rules
Business View: Assuming edi processing and logging have completed during the 'Has Valid Cargo?' routine, when the system determines final status, the system executes logic to ensure that updates to sent status if bol quantity > 0 or port is valid, otherwise updates to ack status.
Given
EDI processing and logging have completed
When
The system determines final status
Then
Updates to SENT status if BOL quantity > 0 or port is valid, otherwise updates to ACK status
R-GCCU358T-cbl-00026Set Processing Mode as Valid
Process Rules
Business View: Assuming the processing mode has been validated as either foreground or background during the 'Set Processing Mode as Valid' routine, when gcwu358t-foreground or gcwu358t-background is true, the system executes logic to ensure that the system proceeds with edi processing workflow including information gathering, root processing, and equipment processing.
Given
The processing mode has been validated as either foreground or background
When
GCWU358T-FOREGROUND OR GCWU358T-BACKGROUND is true
Then
The system proceeds with EDI processing workflow including information gathering, root processing, and equipment processing
R-GCCU358T-cbl-00038Check Bond Type and Export Criteria
Decision Rules
Business View: Assuming cargo information is available for an equipment item during the 'Check Bond Type and Export Criteria' routine, when determining if cargo qualifies for bol counting, the system executes logic to ensure that cargo qualifies if in-bond type is 'tr' or if cargo type is export/returned us goods/empty residue/transport export/immediate export/multi-port and the port is valid.
Given
Cargo information is available for an equipment item
When
Determining if cargo qualifies for BOL counting
Then
Cargo qualifies if in-bond type is 'TR' OR if cargo type is export/returned US goods/empty residue/transport export/immediate export/multi-port AND the port is valid
R-GCCU358T-cbl-00209M1201 Immediate Export?
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo does not meet previous export criteria including m1201 transport export, and the system continues evaluating m1201 export criteria occurs during the 'M1201 Immediate Export?' routine, then the system must guarantee that if cargo has m1201 immediate export classification, it qualifies for export processing subject to valid port requirement.
EXCLUDING
Cargo does not meet previous export criteria including M1201 transport export
When
The system continues evaluating M1201 export criteria
Then
If cargo has M1201 immediate export classification, it qualifies for export processing subject to valid port requirement
R-GCCU358T-cbl-00257M1201 Immediate Export?
Decision Rules
Business View: Assuming a cargo record has m1201 in-bond type code and the port is valid during the 'M1201 Immediate Export?' routine, when the m1201 in-bond type code indicates immediate export (88-gcusrt-m1201-imm-export condition is true), the system executes logic to ensure that the cargo qualifies for export processing.
Given
A cargo record has M1201 in-bond type code and the port is valid
When
The M1201 in-bond type code indicates immediate export (88-GCUSRT-M1201-IMM-EXPORT condition is true)
Then
The cargo qualifies for export processing
R-GCCU358T-cbl-00045Set Prefix to 106 Foreground Mode / Set Prefix to 003 Background Mode
Decision Rules
Business View: Assuming a train manifest processing request is initiated during the 'Set Prefix to 106 Foreground Mode / Set Prefix to 003 Background Mode' routine, when the system determines the processing mode (foreground or background), the system executes logic to ensure that the transmission prefix is set to 106 for foreground mode or 003 for background mode.
Given
A train manifest processing request is initiated
When
The system determines the processing mode (foreground or background)
Then
The transmission prefix is set to 106 for foreground mode or 003 for background mode
R-GCCU358T-cbl-00046Get Current Machine Time as Base Number
Computation Rules
Business View: Assuming a transmission prefix has been determined during the 'Get Current Machine Time as Base Number' routine, when the system needs to create a unique transmission number, the system executes logic to ensure that the current machine time is retrieved and used as the base number component.
Given
A transmission prefix has been determined
When
The system needs to create a unique transmission number
Then
The current machine time is retrieved and used as the base number component
R-GCCU358T-cbl-00047Combine Prefix + Time to Create Transmission Number
Computation Rules
Business View: Assuming a transmission prefix and machine time are available during the 'Combine Prefix + Time to Create Transmission Number' routine, when the system constructs the transmission number, the system executes logic to ensure that the prefix and machine time are combined to form the complete transmission number.
Given
A transmission prefix and machine time are available
When
The system constructs the transmission number
Then
The prefix and machine time are combined to form the complete transmission number
R-GCCU358T-cbl-00048Attempt to Insert Transmission Number
Action Rules
Business View: Assuming a complete transmission number has been generated during the 'Attempt to Insert Transmission Number' routine, when the system attempts to insert the transmission record, the system executes logic to ensure that a new transmission record is created with transaction set '358' and the generated transmission number.
Given
A complete transmission number has been generated
When
The system attempts to insert the transmission record
Then
A new transmission record is created with transaction set '358' and the generated transmission number
R-GCCU358T-cbl-00049Number Already Exists? / Increment Number by 1
Validation Rules
Business View: Assuming a transmission number has been generated and insertion attempted during the 'Number Already Exists? / Increment Number by 1' routine, when the transmission number already exists in the system, the system executes logic to ensure that the transmission number is incremented by 1 and insertion is attempted again until a unique number is found.
Given
A transmission number has been generated and insertion attempted
When
The transmission number already exists in the system
Then
The transmission number is incremented by 1 and insertion is attempted again until a unique number is found
R-GCCU358T-cbl-00050Set Transmission Prefix to 106 Foreground Mode / Set Transmission Prefix to 003 Background Mode
Decision Rules
Business View: Assuming the system is creating an edi root segment during the 'Set Transmission Prefix to 106 Foreground Mode / Set Transmission Prefix to 003 Background Mode' routine, when the processing mode is foreground, the system executes logic to ensure that the transmission prefix is set to 106, and when the processing mode is background, the transmission prefix is set to 003.
Given
The system is creating an EDI root segment
When
The processing mode is foreground
Then
The transmission prefix is set to 106, and when the processing mode is background, the transmission prefix is set to 003
R-GCCU358T-cbl-00051Generate Transmission Number Using Machine Time
Computation Rules
Business View: Assuming a transmission prefix has been determined based on processing mode during the 'Generate Transmission Number Using Machine Time' routine, when the system needs to generate a transmission number, the system executes logic to ensure that the machine time is retrieved and combined with the prefix to create the transmission number.
Given
A transmission prefix has been determined based on processing mode
When
The system needs to generate a transmission number
Then
The machine time is retrieved and combined with the prefix to create the transmission number
R-GCCU358T-cbl-00052Initialize Root Segment Structure / Set Transaction Set to 358
Process Rules
Business View: Assuming a transmission number has been generated during the 'Initialize Root Segment Structure / Set Transaction Set to 358' routine, when the system initializes the edi root segment, the system executes logic to ensure that the root segment structure is cleared and the transaction set is set to '358'.
Given
A transmission number has been generated
When
The system initializes the EDI root segment
Then
The root segment structure is cleared and the transaction set is set to '358'
R-GCCU358T-cbl-00053Insert Successful? / Increment Transmission Number / Retry Insert with New Number
Process Rules
Business View: Assuming an edi root segment is ready for insertion into the database during the 'Insert Successful? / Increment Transmission Number / Retry Insert with New Number' routine, when the insertion fails due to a duplicate transmission number, the system executes logic to ensure that the transmission number is incremented by 1 and the insertion is retried until a unique number is found.
Given
An EDI root segment is ready for insertion into the database
When
The insertion fails due to a duplicate transmission number
Then
The transmission number is incremented by 1 and the insertion is retried until a unique number is found
R-GCCU358T-cbl-00054Insert Root Segment into EDI Database
Action Rules
Business View: Assuming the edi root segment is initialized with transmission number and transaction set 358 during the 'Insert Root Segment into EDI Database' routine, when the system attempts to insert the root segment, the system executes logic to ensure that the root segment is stored in the edi work database using the transmission number as the key.
Given
The EDI root segment is initialized with transmission number and transaction set 358
When
The system attempts to insert the root segment
Then
The root segment is stored in the EDI work database using the transmission number as the key
Business View: Assuming a train manifest needs to be processed for edi transmission during the 'Initialize M10 Manifest Header' routine, when the system begins creating the m10 manifest header segment, the system executes logic to ensure that the m10 segment is initialized with empty values to prepare for data population.
Given
A train manifest needs to be processed for EDI transmission
When
The system begins creating the M10 manifest header segment
Then
The M10 segment is initialized with empty values to prepare for data population
R-GCCU358T-cbl-00056Set Standard M10 Fields - Identifier: M10, SCAC: CPRS, Transport Type: R, Country: CA
Definitional Rules
Business View: Assuming an m10 manifest header segment is being created during the 'Set Standard M10 Fields - Identifier: M10, SCAC: CPRS, Transport Type: R, Country: CA' routine, when the system sets the standard transport fields, the system executes logic to ensure that the identifier is set to 'm10', scac code is set to 'cprs', transport type code is set to 'r' for rail, and country code is set to 'ca' for canada.
Given
An M10 manifest header segment is being created
When
The system sets the standard transport fields
Then
The identifier is set to 'M10', SCAC code is set to 'CPRS', transport type code is set to 'R' for rail, and country code is set to 'CA' for Canada
R-GCCU358T-cbl-00057Set Train ID as Vessel Name
Definitional Rules
Business View: Assuming an m10 manifest header is being populated with train information during the 'Set Train ID as Vessel Name' routine, when the system assigns the vessel name field, the system executes logic to ensure that the customer train id from the train list is copied to the m10 vessel name field.
Given
An M10 manifest header is being populated with train information
When
The system assigns the vessel name field
Then
The customer train ID from the train list is copied to the M10 vessel name field
R-GCCU358T-cbl-00059Generate Voyage Number from Creation Date
Computation Rules
Business View: Assuming an m10 manifest header requires a voyage number during the 'Generate Voyage Number from Creation Date' routine, when the system generates the voyage number, the system executes logic to ensure that the first 2 characters are taken from the train creation year and the next 3 characters are taken from the train creation julian date.
Given
An M10 manifest header requires a voyage number
When
The system generates the voyage number
Then
The first 2 characters are taken from the train creation year and the next 3 characters are taken from the train creation Julian date
R-GCCU358T-cbl-00060Set Bill of Lading Quantity
Definitional Rules
Business View: Assuming an m10 manifest header is being populated with cargo information during the 'Set Bill of Lading Quantity' routine, when the system sets the quantity field, the system executes logic to ensure that the bill of lading quantity (count of valid cargo entries) is assigned to the m10 quantity field.
Given
An M10 manifest header is being populated with cargo information
When
The system sets the quantity field
Then
The bill of lading quantity (count of valid cargo entries) is assigned to the M10 quantity field
Business View: Assuming a train is classified as an export train and is being processed for a valid port during the 'Set Manifest Type: K, Application Type: 28' routine, when the system determines the manifest type and application type, the system executes logic to ensure that the manifest type code is set to 'k' and the application type is set to '28'.
Given
A train is classified as an export train and is being processed for a valid port
When
The system determines the manifest type and application type
Then
The manifest type code is set to 'K' and the application type is set to '28'
R-GCCU358T-cbl-00062Set Manifest Type: S
Decision Rules
Business View: <EXCLUSION CRITERIA> If a train is either not an export train or not processing for a valid port, and the system determines the manifest type occurs during the 'Set Manifest Type: S' routine, then the system must guarantee that the manifest type code is set to 's'.
EXCLUDING
A train is either not an export train or not processing for a valid port
When
The system determines the manifest type
Then
The manifest type code is set to 'S'
R-GCCU358T-cbl-00063Set Standard Response Fields - Condition Response: Y, Record Type: TRAIN, Record Number: Train ID
Definitional Rules
Business View: Assuming an m10 manifest header is being finalized with response information during the 'Set Standard Response Fields - Condition Response: Y, Record Type: TRAIN, Record Number: Train ID' routine, when the system sets the standard response fields, the system executes logic to ensure that the condition response code is set to 'y', record type is set to 'train', and record number is set to the customer train id.
Given
An M10 manifest header is being finalized with response information
When
The system sets the standard response fields
Then
The condition response code is set to 'Y', record type is set to 'TRAIN', and record number is set to the customer train ID
R-GCCU358T-cbl-00064Insert M10 Segment into EDI Transmission
Action Rules
Business View: Assuming an m10 manifest header segment has been fully populated with train and cargo information during the 'Insert M10 Segment into EDI Transmission' routine, when the system processes the segment for edi transmission, the system executes logic to ensure that the m10 segment is inserted into the edi transmission data with an incremented sequence number.
Given
An M10 manifest header segment has been fully populated with train and cargo information
When
The system processes the segment for EDI transmission
Then
The M10 segment is inserted into the EDI transmission data with an incremented sequence number
R-GCCU358T-cbl-00065Initialize P4 Segment
Process Rules
Business View: Assuming the system needs to create a p4 port information segment during the 'Initialize P4 Segment' routine, when the p4 processing begins, the system executes logic to ensure that the p4 segment structure is initialized to clear any previous data.
Given
The system needs to create a P4 port information segment
When
The P4 processing begins
Then
The P4 segment structure is initialized to clear any previous data
R-GCCU358T-cbl-00066Set P4 Identifier
Definitional Rules
Business View: Assuming a p4 segment is being created during the 'Set P4 Identifier' routine, when the segment identifier needs to be set, the system executes logic to ensure that the identifier is set to 'p4' to indicate this is a port information segment.
Given
A P4 segment is being created
When
The segment identifier needs to be set
Then
The identifier is set to 'P4' to indicate this is a port information segment
R-GCCU358T-cbl-00067Set Departure Port Location
Definitional Rules
Business View: Assuming a train has an origin station code in the train list during the 'Set Departure Port Location' routine, when the p4 segment departure port needs to be populated, the system executes logic to ensure that the departure port location is set to the train's origin station code.
Given
A train has an origin station code in the train list
When
The P4 segment departure port needs to be populated
Then
The departure port location is set to the train's origin station code
R-GCCU358T-cbl-00068Get Estimated Departure Date
Definitional Rules
Business View: Assuming a train has estimated departure date information during the 'Get Estimated Departure Date' routine, when the p4 segment date field needs to be populated, the system executes logic to ensure that the estimated departure date is extracted from the train's eda field.
Given
A train has estimated departure date information
When
The P4 segment date field needs to be populated
Then
The estimated departure date is extracted from the train's EDA field
R-GCCU358T-cbl-00072Set Bill of Lading Quantity
Definitional Rules
Business View: Assuming the system has calculated the total number of valid bills of lading for the train during the 'Set Bill of Lading Quantity' routine, when the p4 segment quantity field needs to be populated, the system executes logic to ensure that the quantity is set to the calculated bill of lading count.
Given
The system has calculated the total number of valid bills of lading for the train
When
The P4 segment quantity field needs to be populated
Then
The quantity is set to the calculated bill of lading count
R-GCCU358T-cbl-00073Set Estimated Departure Time
Definitional Rules
Business View: Assuming a train has estimated departure time information during the 'Set Estimated Departure Time' routine, when the p4 segment time field needs to be populated, the system executes logic to ensure that the time is set to the train's estimated time of arrival (eta) value.
Given
A train has estimated departure time information
When
The P4 segment time field needs to be populated
Then
The time is set to the train's estimated time of arrival (ETA) value
R-GCCU358T-cbl-00074Set FIRMS Code
Definitional Rules
Business View: Assuming a train has firms code information during the 'Set FIRMS Code' routine, when the p4 segment id code field needs to be populated, the system executes logic to ensure that the id code is set to the train's firms code value.
Given
A train has FIRMS code information
When
The P4 segment ID code field needs to be populated
Then
The ID code is set to the train's FIRMS code value
R-GCCU358T-cbl-00075Insert P4 Segment into EDI
Action Rules
Business View: Assuming a p4 segment has been fully populated with port information during the 'Insert P4 Segment into EDI' routine, when the segment needs to be added to the edi transmission, the system executes logic to ensure that the p4 segment is inserted into the transmission data structure.
Given
A P4 segment has been fully populated with port information
When
The segment needs to be added to the EDI transmission
Then
The P4 segment is inserted into the transmission data structure
R-GCCU358T-cbl-00076Initialize VID Segment
Process Rules
Business View: Assuming equipment processing is required for edi transmission during the 'Initialize VID Segment' routine, when vid segment processing begins, the system executes logic to ensure that vid segment structure is cleared and ready for data population.
Given
Equipment processing is required for EDI transmission
When
VID segment processing begins
Then
VID segment structure is cleared and ready for data population
R-GCCU358T-cbl-00077Set VID Identifier to 'VID'
Definitional Rules
Business View: Assuming vid segment is being created during the 'Set VID Identifier to 'VID'' routine, when segment identifier needs to be set, the system executes logic to ensure that vid identifier is set to 'vid'.
Given
VID segment is being created
When
Segment identifier needs to be set
Then
VID identifier is set to 'VID'
R-GCCU358T-cbl-00078Get Equipment Type from Train List
Action Rules
Business View: Assuming equipment is being processed at a specific index position during the 'Get Equipment Type from Train List' routine, when equipment type data is required for vid segment, the system executes logic to ensure that equipment type is retrieved from train list at current equipment index and assigned to vid equipment description code.
Given
Equipment is being processed at a specific index position
When
Equipment type data is required for VID segment
Then
Equipment type is retrieved from train list at current equipment index and assigned to VID equipment description code
R-GCCU358T-cbl-00079Get Equipment Initials from Train List
Action Rules
Business View: Assuming equipment is being processed at a specific index position during the 'Get Equipment Initials from Train List' routine, when equipment initials are required for vid segment, the system executes logic to ensure that equipment initials are retrieved from train list at current equipment index and assigned to vid equipment initials.
Given
Equipment is being processed at a specific index position
When
Equipment initials are required for VID segment
Then
Equipment initials are retrieved from train list at current equipment index and assigned to VID equipment initials
R-GCCU358T-cbl-00080Car Number Available in Cargo?
Decision Rules
Business View: <EXCLUSION CRITERIA> If equipment number needs to be assigned to vid segment, and car number from cargo record is not empty occurs during the 'Car Number Available in Cargo?' routine, then the system must guarantee that car number from cargo record is used for vid equipment number.
EXCLUDING
Equipment number needs to be assigned to VID segment
When
Car number from cargo record is not empty
Then
Car number from cargo record is used for VID equipment number
R-GCCU358T-cbl-00083Use Original Load/Empty Status
Decision Rules
Business View: <EXCLUSION CRITERIA> If equipment load/empty status is not 'h' and does not meet weight override conditions, and no special status conversion rules apply occurs during the 'Use Original Load/Empty Status' routine, then the system must guarantee that original load/empty status from train list is used for vid segment.
EXCLUDING
Equipment load/empty status is not 'H' and does not meet weight override conditions
When
No special status conversion rules apply
Then
Original load/empty status from train list is used for VID segment
R-GCCU358T-cbl-00084Insert VID Segment to EDI Data
Action Rules
Business View: Assuming vid segment has been populated with all required equipment data during the 'Insert VID Segment to EDI Data' routine, when vid segment is ready for transmission, the system executes logic to ensure that vid segment is inserted into edi transmission data stream.
Given
VID segment has been populated with all required equipment data
When
VID segment is ready for transmission
Then
VID segment is inserted into EDI transmission data stream
R-GCCU358T-cbl-00085Initialize MBL Segment
Process Rules
Business View: Assuming the system is processing cargo equipment for edi transmission during the 'Initialize MBL Segment' routine, when a new mbl segment needs to be created for cargo, the system executes logic to ensure that the system initializes the mbl segment structure and sets the identifier to 'mbl'.
Given
The system is processing cargo equipment for EDI transmission
When
A new MBL segment needs to be created for cargo
Then
The system initializes the MBL segment structure and sets the identifier to 'MBL'
R-GCCU358T-cbl-00086Valid Port?
Decision Rules
Business View: Assuming the system is processing mbl segment for cargo equipment during the 'Valid Port?' routine, when the port is valid, the system executes logic to ensure that the system extracts scac code and bol number from the mbl export key structure.
Given
The system is processing MBL segment for cargo equipment
When
The port is valid
Then
The system extracts SCAC code and BOL number from the MBL export key structure
R-GCCU358T-cbl-00087Extract SCAC and BOL from Equipment Data
Process Rules
Business View: <EXCLUSION CRITERIA> If the system is processing mbl segment for cargo equipment, and the port is not valid occurs during the 'Extract SCAC and BOL from Equipment Data' routine, then the system must guarantee that the system extracts scac code from equipment scac field and bol number from equipment ccn id field.
EXCLUDING
The system is processing MBL segment for cargo equipment
When
The port is not valid
Then
The system extracts SCAC code from equipment SCAC field and BOL number from equipment CCN ID field
R-GCCU358T-cbl-00088SCAC = 'CPRS'?
Decision Rules
Business View: Assuming the system is processing mbl segment with scac code information during the 'SCAC = 'CPRS'?' routine, when the scac code equals 'cprs', the system executes logic to ensure that the system sets the automated carrier response code to 'y'.
Given
The system is processing MBL segment with SCAC code information
When
The SCAC code equals 'CPRS'
Then
The system sets the automated carrier response code to 'Y'
R-GCCU358T-cbl-00089Lookup SCAC in SS Table
Action Rules
Business View: <EXCLUSION CRITERIA> If the system is processing mbl segment with a non-cprs scac code, and the scac code is not 'cprs' occurs during the 'Lookup SCAC in SS Table' routine, then the system must guarantee that the system initializes scac table key with 'ss' table id, equipment scac code, and origin port code, then performs scac table lookup.
EXCLUDING
The system is processing MBL segment with a non-CPRS SCAC code
When
The SCAC code is not 'CPRS'
Then
The system initializes SCAC table key with 'SS' table ID, equipment SCAC code, and origin port code, then performs SCAC table lookup
R-GCCU358T-cbl-00092Empty Equipment with BOL Type 23?
Decision Rules
Business View: Assuming the system is processing mbl segment for equipment with cargo information during the 'Empty Equipment with BOL Type 23?' routine, when the equipment load/empty status is 'e' and has associated cargo with bol type code '23', the system executes logic to ensure that the system overrides the automated carrier response code to 'y'.
Given
The system is processing MBL segment for equipment with cargo information
When
The equipment load/empty status is 'E' and has associated cargo with BOL type code '23'
Then
The system overrides the automated carrier response code to 'Y'
R-GCCU358T-cbl-00093Insert MBL Segment to EDI
Process Rules
Business View: Assuming the system has completed processing mbl segment with all required data during the 'Insert MBL Segment to EDI' routine, when the mbl segment is ready for transmission, the system executes logic to ensure that the system moves the mbl segment to transmission data and inserts it into the edi stream.
Given
The system has completed processing MBL segment with all required data
When
The MBL segment is ready for transmission
Then
The system moves the MBL segment to transmission data and inserts it into the EDI stream
R-GCCU358T-cbl-00220Is Carrier CPRS?
Decision Rules
Business View: Assuming a carrier scac code is being processed for mbl segment during the 'Is Carrier CPRS?' routine, when the carrier scac code equals 'cprs', the system executes logic to ensure that set the mbl response code to 'y' for automated processing.
Given
A carrier SCAC code is being processed for MBL segment
When
The carrier SCAC code equals 'CPRS'
Then
Set the MBL response code to 'Y' for automated processing
R-GCCU358T-cbl-00094Is Bill Transportation Export?
Decision Rules
Business View: Assuming a cargo record exists with a specific bill of lading type during the 'Is Bill Transportation Export?' routine, when the system processes the cargo record and the bill of lading type is transportation export (88-gcusrt-m1201-transp-export condition is true), the system executes logic to ensure that the system should proceed to create an n9 reference segment.
Given
A cargo record exists with a specific bill of lading type
When
The system processes the cargo record and the bill of lading type is transportation export (88-GCUSRT-M1201-TRANSP-EXPORT condition is true)
Then
The system should proceed to create an N9 reference segment
R-GCCU358T-cbl-00095Initialize N9 Segment
Process Rules
Business View: Assuming the system has determined that an n9 segment needs to be created for a transportation export bill during the 'Initialize N9 Segment' routine, when the n9 segment processing begins, the system executes logic to ensure that the system should initialize the n9 data structure to clear any previous values.
Given
The system has determined that an N9 segment needs to be created for a transportation export bill
When
The N9 segment processing begins
Then
The system should initialize the N9 data structure to clear any previous values
R-GCCU358T-cbl-00096Set Reference Number Qualifier to 'IB'
Definitional Rules
Business View: Assuming an n9 segment is being created for a transportation export bill during the 'Set Reference Number Qualifier to 'IB'' routine, when the system populates the reference number qualifier field, the system executes logic to ensure that the reference number qualifier should be set to 'ib' to indicate in-bond reference.
Given
An N9 segment is being created for a transportation export bill
When
The system populates the reference number qualifier field
Then
The reference number qualifier should be set to 'IB' to indicate in-bond reference
R-GCCU358T-cbl-00097Set Entry Number from Cargo Record
Process Rules
Business View: Assuming an n9 segment is being created and the cargo record contains an entry number during the 'Set Entry Number from Cargo Record' routine, when the system populates the reference number field, the system executes logic to ensure that the entry number from the cargo record (gcusrt-m1202-entry-num) should be assigned to the n9 reference number field.
Given
An N9 segment is being created and the cargo record contains an entry number
When
The system populates the reference number field
Then
The entry number from the cargo record (GCUSRT-M1202-ENTRY-NUM) should be assigned to the N9 reference number field
R-GCCU358T-cbl-00098Insert N9 Segment into EDI Data
Action Rules
Business View: Assuming an n9 segment has been fully populated with reference qualifier and entry number during the 'Insert N9 Segment into EDI Data' routine, when the system processes the completed n9 segment, the system executes logic to ensure that the n9 segment should be moved to the transmission data area and inserted into the edi data stream.
Given
An N9 segment has been fully populated with reference qualifier and entry number
When
The system processes the completed N9 segment
Then
The N9 segment should be moved to the transmission data area and inserted into the EDI data stream
R-GCCU358T-cbl-00102Set Train Status to SENT
Process Rules
Business View: Assuming a train has valid bills of lading or operates through a valid port during the 'Set Train Status to SENT' routine, when the system processes the train for edi transmission, the system executes logic to ensure that the train status is set to sent to indicate successful processing eligibility.
Given
A train has valid bills of lading or operates through a valid port
When
The system processes the train for EDI transmission
Then
The train status is set to SENT to indicate successful processing eligibility
R-GCCU358T-cbl-00103Set Train Send EDI Flag to TRUE
Process Rules
Business View: Assuming a train status has been set to sent during the 'Set Train Send EDI Flag to TRUE' routine, when the system configures transmission settings, the system executes logic to ensure that the edi send flag is set to true to enable electronic data interchange transmission.
Given
A train status has been set to SENT
When
The system configures transmission settings
Then
The EDI send flag is set to TRUE to enable electronic data interchange transmission
R-GCCU358T-cbl-00104Set Train Status to ACK
Process Rules
Business View: <EXCLUSION CRITERIA> If a train has no valid bills of lading and does not operate through a valid port, and the system evaluates the train for processing occurs during the 'Set Train Status to ACK' routine, then the system must guarantee that the train status is set to ack to indicate acknowledgment without transmission.
EXCLUDING
A train has no valid bills of lading and does not operate through a valid port
When
The system evaluates the train for processing
Then
The train status is set to ACK to indicate acknowledgment without transmission
R-GCCU358T-cbl-00105Previously Marked to Send?
Decision Rules
Business View: Assuming a train status has been set to ack during the 'Previously Marked to Send?' routine, when the system determines final edi configuration, the system executes logic to ensure that the system checks if the train was previously marked to send edi transmissions.
Given
A train status has been set to ACK
When
The system determines final EDI configuration
Then
The system checks if the train was previously marked to send EDI transmissions
R-GCCU358T-cbl-00106Set Delete Required Flag
Process Rules
Business View: Assuming a train status is ack and the train was previously marked to send edi during the 'Set Delete Required Flag' routine, when the system finalizes train disposition, the system executes logic to ensure that the delete required flag is set to true to trigger train record cleanup.
Given
A train status is ACK and the train was previously marked to send EDI
When
The system finalizes train disposition
Then
The delete required flag is set to TRUE to trigger train record cleanup
R-GCCU358T-cbl-00107Set Do Not Send EDI Flag
Process Rules
Business View: <EXCLUSION CRITERIA> If a train status is ack and the train was not previously marked to send edi, and the system finalizes edi configuration occurs during the 'Set Do Not Send EDI Flag' routine, then the system must guarantee that the do not send edi flag is set to true to prevent transmission attempts.
EXCLUDING
A train status is ACK and the train was not previously marked to send EDI
When
The system finalizes EDI configuration
Then
The do not send EDI flag is set to TRUE to prevent transmission attempts
R-GCCU358T-cbl-00108Update Train Record
Action Rules
Business View: Assuming train status and edi flags have been determined during the 'Update Train Record' routine, when the system completes status processing, the system executes logic to ensure that all changes are saved to the train record in the database.
Given
Train status and EDI flags have been determined
When
The system completes status processing
Then
All changes are saved to the train record in the database
R-GCCU358T-cbl-00113Has Valid Bills of Lading OR Valid Port?
Decision Rules
Business View: Assuming a train record with bill of lading count and port validation status during the 'Has Valid Bills of Lading OR Valid Port?' routine, when the system evaluates transmission requirements, the system executes logic to ensure that the system proceeds with edi transmission if bill of lading count is greater than zero or port is valid.
Given
A train record with bill of lading count and port validation status
When
The system evaluates transmission requirements
Then
The system proceeds with EDI transmission if bill of lading count is greater than zero OR port is valid
R-GCCU358T-cbl-00114Set Train Status to SENT Mark for EDI Transmission
Process Rules
Business View: Assuming a train with valid bills of lading or valid port status during the 'Set Train Status to SENT Mark for EDI Transmission' routine, when the system determines edi transmission is required, the system executes logic to ensure that the system sets train status to sent and marks train for edi transmission.
Given
A train with valid bills of lading OR valid port status
When
The system determines EDI transmission is required
Then
The system sets train status to SENT and marks train for EDI transmission
R-GCCU358T-cbl-00115Set Train Status to ACK No Transmission Required
Process Rules
Business View: Assuming a train with no valid bills of lading and invalid port status during the 'Set Train Status to ACK No Transmission Required' routine, when the system determines no edi transmission is required, the system executes logic to ensure that the system sets train status to ack indicating no transmission required.
Given
A train with no valid bills of lading AND invalid port status
When
The system determines no EDI transmission is required
Then
The system sets train status to ACK indicating no transmission required
R-GCCU358T-cbl-00116Was Train Previously Marked for EDI Send?
Decision Rules
Business View: Assuming a train with ack status that requires no edi transmission during the 'Was Train Previously Marked for EDI Send?' routine, when the system evaluates previous edi send configuration, the system executes logic to ensure that the system checks if train was previously marked to send edi.
Given
A train with ACK status that requires no EDI transmission
When
The system evaluates previous EDI send configuration
Then
The system checks if train was previously marked to send EDI
R-GCCU358T-cbl-00117Mark Train for Deletion Set DELETE-REQUIRED Flag
Process Rules
Business View: Assuming a train with ack status that was previously marked for edi send during the 'Mark Train for Deletion Set DELETE-REQUIRED Flag' routine, when the system determines train configuration has changed, the system executes logic to ensure that the system sets delete-required flag to mark train for deletion process.
Given
A train with ACK status that was previously marked for EDI send
When
The system determines train configuration has changed
Then
The system sets DELETE-REQUIRED flag to mark train for deletion process
R-GCCU358T-cbl-00118Set Train to DO-NOT-SEND-EDI
Process Rules
Business View: <EXCLUSION CRITERIA> If a train with ack status that was never previously marked for edi send, and the system determines train should not send edi occurs during the 'Set Train to DO-NOT-SEND-EDI' routine, then the system must guarantee that the system sets train configuration to do-not-send-edi.
EXCLUDING
A train with ACK status that was never previously marked for EDI send
When
The system determines train should not send EDI
Then
The system sets train configuration to DO-NOT-SEND-EDI
R-GCCU358T-cbl-00122Has Valid Bills of Lading or Valid Port?
Decision Rules
Business View: Assuming a train with equipment containing cargo records and port validation status during the 'Has Valid Bills of Lading or Valid Port?' routine, when the system checks if the train has valid bills of lading greater than zero or operates through a valid port, the system executes logic to ensure that the system determines whether the train qualifies for edi processing.
Given
A train with equipment containing cargo records and port validation status
When
The system checks if the train has valid bills of lading greater than zero OR operates through a valid port
Then
The system determines whether the train qualifies for EDI processing
R-GCCU358T-cbl-00123Set Train Status to SENT
Process Rules
Business View: Assuming a train that has valid bills of lading greater than zero or operates through a valid port during the 'Set Train Status to SENT' routine, when the system processes the train status update, the system executes logic to ensure that the train status is set to sent, edi sending is enabled, and both train list and train root records are updated accordingly.
Given
A train that has valid bills of lading greater than zero OR operates through a valid port
When
The system processes the train status update
Then
The train status is set to SENT, EDI sending is enabled, and both train list and train root records are updated accordingly
R-GCCU358T-cbl-00125Was Train Previously Set to Send EDI?
Decision Rules
Business View: Assuming a train that is being set to ack status due to no valid cargo during the 'Was Train Previously Set to Send EDI?' routine, when the system evaluates the train's previous edi send configuration, the system executes logic to ensure that the system determines whether the train was previously marked to send edi.
Given
A train that is being set to ACK status due to no valid cargo
When
The system evaluates the train's previous EDI send configuration
Then
The system determines whether the train was previously marked to send EDI
R-GCCU358T-cbl-00126Mark Train for Deletion Required
Process Rules
Business View: Assuming a train with ack status that was previously configured to send edi during the 'Mark Train for Deletion Required' routine, when the system updates the train's edi configuration, the system executes logic to ensure that the train is marked as deletion required in both train list and train root records.
Given
A train with ACK status that was previously configured to send EDI
When
The system updates the train's EDI configuration
Then
The train is marked as deletion required in both train list and train root records
R-GCCU358T-cbl-00127Set Train to Do Not Send EDI
Process Rules
Business View: <EXCLUSION CRITERIA> If a train with ack status that was not previously configured to send edi, and the system updates the train's edi configuration occurs during the 'Set Train to Do Not Send EDI' routine, then the system must guarantee that the train is marked as do not send edi in both train list and train root records.
EXCLUDING
A train with ACK status that was not previously configured to send EDI
When
The system updates the train's EDI configuration
Then
The train is marked as do not send EDI in both train list and train root records
R-GCCU358T-cbl-00128Update Train Status in Database
Action Rules
Business View: Assuming a train with updated status and edi configuration settings during the 'Update Train Status in Database' routine, when the system performs the database update operation, the system executes logic to ensure that the train root segment is replaced in the database with the new status information.
Given
A train with updated status and EDI configuration settings
When
The system performs the database update operation
Then
The train root segment is replaced in the database with the new status information
R-GCCU358T-cbl-00130Trigger Train Deletion Process
Action Rules
Business View: Assuming a train that has been marked as deletion required during the 'Trigger Train Deletion Process' routine, when the system initiates cleanup processes, the system executes logic to ensure that the gct1121e deletion process is spawned to handle removal of associated edi transmission records.
Given
A train that has been marked as deletion required
When
The system initiates cleanup processes
Then
The GCT1121E deletion process is spawned to handle removal of associated EDI transmission records
R-GCCU358T-cbl-00131Set EDI Send Function Name
Action Rules
Business View: Assuming the system needs to initiate edi transmission processing during the 'Set EDI Send Function Name' routine, when the edi send function process is started, the system executes logic to ensure that the system sets the edi send function name identifier to true.
Given
The system needs to initiate EDI transmission processing
When
The EDI send function process is started
Then
The system sets the EDI send function name identifier to TRUE
R-GCCU358T-cbl-00132Change to EDI Send Function
Process Rules
Business View: Assuming the edi send function name has been set during the 'Change to EDI Send Function' routine, when the system needs to change processing context, the system executes logic to ensure that the system performs the function change operation to switch to edi send context.
Given
The EDI send function name has been set
When
The system needs to change processing context
Then
The system performs the function change operation to switch to EDI send context
R-GCCU358T-cbl-00133Set Security to High Values
Authorization Rules
Business View: Assuming the system is preparing an edi transmission during the 'Set Security to High Values' routine, when security parameters need to be established, the system executes logic to ensure that the system sets the security byte to high-values for maximum security.
Given
The system is preparing an EDI transmission
When
Security parameters need to be established
Then
The system sets the security byte to HIGH-VALUES for maximum security
R-GCCU358T-cbl-00134Set Transmission Number
Definitional Rules
Business View: Assuming a transmission number has been generated during root processing during the 'Set Transmission Number' routine, when the edi message is being prepared for transmission, the system executes logic to ensure that the system assigns the working storage transmission number to the edi message transmission number field.
Given
A transmission number has been generated during root processing
When
The EDI message is being prepared for transmission
Then
The system assigns the working storage transmission number to the EDI message transmission number field
R-GCCU358T-cbl-00135Prepare EDI Send Message
Process Rules
Business View: Assuming the transmission number and security parameters have been set during the 'Prepare EDI Send Message' routine, when the edi message needs to be formatted for transmission, the system executes logic to ensure that the system moves the edi input structure to the message output text field.
Given
The transmission number and security parameters have been set
When
The EDI message needs to be formatted for transmission
Then
The system moves the EDI input structure to the message output text field
R-GCCU358T-cbl-00136Set Message Length
Validation Rules
Business View: Assuming the edi message has been prepared during the 'Set Message Length' routine, when the message length needs to be established, the system executes logic to ensure that the system sets the edi send function length indicator to true.
Given
The EDI message has been prepared
When
The message length needs to be established
Then
The system sets the EDI send function length indicator to TRUE
R-GCCU358T-cbl-00137Insert and Purge Message
Action Rules
Business View: Assuming the edi message is properly formatted with correct length and security during the 'Insert and Purge Message' routine, when the message is ready for transmission, the system executes logic to ensure that the system performs the insert and purge message operation to complete the edi transmission.
Given
The EDI message is properly formatted with correct length and security
When
The message is ready for transmission
Then
The system performs the insert and purge message operation to complete the EDI transmission
R-GCCU358T-cbl-00146Has Valid Bills or Valid Port?
Decision Rules
Business View: Assuming date and time have been set for transaction during the 'Has Valid Bills or Valid Port?' routine, when message type needs to be determined for logging, the system executes logic to ensure that system should check if bill of lading quantity is greater than zero or if port is valid.
Given
Date and time have been set for transaction
When
Message type needs to be determined for logging
Then
System should check if bill of lading quantity is greater than zero or if port is valid
R-GCCU358T-cbl-00147Set Success Message - Blank
Process Rules
Business View: Assuming valid bills of lading exist or port is valid during the 'Set Success Message - Blank' routine, when success message needs to be set, the system executes logic to ensure that log message should be set to blank spaces indicating successful processing.
Given
Valid bills of lading exist or port is valid
When
Success message needs to be set
Then
Log message should be set to blank spaces indicating successful processing
R-GCCU358T-cbl-00149Processing Mode for No Cargo?
Decision Rules
Business View: Assuming no cargo action code has been set during the 'Processing Mode for No Cargo?' routine, when processing mode needs to be determined for message assignment, the system executes logic to ensure that system should check if transaction is running in foreground mode for no cargo scenario.
Given
No cargo action code has been set
When
Processing mode needs to be determined for message assignment
Then
System should check if transaction is running in foreground mode for no cargo scenario
R-GCCU358T-cbl-00150Set Train Updated Message
Process Rules
Business View: Assuming processing is in foreground mode and no cargo exists during the 'Set Train Updated Message' routine, when train updated message needs to be set, the system executes logic to ensure that zzz train update message should be assigned to the log entry.
Given
Processing is in foreground mode and no cargo exists
When
Train updated message needs to be set
Then
ZZZ train update message should be assigned to the log entry
R-GCCU358T-cbl-00151Set Train Added Message
Process Rules
Business View: Assuming processing is in background mode and no cargo exists during the 'Set Train Added Message' routine, when train added message needs to be set, the system executes logic to ensure that zzz train added message should be assigned to the log entry.
Given
Processing is in background mode and no cargo exists
When
Train added message needs to be set
Then
ZZZ train added message should be assigned to the log entry
R-GCCU358T-cbl-00152Send Log Message to System
Action Rules
Business View: Assuming log message has been prepared with appropriate content during the 'Send Log Message to System' routine, when log message needs to be sent to system, the system executes logic to ensure that log input should be moved to message output and log update function length should be set and message should be sent via purge message process.
Given
Log message has been prepared with appropriate content
When
Log message needs to be sent to system
Then
Log input should be moved to message output and log update function length should be set and message should be sent via purge message process
R-GCCU358T-cbl-00163Write Message to Queue
Action Rules
Business View: Assuming the customs transaction has been sent to canadian customs during the 'Write Message to Queue' routine, when the system queues the message for processing, the system executes logic to ensure that the system must write the message to the queue using writmsgl with message code 's'.
Given
The customs transaction has been sent to Canadian customs
When
The system queues the message for processing
Then
The system must write the message to the queue using WRITMSGL with message code 'S'
R-GCCU358T-cbl-00272Convert Equipment Number to Standard Format
Computation Rules
Business View: Assuming a train equipment record with equipment number in the train list during the 'Convert Equipment Number to Standard Format' routine, when processing equipment for canadian customs transmission, the system executes logic to ensure that the equipment number is converted to 6-digit car number format and stored in the canadian output table.
Given
A train equipment record with equipment number in the train list
When
Processing equipment for Canadian customs transmission
Then
The equipment number is converted to 6-digit car number format and stored in the Canadian output table
R-GCCU358T-cbl-00275Convert to 6-Digit Car Number Format
Computation Rules
Business View: Assuming an equipment number in the working storage car number field during the 'Convert to 6-Digit Car Number Format' routine, when converting to canadian transmission format, the system executes logic to ensure that the equipment number is formatted as a 6-digit car number.
Given
An equipment number in the working storage car number field
When
Converting to Canadian transmission format
Then
The equipment number is formatted as a 6-digit car number
R-GCCU358T-cbl-00276Store Converted Number in Canadian Output Table
Process Rules
Business View: Assuming a 6-digit formatted car number and a valid equipment index position during the 'Store Converted Number in Canadian Output Table' routine, when storing converted car number for canadian transmission, the system executes logic to ensure that the 6-digit car number is stored in the canadian customs output table at the current equipment position.
Given
A 6-digit formatted car number and a valid equipment index position
When
Storing converted car number for Canadian transmission
Then
The 6-digit car number is stored in the Canadian customs output table at the current equipment position
Business View: Assuming a train has been marked for deletion required during the 'Initialize Delete Message Structure' routine, when the delete transaction process is initiated, the system executes logic to ensure that the delete message structure gcx112-input is initialized to spaces.
Given
A train has been marked for deletion required
When
The delete transaction process is initiated
Then
The delete message structure GCX112-INPUT is initialized to spaces
R-GCCU358T-cbl-00176Set Train ID in Delete Message
Definitional Rules
Business View: Assuming a delete message structure is being prepared during the 'Set Train ID in Delete Message' routine, when setting the train identifier in the delete message, the system executes logic to ensure that the train's us customer train id is moved to the gcx112-train-or-us-ccn field.
Given
A delete message structure is being prepared
When
Setting the train identifier in the delete message
Then
The train's US customer train ID is moved to the GCX112-TRAIN-OR-US-CCN field
R-GCCU358T-cbl-00177Set Security Byte to High Value
Authorization Rules
Business View: Assuming a delete message is being prepared during the 'Set Security Byte to High Value' routine, when setting security authorization for the delete transaction, the system executes logic to ensure that the security byte gcx112-security-byte is set to high-value for maximum authorization.
Given
A delete message is being prepared
When
Setting security authorization for the delete transaction
Then
The security byte GCX112-SECURITY-BYTE is set to HIGH-VALUE for maximum authorization
R-GCCU358T-cbl-00178Set Action Code to 'TD' - Train Delete
Definitional Rules
Business View: Assuming a delete message structure is being prepared during the 'Set Action Code to 'TD' - Train Delete' routine, when setting the action code for train deletion, the system executes logic to ensure that the action code gcx112-action-code is set to 'td' to indicate train delete operation.
Given
A delete message structure is being prepared
When
Setting the action code for train deletion
Then
The action code GCX112-ACTION-CODE is set to 'TD' to indicate train delete operation
R-GCCU358T-cbl-00179Set Train Type Indicator to US Train
Definitional Rules
Business View: Assuming a delete message is being prepared for a train during the 'Set Train Type Indicator to US Train' routine, when setting the train type indicator, the system executes logic to ensure that the train type indicator gcx112-us-train is set to true.
Given
A delete message is being prepared for a train
When
Setting the train type indicator
Then
The train type indicator GCX112-US-TRAIN is set to TRUE
R-GCCU358T-cbl-00180Prepare Delete Message for GCT1121E
Process Rules
Business View: Assuming all delete message fields have been populated during the 'Prepare Delete Message for GCT1121E' routine, when preparing the message for transaction processing, the system executes logic to ensure that the complete gcx112-input structure is moved to gct1121e-msg for processing.
Given
All delete message fields have been populated
When
Preparing the message for transaction processing
Then
The complete GCX112-INPUT structure is moved to GCT1121E-MSG for processing
R-GCCU358T-cbl-00181Change to Alternative PCB
Action Rules
Business View: Assuming a delete message is ready to be sent during the 'Change to Alternative PCB' routine, when initiating the delete transaction processing, the system executes logic to ensure that the system changes to the alternative pcb using chng function with alt-pcb.
Given
A delete message is ready to be sent
When
Initiating the delete transaction processing
Then
The system changes to the alternative PCB using CHNG function with ALT-PCB
R-GCCU358T-cbl-00182Send Delete Message to Message Queue
Action Rules
Business View: Assuming the delete message is prepared and pcb is set to alternative during the 'Send Delete Message to Message Queue' routine, when sending the delete message for processing, the system executes logic to ensure that the delete message is written to the message queue using writmsgl with the prepared message structure.
Given
The delete message is prepared and PCB is set to alternative
When
Sending the delete message for processing
Then
The delete message is written to the message queue using WRITMSGL with the prepared message structure
R-GCCU358T-cbl-00183Purge Message from Queue
Process Rules
Business View: Assuming the delete message has been written to the message queue during the 'Purge Message from Queue' routine, when completing the delete transaction processing, the system executes logic to ensure that the message is purged from the queue using purg function with alt-pcb.
Given
The delete message has been written to the message queue
When
Completing the delete transaction processing
Then
The message is purged from the queue using PURG function with ALT-PCB
R-GCCU358T-cbl-00187Export Type Valid?
Decision Rules
Business View: Assuming a cargo record exists with bol type codes and manifest type codes during the 'Export Type Valid?' routine, when the system evaluates the cargo type codes, the system executes logic to ensure that the system determines if the cargo is classified as export, returned us goods, empty residue, transport export, immediate export, or multi-port.
Given
A cargo record exists with BOL type codes and manifest type codes
When
The system evaluates the cargo type codes
Then
The system determines if the cargo is classified as Export, Returned US Goods, Empty Residue, Transport Export, Immediate Export, or Multi-Port
R-GCCU358T-cbl-00242Is Immediate Export?
Validation Rules
Business View: Assuming a cargo record exists with an in-bond type code and previous export validations failed during the 'Is Immediate Export?' routine, when the in-bond type code indicates immediate export, the system executes logic to ensure that proceed to validate port authorization for cargo acceptance.
Given
A cargo record exists with an in-bond type code and previous export validations failed
When
The in-bond type code indicates immediate export
Then
Proceed to validate port authorization for cargo acceptance
R-GCCU358T-cbl-00197Equipment Load/Empty Status = 'H'?
Decision Rules
Business View: Assuming an equipment piece is being processed for vid segment creation during the 'Equipment Load/Empty Status = 'H'?' routine, when the equipment's load/empty status in the train list is 'h' (hold), the system executes logic to ensure that the vid segment load/empty status code is set to 'e' (empty).
Given
An equipment piece is being processed for VID segment creation
When
The equipment's load/empty status in the train list is 'H' (Hold)
Then
The VID segment load/empty status code is set to 'E' (Empty)
R-GCCU358T-cbl-00198Has Cargo AND Status = 'E' AND Weight > 1?
Decision Rules
Business View: Assuming an equipment piece has a us ccn key (cargo reference) and the train list shows load/empty status as 'e' (empty) during the 'Has Cargo AND Status = 'E' AND Weight > 1?' routine, when the associated cargo record shows a weight greater than 1, the system executes logic to ensure that the vid segment load/empty status code is set to 'l' (loaded).
Given
An equipment piece has a US CCN key (cargo reference) and the train list shows load/empty status as 'E' (Empty)
When
The associated cargo record shows a weight greater than 1
Then
The VID segment load/empty status code is set to 'L' (Loaded)
R-GCCU358T-cbl-00199Keep Original Status
Decision Rules
Business View: <EXCLUSION CRITERIA> If an equipment piece is being processed and does not have hold status 'h', and the equipment either has no cargo, status is not 'e', or cargo weight is 1 or less occurs during the 'Keep Original Status' routine, then the system must guarantee that the vid segment load/empty status code is set to the original value from the train list.
EXCLUDING
An equipment piece is being processed and does not have hold status 'H'
When
The equipment either has no cargo, status is not 'E', or cargo weight is 1 or less
Then
The VID segment load/empty status code is set to the original value from the train list
R-GCCU358T-cbl-00200Create VID Segment with Equipment Details
Process Rules
Business View: Assuming equipment details and determined load/empty status are available during the 'Create VID Segment with Equipment Details' routine, when processing equipment for vid segment creation, the system executes logic to ensure that a vid segment is created with equipment type, initial, number, and load/empty status code.
Given
Equipment details and determined load/empty status are available
When
Processing equipment for VID segment creation
Then
A VID segment is created with equipment type, initial, number, and load/empty status code
R-GCCU358T-cbl-00201Insert VID Segment to EDI
Action Rules
Business View: Assuming a vid segment has been created with all required equipment details during the 'Insert VID Segment to EDI' routine, when the vid segment is ready for transmission, the system executes logic to ensure that the vid segment is inserted into the edi transmission data structure.
Given
A VID segment has been created with all required equipment details
When
The VID segment is ready for transmission
Then
The VID segment is inserted into the EDI transmission data structure
Module: GCCMQERR 10 EDI Rules Found
R-GCCMQERR-cbl-00001Error Code Lookup
Process Rules
Business View: Assuming an input error number is provided and an error table exists with error numbers and corresponding text messages during the 'Error Code Lookup' routine, when the system performs a sequential search through the error table starting from index 1 and incrementing by 1, the system executes logic to ensure that the search continues until either the input error number matches an error number in the table or an empty entry (spaces) is encountered indicating end of table.
Given
An input error number is provided and an error table exists with error numbers and corresponding text messages
When
The system performs a sequential search through the error table starting from index 1 and incrementing by 1
Then
The search continues until either the input error number matches an error number in the table OR an empty entry (spaces) is encountered indicating end of table
R-GCCMQERR-cbl-00002Error Message Retrieval
Decision Rules
Business View: Assuming the error table search has completed and the input error number was found in the table during the 'Error Message Retrieval' routine, when the error number at the current index position matches the input error number, the system executes logic to ensure that the system moves the corresponding error text from the table to the output message text field.
Given
The error table search has completed and the input error number was found in the table
When
The error number at the current index position matches the input error number
Then
The system moves the corresponding error text from the table to the output message text field
R-GCCMQERR-cbl-00003Unknown Error Handling
Decision Rules
Business View: <EXCLUSION CRITERIA> If the error table search has completed and the input error number was not found in the table, and the error number at the current index position does not match the input error number occurs during the 'Unknown Error Handling' routine, then the system must guarantee that the system moves the input error number to the unknown number field and moves the unknown message to the output message text field.
EXCLUDING
The error table search has completed and the input error number was not found in the table
When
The error number at the current index position does not match the input error number
Then
The system moves the input error number to the unknown number field AND moves the unknown message to the output message text field
R-GCCMQERR-cbl-00004Initialize Search Index to 1
Process Rules
Business View: Assuming an error number needs to be looked up in the error message table during the 'Initialize Search Index to 1' routine, when the error lookup process begins, the system executes logic to ensure that the search index is set to position 1 to start searching from the beginning of the error table.
Given
An error number needs to be looked up in the error message table
When
The error lookup process begins
Then
The search index is set to position 1 to start searching from the beginning of the error table
R-GCCMQERR-cbl-00005Does Error Number Match Input?
Validation Rules
Business View: Assuming the system is examining an error number at the current table position during the 'Does Error Number Match Input?' routine, when the error number at the current index is compared with the input error number, the system executes logic to ensure that if the error numbers match exactly, the search is successful and the corresponding error message is identified.
Given
The system is examining an error number at the current table position
When
The error number at the current index is compared with the input error number
Then
If the error numbers match exactly, the search is successful and the corresponding error message is identified
R-GCCMQERR-cbl-00008Search Complete - Match Found
Decision Rules
Business View: Assuming a matching error number has been found in the error table during the 'Search Complete - Match Found' routine, when the search process completes successfully, the system executes logic to ensure that the corresponding error message text is moved to the output message field.
Given
A matching error number has been found in the error table
When
The search process completes successfully
Then
The corresponding error message text is moved to the output message field
R-GCCMQERR-cbl-00009Search Complete - End of Table Reached
Decision Rules
Business View: Assuming the end of the error table has been reached without finding a matching error number during the 'Search Complete - End of Table Reached' routine, when the search process completes without success, the system executes logic to ensure that the input error number is stored in the unknown number field and a default unknown error message is moved to the output message field.
Given
The end of the error table has been reached without finding a matching error number
When
The search process completes without success
Then
The input error number is stored in the unknown number field and a default unknown error message is moved to the output message field
R-GCCMQERR-cbl-00010Retrieve Error Message Text from Table
Action Rules
Business View: Assuming an error code has been found in the error message table at a specific index position during the 'Retrieve Error Message Text from Table' routine, when the error code at the current index position equals the input error number, the system executes logic to ensure that the corresponding error message text at that same index position is moved to the output message field.
Given
An error code has been found in the error message table at a specific index position
When
The error code at the current index position equals the input error number
Then
The corresponding error message text at that same index position is moved to the output message field
R-GCCMQERR-cbl-00011Move Input Error Number to Unknown Number Field
Decision Rules
Business View: <EXCLUSION CRITERIA> If an error code has been searched in the error message table and error-number (error-index) does not equal input-error-number, and the system determines the error code is not found in the table occurs during the 'Move Input Error Number to Unknown Number Field' routine, then the system must guarantee that the input error number is moved to the unknown number field for inclusion in the default message.
EXCLUDING
An error code has been searched in the error message table and ERROR-NUMBER (ERROR-INDEX) does not equal INPUT-ERROR-NUMBER
When
The system determines the error code is not found in the table
Then
The input error number is moved to the unknown number field for inclusion in the default message
R-GCCMQERR-cbl-00012Move Unknown Message Template to Output
Action Rules
Business View: <EXCLUSION CRITERIA> If an error code is not found in the error message table and the unknown number field has been populated, and the system needs to provide an error message for an unrecognized error code occurs during the 'Move Unknown Message Template to Output' routine, then the system must guarantee that the unknown message template is moved to the output message text field.
EXCLUDING
An error code is not found in the error message table and the unknown number field has been populated
When
The system needs to provide an error message for an unrecognized error code
Then
The unknown message template is moved to the output message text field
Module: GCCADDT 303 EDI Rules Found
R-GCCADDT-cbl-0001911:Validate Cargo Status
Validation Rules
Business View: Assuming cargo has tr created flag set to 'y' during the '11:Validate Cargo Status' routine, when cargo type is immediate transport, the system executes logic to ensure that set tr required for it flag to true.
Given
Cargo has TR created flag set to 'Y'
When
Cargo type is immediate transport
Then
Set TR required for IT flag to true
R-GCCADDT-cbl-0002212:Check Bond Requirements
Policy Rules
Business View: <EXCLUSION CRITERIA> If cargo is us-canada-us type and tr is not created and cargo status is release, and bond requirements are checked occurs during the '12:Check Bond Requirements' routine, then the system must guarantee that generate message twenty-three and create it export special manifest.
EXCLUDING
Cargo is US-Canada-US type AND TR is not created AND cargo status is RELEASE
When
Bond requirements are checked
Then
Generate message twenty-three AND create IT export special manifest
R-GCCADDT-cbl-0002312:Check Bond Requirements
Policy Rules
Business View: <EXCLUSION CRITERIA> If cargo is immediate transport type and tr is not created, and bond requirements are checked occurs during the '12:Check Bond Requirements' routine, then the system must guarantee that generate message twenty-three and create it export special manifest.
EXCLUDING
Cargo is immediate transport type AND TR is not created
When
Bond requirements are checked
Then
Generate message twenty-three AND create IT export special manifest
R-GCCADDT-cbl-0002412:Check Bond Requirements
Policy Rules
Business View: <EXCLUSION CRITERIA> If cargo is default type and tr is not created and cargo status is release, and bond requirements are checked occurs during the '12:Check Bond Requirements' routine, then the system must guarantee that generate message twenty-three and create it export special manifest.
EXCLUDING
Cargo is default type AND TR is not created AND cargo status is RELEASE
When
Bond requirements are checked
Then
Generate message twenty-three AND create IT export special manifest
R-GCCADDT-cbl-0002513:Validate Waybill Existence
Validation Rules
Business View: <EXCLUSION CRITERIA> If container is found, and waybill is not found occurs during the '13:Validate Waybill Existence' routine, then the system must guarantee that generate message ten error.
EXCLUDING
Container is found
When
Waybill is not found
Then
Generate message ten error
R-GCCADDT-cbl-0002613:Validate Waybill Existence
Validation Rules
Business View: <EXCLUSION CRITERIA> If waybill is found and no cargo is found and idler indicator is not spaces, and waybill validation is performed occurs during the '13:Validate Waybill Existence' routine, then the system must guarantee that generate message fifteen with waybill root key and date.
EXCLUDING
Waybill is found AND no cargo is found AND idler indicator is not spaces
When
Waybill validation is performed
Then
Generate message fifteen with waybill root key and date
R-GCCADDT-cbl-0002713:Validate Waybill Existence
Policy Rules
Business View: <EXCLUSION CRITERIA> If waybill is found and no cargo is found and container is not found and equipment is not conveying car and origin country is us and destination country is us, and waybill validation is performed occurs during the '13:Validate Waybill Existence' routine, then the system must guarantee that generate message twenty-three and create us-us detour special manifest.
EXCLUDING
Waybill is found AND no cargo is found AND container is not found AND equipment is not conveying car AND origin country is US AND destination country is US
When
Waybill validation is performed
Then
Generate message twenty-three AND create US-US detour special manifest
R-GCCADDT-cbl-0002814:Validate Cargo Export Status
Validation Rules
Business View: Assuming cargo bond type is te and vessel name 23rd character is t during the '14:Validate Cargo Export Status' routine, when export status is validated, the system executes logic to ensure that generate message seventeen error.
Given
Cargo bond type is TE AND vessel name 23rd character is T
When
Export status is validated
Then
Generate message seventeen error
R-GCCADDT-cbl-0002914:Validate Cargo Export Status
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo bond type is not te or mt and vessel name is not train, and export status is validated occurs during the '14:Validate Cargo Export Status' routine, then the system must guarantee that generate message seventeen error.
EXCLUDING
Cargo bond type is not TE or MT AND vessel name is not TRAIN
When
Export status is validated
Then
Generate message seventeen error
R-GCCADDT-cbl-0003014:Validate Cargo Export Status
Validation Rules
Business View: Assuming cargo status is pending or deleted or error during the '14:Validate Cargo Export Status' routine, when export status is validated, the system executes logic to ensure that generate message sixteen error.
Given
Cargo status is pending OR deleted OR error
When
Export status is validated
Then
Generate message sixteen error
R-GCCADDT-cbl-0003114:Validate Cargo Export Status
Authorization Rules
Business View: <EXCLUSION CRITERIA> If cargo bond type is tr and cargo status is export and cargo is billed as cprs and user security level is not s, and export status is validated occurs during the '14:Validate Cargo Export Status' routine, then the system must guarantee that generate message twelve error.
EXCLUDING
Cargo bond type is TR AND cargo status is EXPORT AND cargo is billed as CPRS AND user security level is not S
When
Export status is validated
Then
Generate message twelve error
R-GCCADDT-cbl-0003215:Validate Train Attachment
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo bond type is mt and vessel name is not train or spaces and train crossing port does not match cargo location, and train attachment is validated occurs during the '15:Validate Train Attachment' routine, then the system must guarantee that generate message twenty-five error.
EXCLUDING
Cargo bond type is MT AND vessel name is not TRAIN or spaces AND train crossing port does not match cargo location
When
Train attachment is validated
Then
Generate message twenty-five error
R-GCCADDT-cbl-0003316:Validate Port Codes
Policy Rules
Business View: <EXCLUSION CRITERIA> If cargo is transport export type and tr is not created and cargo status is not export and cargo is billed as cprs and cargo location does not match train crossing port, and port codes are validated occurs during the '16:Validate Port Codes' routine, then the system must guarantee that generate message twenty and create change port special manifest.
EXCLUDING
Cargo is transport export type AND TR is not created AND cargo status is not EXPORT AND cargo is billed as CPRS AND cargo location does not match train crossing port
When
Port codes are validated
Then
Generate message twenty AND create change port special manifest
R-GCCADDT-cbl-0003417:Validate Manifest Updates
Policy Rules
Business View: <EXCLUSION CRITERIA> If cargo is us-canada-us type and cargo is master in-bond and train crossing port does not match cargo location, and manifest updates are validated occurs during the '17:Validate Manifest Updates' routine, then the system must guarantee that process diversion case.
EXCLUDING
Cargo is US-Canada-US type AND cargo is master in-bond AND train crossing port does not match cargo location
When
Manifest updates are validated
Then
Process diversion case
R-GCCADDT-cbl-0003518:Process Diversion Cases
Process Rules
Business View: Assuming master in-bond cargo requires port diversion during the '18:Process Diversion Cases' routine, when diversion processing is initiated, the system executes logic to ensure that generate message twenty and create diversion special manifest.
Given
Master in-bond cargo requires port diversion
When
Diversion processing is initiated
Then
Generate message twenty AND create diversion special manifest
R-GCCADDT-cbl-0003619:Process US-to-US Detours
Process Rules
Business View: Assuming shipment requires us-to-us detour processing during the '19:Process US-to-US Detours' routine, when us-to-us detour is processed, the system executes logic to ensure that set us-us detour manifest type and clear ccn field and populate equipment id and populate waybill information.
Given
Shipment requires US-to-US detour processing
When
US-to-US detour is processed
Then
Set US-US detour manifest type AND clear CCN field AND populate equipment ID AND populate waybill information
R-GCCADDT-cbl-0003720:Create Special Manifests
Action Rules
Business View: Assuming special manifest creation is required during the '20:Create Special Manifests' routine, when manifest type is determined, the system executes logic to ensure that set diversion manifest if diversion scenario or set it export manifest with equipment and waybill data if it export scenario or set change port manifest if port change scenario or set us-us detour manifest with cleared ccn if detour scenario.
Given
Special manifest creation is required
When
Manifest type is determined
Then
Set diversion manifest IF diversion scenario OR set IT export manifest with equipment and waybill data IF IT export scenario OR set change port manifest IF port change scenario OR set US-US detour manifest with cleared CCN IF detour scenario
R-GCCADDT-cbl-0003922:Validate Train Arrival Status
Validation Rules
Business View: Assuming train has arrived and first report ccn field is empty during the '22:Validate Train Arrival Status' routine, when train arrival status is validated, the system executes logic to ensure that generate message twenty-six error.
Given
Train has arrived AND first report CCN field is empty
When
Train arrival status is validated
Then
Generate message twenty-six error
R-GCCADDT-cbl-0004023:Generate Error Messages
Validation Rules
Business View: <EXCLUSION CRITERIA> If transport requirement is needed but not found, and error message generation is performed occurs during the '23:Generate Error Messages' routine, then the system must guarantee that generate message twenty-two if tr required for it but not found or generate message thirty if te required for te but not found or generate message thirty-one if tr required for default but not found or generate message thirty-two if tr required for tr but not found or generate message thirty-three if te required for 88 but not found.
EXCLUDING
Transport requirement is needed but not found
When
Error message generation is performed
Then
Generate message twenty-two IF TR required for IT but not found OR generate message thirty IF TE required for TE but not found OR generate message thirty-one IF TR required for default but not found OR generate message thirty-two IF TR required for TR but not found OR generate message thirty-three IF TE required for 88 but not found
R-GCCADDT-cbl-0004124:Finalize Report Processing
Process Rules
Business View: Assuming all equipment processing is complete during the '24:Finalize Report Processing' routine, when report finalization is performed, the system executes logic to ensure that set last report line index and count error messages and count warning messages and count information messages and process any special manifests if no errors exist.
Given
All equipment processing is complete
When
Report finalization is performed
Then
Set last report line index AND count error messages AND count warning messages AND count information messages AND process any special manifests if no errors exist
R-GCCADDT-cbl-00042Errors Found?
Decision Rules
Business View: Assuming report processing is finalized during the 'Errors Found?' routine, when final result is determined, the system executes logic to ensure that set no waybill status if information messages exist or set error status and send to customs if error messages exist or set ok status and return report data if no errors exist.
Given
Report processing is finalized
When
Final result is determined
Then
Set no waybill status IF information messages exist OR set error status and send to customs IF error messages exist OR set OK status and return report data IF no errors exist
R-GCCADDT-cbl-0004325:Send Report to Customs
Action Rules
Business View: Assuming error messages exist in the report during the '25:Send Report to Customs' routine, when report transmission is initiated, the system executes logic to ensure that set customs user code and set destination filename to request and populate subject with user id, train, and timestamp and call emcsend2 to transmit report and generate system error if transmission fails.
Given
Error messages exist in the report
When
Report transmission is initiated
Then
Set customs user code AND set destination filename to REQUEST AND populate subject with user ID, train, and timestamp AND call EMCSEND2 to transmit report AND generate system error IF transmission fails
R-GCCADDT-cbl-0004426:Spawn GCX101 Processing
Action Rules
Business View: Assuming special manifests were created during processing during the '26:Spawn GCX101 Processing' routine, when manifest spawning is performed, the system executes logic to ensure that for each special manifest: copy manifest data to message format and call cims to change to export pcb and call writmsgl to write message and call cims to purge export pcb.
Given
Special manifests were created during processing
When
Manifest spawning is performed
Then
For each special manifest: copy manifest data to message format AND call CIMS to change to export PCB AND call WRITMSGL to write message AND call CIMS to purge export PCB
R-GCCADDT-cbl-0004527:Return Processing Results
Process Rules
Business View: Assuming all processing and error handling is complete during the '27:Return Processing Results' routine, when results are returned, the system executes logic to ensure that return report table and ccn key array if processing successful or return error status if errors occurred or return no waybill status if information messages exist.
Given
All processing and error handling is complete
When
Results are returned
Then
Return report table and CCN key array IF processing successful OR return error status IF errors occurred OR return no waybill status IF information messages exist
R-GCCADDT-cbl-00051Initialize Database Segments
Process Rules
Business View: Assuming the program will interact with database segments during the 'Initialize Database Segments' routine, when database segment areas need initialization, the system executes logic to ensure that the emtz-root-segment should be initialized to prepare for database operations.
Given
The program will interact with database segments
When
Database segment areas need initialization
Then
The EMTZ-ROOT-SEGMENT should be initialized to prepare for database operations
R-GCCADDT-cbl-00056Clear Special Manifest Table
Process Rules
Business View: Assuming the system may need to generate special manifests during the 'Clear Special Manifest Table' routine, when special manifest table needs initialization, the system executes logic to ensure that ws-gcx101-spawn-table should be set to spaces to clear all previous manifest data.
Given
The system may need to generate special manifests
When
Special manifest table needs initialization
Then
WS-GCX101-SPAWN-TABLE should be set to SPACES to clear all previous manifest data
R-GCCADDT-cbl-00064Generate TR Bond Missing Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo has tr created for it flag set to 'y' and cargo type is m1201-imm-transp, and tr bond is required for it but tr is not found occurs during the 'Generate TR Bond Missing Error' routine, then the system must guarantee that message twenty-two error is generated and tr requirement flag is set.
EXCLUDING
Cargo has TR created for IT flag set to 'Y' and cargo type is M1201-IMM-TRANSP
When
TR bond is required for IT but TR is not found
Then
Message twenty-two error is generated and TR requirement flag is set
R-GCCADDT-cbl-00065Generate TE Bond Missing Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo has tr created for te flag set to 'y' and cargo type is m1201-transp-export, and te bond is required for te but te is not found occurs during the 'Generate TE Bond Missing Error' routine, then the system must guarantee that message thirty error is generated and te requirement flag is set.
EXCLUDING
Cargo has TR created for TE flag set to 'Y' and cargo type is M1201-TRANSP-EXPORT
When
TE bond is required for TE but TE is not found
Then
Message thirty error is generated and TE requirement flag is set
R-GCCADDT-cbl-00066Generate Bond Requirement Errors
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo has tr created flag set and cargo type is m1109-default, and tr bond is required for default transport but tr is not found occurs during the 'Generate Bond Requirement Errors' routine, then the system must guarantee that message thirty-one error is generated.
EXCLUDING
Cargo has TR created flag set and cargo type is M1109-DEFAULT
When
TR bond is required for default transport but TR is not found
Then
Message thirty-one error is generated
R-GCCADDT-cbl-00067Generate Bond Requirement Errors
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo has tr created flag set and cargo type is m1201-us-can-us, and tr bond is required for us-canada-us transport but tr is not found occurs during the 'Generate Bond Requirement Errors' routine, then the system must guarantee that message thirty-two error is generated.
EXCLUDING
Cargo has TR created flag set and cargo type is M1201-US-CAN-US
When
TR bond is required for US-Canada-US transport but TR is not found
Then
Message thirty-two error is generated
R-GCCADDT-cbl-00068Generate Bond Requirement Errors
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo has tr created flag set and cargo type is m1109-export, and te bond is required for export transport but te is not found occurs during the 'Generate Bond Requirement Errors' routine, then the system must guarantee that message thirty-three error is generated.
EXCLUDING
Cargo has TR created flag set and cargo type is M1109-EXPORT
When
TE bond is required for export transport but TE is not found
Then
Message thirty-three error is generated
R-GCCADDT-cbl-00083Generate Invalid Car ID Error
Validation Rules
Business View: Assuming the car id formatting operation failed during the 'Generate Invalid Car ID Error' routine, when the system detects the formatting failure, the system executes logic to ensure that an 'invalid car id' error message is generated and added to the report.
Given
The car ID formatting operation failed
When
The system detects the formatting failure
Then
An 'INVALID CAR ID' error message is generated and added to the report
R-GCCADDT-cbl-00084Initialize Cargo Segment
Process Rules
Business View: Assuming a cargo retrieval operation is about to be performed during the 'Initialize Cargo Segment' routine, when the system prepares to query for cargo records, the system executes logic to ensure that the cargo segment structure is initialized to empty/default values.
Given
A cargo retrieval operation is about to be performed
When
The system prepares to query for cargo records
Then
The cargo segment structure is initialized to empty/default values
Business View: Assuming a cargo retrieval process is in progress during the 'Initialize Cargo Segment Structure' routine, when the system needs to retrieve the next cargo record, the system executes logic to ensure that the cargo segment structure must be initialized to clear any previous data.
Given
A cargo retrieval process is in progress
When
The system needs to retrieve the next cargo record
Then
The cargo segment structure must be initialized to clear any previous data
R-GCCADDT-cbl-00094Call Database Function to Get Next Cargo Record
Action Rules
Business View: Assuming the cargo segment structure is initialized during the 'Call Database Function to Get Next Cargo Record' routine, when the system executes the next cargo retrieval operation, the system executes logic to ensure that the database function gccusio must be called with gn (get next) function to retrieve the next cargo record.
Given
The cargo segment structure is initialized
When
The system executes the next cargo retrieval operation
Then
The database function GCCUSIO must be called with GN (Get Next) function to retrieve the next cargo record
R-GCCADDT-cbl-00126Process Error - Service Failed
Process Rules
Business View: Assuming equipment type service gcccartp call has failed during the 'Process Error - Service Failed' routine, when service failure needs to be handled, the system executes logic to ensure that error message is constructed with service parameters and error processing is initiated to terminate the operation.
Given
Equipment type service GCCCARTP call has failed
When
Service failure needs to be handled
Then
Error message is constructed with service parameters and error processing is initiated to terminate the operation
R-GCCADDT-cbl-00133Set TE Bond Found Flag
Decision Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with bond type m1201-transp-export, and the transport record created for immediate transport flag is not equal to 'y' occurs during the 'Set TE Bond Found Flag' routine, then the system must guarantee that set the te (transport export) found flag to true.
EXCLUDING
A cargo record exists with bond type M1201-TRANSP-EXPORT
When
The transport record created for immediate transport flag is not equal to 'Y'
Then
Set the TE (Transport Export) found flag to true
R-GCCADDT-cbl-00134Set TR Bond Found Flag
Decision Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with bond type m1201-us-can-us, and the transport record created for immediate transport flag is not equal to 'y' occurs during the 'Set TR Bond Found Flag' routine, then the system must guarantee that set the tr (transport) found flag to true.
EXCLUDING
A cargo record exists with bond type M1201-US-CAN-US
When
The transport record created for immediate transport flag is not equal to 'Y'
Then
Set the TR (Transport) found flag to true
R-GCCADDT-cbl-00139Bond Type = 'TE' and Vessel Name starts with 'T'?
Validation Rules
Business View: Assuming cargo is found and processed during the 'Bond Type = 'TE' and Vessel Name starts with 'T'?' routine, when cargo has bond type 'te' and vessel name starts with 't', the system executes logic to ensure that generate bond vessel error message (msg-seventeen).
Given
Cargo is found and processed
When
Cargo has bond type 'TE' and vessel name starts with 'T'
Then
Generate bond vessel error message (MSG-SEVENTEEN)
R-GCCADDT-cbl-00140Bond Type ≠ 'TE' or 'MT' and Vessel ≠ 'TRAIN'?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and processed, and cargo bond type is not 'te' and not 'mt' and vessel name is not 'train' occurs during the 'Bond Type ≠ 'TE' or 'MT' and Vessel ≠ 'TRAIN'?' routine, then the system must guarantee that generate bond type error message (msg-seventeen).
EXCLUDING
Cargo is found and processed
When
Cargo bond type is not 'TE' and not 'MT' and vessel name is not 'TRAIN'
Then
Generate bond type error message (MSG-SEVENTEEN)
R-GCCADDT-cbl-00141Cargo Status = Pending/Deleted/Error?
Validation Rules
Business View: Assuming cargo is found and processed during the 'Cargo Status = Pending/Deleted/Error?' routine, when cargo status is pending, deleted, or error, the system executes logic to ensure that generate cargo status error message (msg-sixteen).
Given
Cargo is found and processed
When
Cargo status is pending, deleted, or error
Then
Generate cargo status error message (MSG-SIXTEEN)
R-GCCADDT-cbl-00142Bond Type = 'TR' and Status = 'EXPORT'?
Authorization Rules
Business View: <EXCLUSION CRITERIA> If cargo is found with bond type 'tr' and status 'export' and cargo is billed as cprs, and user security level is not 's' occurs during the 'Bond Type = 'TR' and Status = 'EXPORT'?' routine, then the system must guarantee that generate export security error message (msg-twelve).
EXCLUDING
Cargo is found with bond type 'TR' and status 'EXPORT' and cargo is billed as CPRS
R-GCCADDT-cbl-00143Bond Type = 'MT' and Vessel ≠ 'TRAIN'?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found with bond type 'mt', and vessel name is not 'train' and not spaces and train crossing port does not match cargo location occurs during the 'Bond Type = 'MT' and Vessel ≠ 'TRAIN'?' routine, then the system must guarantee that generate port mismatch error message (msg-twenty-five).
EXCLUDING
Cargo is found with bond type 'MT'
When
Vessel name is not 'TRAIN' and not spaces and train crossing port does not match cargo location
Then
Generate port mismatch error message (MSG-TWENTY-FIVE)
R-GCCADDT-cbl-00144Transport Export without TR Created?
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found with transport export bond type and tr not created and status is not 'export' and cargo is billed as cprs, and cargo location does not match train crossing port occurs during the 'Transport Export without TR Created?' routine, then the system must guarantee that generate port change message (msg-twenty) and create chg-port special manifest.
EXCLUDING
Cargo is found with transport export bond type and TR not created and status is not 'EXPORT' and cargo is billed as CPRS
When
Cargo location does not match train crossing port
Then
Generate port change message (MSG-TWENTY) and create CHG-PORT special manifest
R-GCCADDT-cbl-00145US-CAN-US with Master In-Bond?
Process Rules
Business View: <EXCLUSION CRITERIA> If cargo is found with us-canada-us bond type and master in-bond status, and train crossing port does not match cargo location occurs during the 'US-CAN-US with Master In-Bond?' routine, then the system must guarantee that generate port change message (msg-twenty) and create diversion special manifest.
EXCLUDING
Cargo is found with US-Canada-US bond type and master in-bond status
When
Train crossing port does not match cargo location
Then
Generate port change message (MSG-TWENTY) and create DIVERSION special manifest
R-GCCADDT-cbl-00288Check if bond type matches vessel requirements and generate appropriate error messages
Validation Rules
Business View: Assuming cargo is found and has bond type 'te' during the 'Check if bond type matches vessel requirements and generate appropriate error messages' routine, when the 23rd character of the vessel name is 't', the system executes logic to ensure that generate message seventeen indicating invalid vessel for te bond type.
Given
Cargo is found and has bond type 'TE'
When
The 23rd character of the vessel name is 'T'
Then
Generate message seventeen indicating invalid vessel for TE bond type
R-GCCADDT-cbl-00289Check if bond type matches vessel requirements and generate appropriate error messages
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is not 'te' and not 'mt', and the vessel name is not equal to 'train' occurs during the 'Check if bond type matches vessel requirements and generate appropriate error messages' routine, then the system must guarantee that generate message seventeen indicating invalid vessel for bond type.
EXCLUDING
Cargo is found and bond type is not 'TE' and not 'MT'
When
The vessel name is not equal to 'TRAIN'
Then
Generate message seventeen indicating invalid vessel for bond type
R-GCCADDT-cbl-00290Check if bond type matches vessel requirements and generate appropriate error messages
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is 'mt' and vessel name is not 'train' and not spaces, and the train crossing port does not equal the cargo location id occurs during the 'Check if bond type matches vessel requirements and generate appropriate error messages' routine, then the system must guarantee that generate message twenty-five indicating port mismatch for mt bond.
EXCLUDING
Cargo is found and bond type is 'MT' and vessel name is not 'TRAIN' and not spaces
When
The train crossing port does not equal the cargo location ID
Then
Generate message twenty-five indicating port mismatch for MT bond
R-GCCADDT-cbl-00377Is Bond Type = 'TE'? and Does Vessel Name Start with 'T'?
Validation Rules
Business View: Assuming cargo is found and has te bond type during the 'Is Bond Type = 'TE'? and Does Vessel Name Start with 'T'?' routine, when vessel name starts with 't' (23rd character position), the system executes logic to ensure that set message 17 flag to indicate invalid vessel configuration for te bond.
Given
Cargo is found and has TE bond type
When
Vessel name starts with 'T' (23rd character position)
Then
Set message 17 flag to indicate invalid vessel configuration for TE bond
R-GCCADDT-cbl-00378Is Bond Type NOT 'TE' or 'MT'? and Is Vessel Name NOT 'TRAIN'?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is not te and not mt, and vessel name is not equal to 'train' occurs during the 'Is Bond Type NOT 'TE' or 'MT'? and Is Vessel Name NOT 'TRAIN'?' routine, then the system must guarantee that set message 17 flag to indicate invalid vessel name for the bond type.
EXCLUDING
Cargo is found and bond type is not TE and not MT
When
Vessel name is not equal to 'TRAIN'
Then
Set message 17 flag to indicate invalid vessel name for the bond type
R-GCCADDT-cbl-00291Cargo Status = Pending?
Validation Rules
Business View: Assuming cargo is found in the system during the 'Cargo Status = Pending?' routine, when cargo status is pending (rt10-cpcargo-pending condition is true), the system executes logic to ensure that generate cargo status error message (msg-sixteen).
Given
Cargo is found in the system
When
Cargo status is pending (RT10-CPCARGO-PENDING condition is true)
Then
Generate cargo status error message (MSG-SIXTEEN)
R-GCCADDT-cbl-00292Cargo Status = Deleted?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found in the system and status is not pending, and cargo status is deleted (rt10-cpcargo-deleted condition is true) occurs during the 'Cargo Status = Deleted?' routine, then the system must guarantee that generate cargo status error message (msg-sixteen).
EXCLUDING
Cargo is found in the system and status is not pending
When
Cargo status is deleted (RT10-CPCARGO-DELETED condition is true)
Then
Generate cargo status error message (MSG-SIXTEEN)
R-GCCADDT-cbl-00293Cargo Status = Error?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found in the system and status is not pending or deleted, and cargo status is error (rt10-cpcargo-error condition is true) occurs during the 'Cargo Status = Error?' routine, then the system must guarantee that generate cargo status error message (msg-sixteen).
EXCLUDING
Cargo is found in the system and status is not pending or deleted
When
Cargo status is error (RT10-CPCARGO-ERROR condition is true)
Then
Generate cargo status error message (MSG-SIXTEEN)
R-GCCADDT-cbl-00297User Security Level = S?
Authorization Rules
Business View: <EXCLUSION CRITERIA> If cargo has tr bond type, export status, and cprs billing, and user security level is not 's' (supervisor level) occurs during the 'User Security Level = S?' routine, then the system must guarantee that generate export restriction error message (msg-twelve).
EXCLUDING
Cargo has TR bond type, export status, and CPRS billing
Business View: Assuming the system is processing equipment and waybill information during the 'Cargo Found?' routine, when cargo status validation is required, the system executes logic to ensure that the system should verify that cargo data exists before proceeding with status checks.
Given
The system is processing equipment and waybill information
When
Cargo status validation is required
Then
The system should verify that cargo data exists before proceeding with status checks
R-GCCADDT-cbl-00381Status = Pending?
Validation Rules
Business View: Assuming cargo data exists and status validation is being performed during the 'Status = Pending?' routine, when the cargo status is checked against pending state, the system executes logic to ensure that the system should identify cargo with pending status for error message generation.
Given
Cargo data exists and status validation is being performed
When
The cargo status is checked against pending state
Then
The system should identify cargo with pending status for error message generation
R-GCCADDT-cbl-00382Status = Deleted?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo data exists and is not in pending status, and the cargo status is checked against deleted state occurs during the 'Status = Deleted?' routine, then the system must guarantee that the system should identify cargo with deleted status for error message generation.
EXCLUDING
Cargo data exists and is not in pending status
When
The cargo status is checked against deleted state
Then
The system should identify cargo with deleted status for error message generation
R-GCCADDT-cbl-00383Status = Error?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo data exists and is not in pending or deleted status, and the cargo status is checked against error state occurs during the 'Status = Error?' routine, then the system must guarantee that the system should identify cargo with error status for error message generation.
EXCLUDING
Cargo data exists and is not in pending or deleted status
When
The cargo status is checked against error state
Then
The system should identify cargo with error status for error message generation
R-GCCADDT-cbl-00384Set Message Sixteen - Status Error
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo exists and has been identified as having pending, deleted, or error status, and an invalid cargo status condition is detected occurs during the 'Set Message Sixteen - Status Error' routine, then the system must guarantee that the system should set message sixteen to indicate the cargo status error.
EXCLUDING
Cargo exists and has been identified as having pending, deleted, or error status
When
An invalid cargo status condition is detected
Then
The system should set message sixteen to indicate the cargo status error
R-GCCADDT-cbl-00298Bond Type = MT?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and has bond type mt, and vessel name is not train and not spaces and train crossing port does not match cargo location id occurs during the 'Bond Type = MT?' routine, then the system must guarantee that generate port mismatch error message (msg-twenty-five).
EXCLUDING
Cargo is found and has bond type MT
When
Vessel name is not TRAIN and not SPACES and train crossing port does not match cargo location ID
Then
Generate port mismatch error message (MSG-TWENTY-FIVE)
R-GCCADDT-cbl-00299Bond Type = TE and Transport Export?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found with transport export bond type and tr not created for it and cargo status is not export and cargo is cprs type, and cargo location does not match train crossing port occurs during the 'Bond Type = TE and Transport Export?' routine, then the system must guarantee that generate diversion message (msg-twenty) and create change port manifest.
EXCLUDING
Cargo is found with transport export bond type and TR not created for IT and cargo status is not EXPORT and cargo is CPRS type
When
Cargo location does not match train crossing port
Then
Generate diversion message (MSG-TWENTY) and create change port manifest
R-GCCADDT-cbl-00300Bond Type = US-CAN-US and Master In Bond?
Process Rules
Business View: <EXCLUSION CRITERIA> If cargo is found with us-canada-us bond type and master in bond status, and train crossing port does not match cargo port location occurs during the 'Bond Type = US-CAN-US and Master In Bond?' routine, then the system must guarantee that process diversion case and create diversion manifest.
EXCLUDING
Cargo is found with US-Canada-US bond type and master in bond status
When
Train crossing port does not match cargo port location
Then
Process diversion case and create diversion manifest
Business View: Assuming a change port manifest needs to be created during the 'Initialize GCX101 Input Parameters' routine, when the system begins manifest creation process, the system executes logic to ensure that all gcx101 input parameters are initialized to default values.
Given
A change port manifest needs to be created
When
The system begins manifest creation process
Then
All GCX101 input parameters are initialized to default values
R-GCCADDT-cbl-00387Increment Spawn Counter
Computation Rules
Business View: Assuming a special manifest is being created during the 'Increment Spawn Counter' routine, when the manifest creation process starts, the system executes logic to ensure that the spawn counter is incremented by 1.
Given
A special manifest is being created
When
The manifest creation process starts
Then
The spawn counter is incremented by 1
R-GCCADDT-cbl-00388Set Security Byte to High Values
Authorization Rules
Business View: Assuming a manifest is being created during the 'Set Security Byte to High Values' routine, when security parameters are being set, the system executes logic to ensure that the security byte is set to high values for maximum security.
Given
A manifest is being created
When
Security parameters are being set
Then
The security byte is set to high values for maximum security
R-GCCADDT-cbl-00389Set Record Type Code to 'US'
Definitional Rules
Business View: Assuming a manifest is being created for us customs processing during the 'Set Record Type Code to 'US'' routine, when record type is being assigned, the system executes logic to ensure that the record type code is set to 'us'.
Given
A manifest is being created for US customs processing
When
Record type is being assigned
Then
The record type code is set to 'US'
R-GCCADDT-cbl-00390Set Border Code from Train Crossing Port
Definitional Rules
Business View: Assuming a manifest is being created and train crossing port is available during the 'Set Border Code from Train Crossing Port' routine, when border code is being assigned, the system executes logic to ensure that the border code is set to the train crossing port value.
Given
A manifest is being created and train crossing port is available
When
Border code is being assigned
Then
The border code is set to the train crossing port value
R-GCCADDT-cbl-00391Set Border Name from Train Crossing Name
Definitional Rules
Business View: Assuming a manifest is being created and train crossing name is available during the 'Set Border Name from Train Crossing Name' routine, when border name is being assigned, the system executes logic to ensure that the border name is set to the train crossing name value.
Given
A manifest is being created and train crossing name is available
When
Border name is being assigned
Then
The border name is set to the train crossing name value
R-GCCADDT-cbl-00392Set CCN from US-CCN Key
Definitional Rules
Business View: Assuming a manifest is being created and us-ccn key is available during the 'Set CCN from US-CCN Key' routine, when ccn is being assigned to the manifest, the system executes logic to ensure that the ccn is set to the us-ccn key value.
Given
A manifest is being created and US-CCN key is available
When
CCN is being assigned to the manifest
Then
The CCN is set to the US-CCN key value
R-GCCADDT-cbl-00393Set Change Port Flag to True
Process Rules
Business View: Assuming a change port manifest is being created during the 'Set Change Port Flag to True' routine, when manifest type flags are being set, the system executes logic to ensure that the change port flag is set to true.
Given
A change port manifest is being created
When
Manifest type flags are being set
Then
The change port flag is set to true
R-GCCADDT-cbl-00394Store GCX101 Input in Spawn Table
Process Rules
Business View: Assuming a manifest has been fully configured with all required parameters during the 'Store GCX101 Input in Spawn Table' routine, when the manifest is ready for processing, the system executes logic to ensure that the gcx101 input parameters are stored in the spawn table at the current spawn counter position.
Given
A manifest has been fully configured with all required parameters
When
The manifest is ready for processing
Then
The GCX101 input parameters are stored in the spawn table at the current spawn counter position
R-GCCADDT-cbl-00146Bond Type = 'TE'? AND Vessel Name Contains 'T'?
Validation Rules
Business View: Assuming cargo is found and has bond type 'te' during the 'Bond Type = 'TE'? AND Vessel Name Contains 'T'?' routine, when the vessel name contains 't' in position 23, the system executes logic to ensure that generate bond type error message (msg-seventeen).
Given
Cargo is found and has bond type 'TE'
When
The vessel name contains 'T' in position 23
Then
Generate bond type error message (MSG-SEVENTEEN)
R-GCCADDT-cbl-00147Bond Type NOT 'TE' or 'MT'? AND Vessel Name NOT 'TRAIN'?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is not 'te' and not 'mt', and the vessel name is not equal to 'train' occurs during the 'Bond Type NOT 'TE' or 'MT'? AND Vessel Name NOT 'TRAIN'?' routine, then the system must guarantee that generate bond type error message (msg-seventeen).
EXCLUDING
Cargo is found and bond type is not 'TE' and not 'MT'
When
The vessel name is not equal to 'TRAIN'
Then
Generate bond type error message (MSG-SEVENTEEN)
R-GCCADDT-cbl-00148Bond Type = 'TR'? AND Cargo Status = 'EXPORT'? AND Bill as CPRS? AND User Security Level NOT 'S'?
Authorization Rules
Business View: <EXCLUSION CRITERIA> If cargo is found with bond type 'tr', cargo status is 'export', and bill as cprs is true, and user security level is not 's' occurs during the 'Bond Type = 'TR'? AND Cargo Status = 'EXPORT'? AND Bill as CPRS? AND User Security Level NOT 'S'?' routine, then the system must guarantee that generate export security error message (msg-twelve).
EXCLUDING
Cargo is found with bond type 'TR', cargo status is 'EXPORT', and bill as CPRS is true
R-GCCADDT-cbl-00149Bond Type = 'MT'? AND Vessel Name NOT 'TRAIN' or SPACES? AND Train Port ≠ Cargo Port?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found with bond type 'mt' and vessel name is not 'train' and not spaces, and train crossing port does not equal cargo location port occurs during the 'Bond Type = 'MT'? AND Vessel Name NOT 'TRAIN' or SPACES? AND Train Port ≠ Cargo Port?' routine, then the system must guarantee that generate port mismatch error message (msg-twenty-five).
EXCLUDING
Cargo is found with bond type 'MT' and vessel name is not 'TRAIN' and not spaces
When
Train crossing port does not equal cargo location port
Then
Generate port mismatch error message (MSG-TWENTY-FIVE)
R-GCCADDT-cbl-00155TR Required but Not Found? - Generate Missing TR Bond Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If tr is required for it and tr is not found, and processing bond requirements validation occurs during the 'TR Required but Not Found? - Generate Missing TR Bond Error' routine, then the system must guarantee that add saved it line to report and generate msg-twenty-two error message.
EXCLUDING
TR is required for IT and TR is not found
When
Processing bond requirements validation
Then
Add saved IT line to report and generate MSG-TWENTY-TWO error message
R-GCCADDT-cbl-00156TE Required but Not Found? - Generate Missing TE Bond Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If te is required for te and te is not found, and processing bond requirements validation occurs during the 'TE Required but Not Found? - Generate Missing TE Bond Error' routine, then the system must guarantee that add saved it line to report and generate msg-thirty error message.
EXCLUDING
TE is required for TE and TE is not found
When
Processing bond requirements validation
Then
Add saved IT line to report and generate MSG-THIRTY error message
R-GCCADDT-cbl-00157TR Required but Not Found? - Generate Missing TR Bond Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If tr is required for 00 and tr is not found, and processing bond requirements validation occurs during the 'TR Required but Not Found? - Generate Missing TR Bond Error' routine, then the system must guarantee that add saved it line to report and generate msg-thirty-one error message.
EXCLUDING
TR is required for 00 and TR is not found
When
Processing bond requirements validation
Then
Add saved IT line to report and generate MSG-THIRTY-ONE error message
R-GCCADDT-cbl-00158TR Required but Not Found? - Generate Missing TR Bond Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If tr is required for tr and tr is not found, and processing bond requirements validation occurs during the 'TR Required but Not Found? - Generate Missing TR Bond Error' routine, then the system must guarantee that add saved it line to report and generate msg-thirty-two error message.
EXCLUDING
TR is required for TR and TR is not found
When
Processing bond requirements validation
Then
Add saved IT line to report and generate MSG-THIRTY-TWO error message
R-GCCADDT-cbl-00159TE Required but Not Found? - Generate Missing TE Bond Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If te is required for 88 and te is not found, and processing bond requirements validation occurs during the 'TE Required but Not Found? - Generate Missing TE Bond Error' routine, then the system must guarantee that add saved it line to report and generate msg-thirty-three error message.
EXCLUDING
TE is required for 88 and TE is not found
When
Processing bond requirements validation
Then
Add saved IT line to report and generate MSG-THIRTY-THREE error message
R-GCCADDT-cbl-00303Generate Bond Vessel Error
Validation Rules
Business View: Assuming a cargo record exists with in-bond type code 'te' during the 'Generate Bond Vessel Error' routine, when the vessel name starts with 't' (gcusrt-m1005-vessel-name (23:1) = 't'), the system executes logic to ensure that the system generates message seventeen error (msg-seventeen).
Given
A cargo record exists with in-bond type code 'TE'
When
The vessel name starts with 'T' (GCUSRT-M1005-VESSEL-NAME (23:1) = 'T')
Then
The system generates message seventeen error (MSG-SEVENTEEN)
R-GCCADDT-cbl-00304Generate Bond Vessel Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with in-bond type code not equal to 'te' or 'mt', and the vessel name is not equal to 'train' (gcusrt-m1005-vessel-name not = 'train') occurs during the 'Generate Bond Vessel Error' routine, then the system must guarantee that the system generates message seventeen error (msg-seventeen).
EXCLUDING
A cargo record exists with in-bond type code not equal to 'TE' or 'MT'
When
The vessel name is not equal to 'TRAIN' (GCUSRT-M1005-VESSEL-NAME NOT = 'TRAIN')
Then
The system generates message seventeen error (MSG-SEVENTEEN)
R-GCCADDT-cbl-00305Generate TR Bond Export Error
Authorization Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with in-bond type code 'tr' and cargo status 'export' and bill as cprs is true, and the user security level is not 's' (gcladdif-user-security-level not = 's') occurs during the 'Generate TR Bond Export Error' routine, then the system must guarantee that the system generates message twelve error (msg-twelve).
EXCLUDING
A cargo record exists with in-bond type code 'TR' and cargo status 'EXPORT' and bill as CPRS is true
When
The user security level is not 'S' (GCLADDIF-USER-SECURITY-LEVEL NOT = 'S')
Then
The system generates message twelve error (MSG-TWELVE)
R-GCCADDT-cbl-00306Generate MT Bond Port Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with in-bond type code 'mt' and vessel name not equal to 'train' or spaces, and the train crossing port does not match the cargo location (gcladdif-train-crossing-port not = gcusrt-p401-location-id) occurs during the 'Generate MT Bond Port Error' routine, then the system must guarantee that the system generates message twenty-five error (msg-twenty-five).
EXCLUDING
A cargo record exists with in-bond type code 'MT' and vessel name not equal to 'TRAIN' or SPACES
When
The train crossing port does not match the cargo location (GCLADDIF-TRAIN-CROSSING-PORT NOT = GCUSRT-P401-LOCATION-ID)
Then
The system generates message twenty-five error (MSG-TWENTY-FIVE)
R-GCCADDT-cbl-00395Set Bond Vessel Error Message
Validation Rules
Business View: Assuming cargo is found and bond type is 'te' during the 'Set Bond Vessel Error Message' routine, when the 23rd character of vessel name is 't', the system executes logic to ensure that set bond vessel error message (msg-seventeen).
Given
Cargo is found and bond type is 'TE'
When
The 23rd character of vessel name is 'T'
Then
Set bond vessel error message (MSG-SEVENTEEN)
R-GCCADDT-cbl-00396Set Bond Vessel Error Message
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is not 'te' and not 'mt', and vessel name is not equal to 'train' occurs during the 'Set Bond Vessel Error Message' routine, then the system must guarantee that set bond vessel error message (msg-seventeen).
EXCLUDING
Cargo is found and bond type is not 'TE' and not 'MT'
When
Vessel name is not equal to 'TRAIN'
Then
Set bond vessel error message (MSG-SEVENTEEN)
R-GCCADDT-cbl-00308Determine Bond Type Required
Decision Rules
Business View: Assuming cargo is found with transport record created for immediate transport (tr-created-for-it = 'y') during the 'Determine Bond Type Required' routine, when the cargo has transport code m1201-imm-transp, the system executes logic to ensure that set tr-req-for-it flag to indicate transport bond is required for immediate transport.
Given
Cargo is found with transport record created for immediate transport (TR-CREATED-FOR-IT = 'Y')
When
The cargo has transport code M1201-IMM-TRANSP
Then
Set TR-REQ-FOR-IT flag to indicate transport bond is required for immediate transport
R-GCCADDT-cbl-00309Determine Bond Type Required
Decision Rules
Business View: Assuming cargo is found with transport record created for immediate transport (tr-created-for-it = 'y') during the 'Determine Bond Type Required' routine, when the cargo has transport code m1201-transp-export, the system executes logic to ensure that set te-req-for-te flag to indicate transport export bond is required.
Given
Cargo is found with transport record created for immediate transport (TR-CREATED-FOR-IT = 'Y')
When
The cargo has transport code M1201-TRANSP-EXPORT
Then
Set TE-REQ-FOR-TE flag to indicate transport export bond is required
R-GCCADDT-cbl-00310Determine Bond Type Required
Decision Rules
Business View: Assuming cargo is found with transport record created for immediate transport (tr-created-for-it = 'y') during the 'Determine Bond Type Required' routine, when the cargo has transport code m1109-default, the system executes logic to ensure that set tr-req-for-00 flag to indicate transport bond is required for default cargo.
Given
Cargo is found with transport record created for immediate transport (TR-CREATED-FOR-IT = 'Y')
When
The cargo has transport code M1109-DEFAULT
Then
Set TR-REQ-FOR-00 flag to indicate transport bond is required for default cargo
R-GCCADDT-cbl-00311Determine Bond Type Required
Decision Rules
Business View: Assuming cargo is found with transport record created for immediate transport (tr-created-for-it = 'y') during the 'Determine Bond Type Required' routine, when the cargo has transport code m1109-export, the system executes logic to ensure that set te-req-for-88 flag to indicate transport export bond is required for export cargo.
Given
Cargo is found with transport record created for immediate transport (TR-CREATED-FOR-IT = 'Y')
When
The cargo has transport code M1109-EXPORT
Then
Set TE-REQ-FOR-88 flag to indicate transport export bond is required for export cargo
R-GCCADDT-cbl-00312Determine Bond Type Required
Decision Rules
Business View: Assuming cargo is found with transport record created for immediate transport (tr-created-for-it = 'y') during the 'Determine Bond Type Required' routine, when the cargo has transport code m1201-us-can-us, the system executes logic to ensure that set tr-req-for-tr flag to indicate transport bond is required for us-canada-us movement.
Given
Cargo is found with transport record created for immediate transport (TR-CREATED-FOR-IT = 'Y')
When
The cargo has transport code M1201-US-CAN-US
Then
Set TR-REQ-FOR-TR flag to indicate transport bond is required for US-Canada-US movement
R-GCCADDT-cbl-00313Generate MSG-TWENTY-TWO Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If transport bond is required for immediate transport (tr-req-for-it is true), and transport bond was not found (tr-not-found is true) occurs during the 'Generate MSG-TWENTY-TWO Error' routine, then the system must guarantee that generate msg-twenty-two error message and add saved line to report.
EXCLUDING
Transport bond is required for immediate transport (TR-REQ-FOR-IT is true)
When
Transport bond was not found (TR-NOT-FOUND is true)
Then
Generate MSG-TWENTY-TWO error message and add saved line to report
R-GCCADDT-cbl-00314Generate MSG-THIRTY Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If transport export bond is required for export cargo (te-req-for-te is true), and transport export bond was not found (te-not-found is true) occurs during the 'Generate MSG-THIRTY Error' routine, then the system must guarantee that generate msg-thirty error message and add saved line to report.
EXCLUDING
Transport export bond is required for export cargo (TE-REQ-FOR-TE is true)
When
Transport export bond was not found (TE-NOT-FOUND is true)
Then
Generate MSG-THIRTY error message and add saved line to report
R-GCCADDT-cbl-00315Generate MSG-THIRTY-ONE Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If transport bond is required for default cargo (tr-req-for-00 is true), and transport bond was not found (tr-not-found is true) occurs during the 'Generate MSG-THIRTY-ONE Error' routine, then the system must guarantee that generate msg-thirty-one error message and add saved line to report.
EXCLUDING
Transport bond is required for default cargo (TR-REQ-FOR-00 is true)
When
Transport bond was not found (TR-NOT-FOUND is true)
Then
Generate MSG-THIRTY-ONE error message and add saved line to report
R-GCCADDT-cbl-00316Generate MSG-THIRTY-TWO Error
Validation Rules
Business View: <EXCLUSION CRITERIA> If transport bond is required for us-canada-us movement (tr-req-for-tr is true), and transport bond was not found (tr-not-found is true) occurs during the 'Generate MSG-THIRTY-TWO Error' routine, then the system must guarantee that generate msg-thirty-two error message and add saved line to report.
EXCLUDING
Transport bond is required for US-Canada-US movement (TR-REQ-FOR-TR is true)
When
Transport bond was not found (TR-NOT-FOUND is true)
Then
Generate MSG-THIRTY-TWO error message and add saved line to report
Business View: <EXCLUSION CRITERIA> If transport export bond is required for export classification (te-req-for-88 is true), and transport export bond was not found (te-not-found is true) occurs during the 'Generate MSG-THIRTY-THREE Error' routine, then the system must guarantee that generate msg-thirty-three error message and add saved line to report.
EXCLUDING
Transport export bond is required for export classification (TE-REQ-FOR-88 is true)
When
Transport export bond was not found (TE-NOT-FOUND is true)
Then
Generate MSG-THIRTY-THREE error message and add saved line to report
R-GCCADDT-cbl-00397Generate Message 22: Missing TR Bond for IT Export
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has tr created for it flag set to 'y' and cargo transport type is immediate transport (m1201-imm-transp), and tr bond requirement is set for it export and tr bond is not found occurs during the 'Generate Message 22: Missing TR Bond for IT Export' routine, then the system must guarantee that add saved it line to report and set message twenty-two flag and increment report index.
EXCLUDING
Cargo is found AND cargo has TR created for IT flag set to 'Y' AND cargo transport type is immediate transport (M1201-IMM-TRANSP)
When
TR bond requirement is set for IT export AND TR bond is not found
Then
Add saved IT line to report AND set message twenty-two flag AND increment report index
R-GCCADDT-cbl-00398Generate Message 30: Missing TE Bond for TE Export
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has tr created for it flag set to 'y' and cargo transport type is transport export (m1201-transp-export), and te bond requirement is set for te export and te bond is not found occurs during the 'Generate Message 30: Missing TE Bond for TE Export' routine, then the system must guarantee that add saved it line to report and set message thirty flag and increment report index.
EXCLUDING
Cargo is found AND cargo has TR created for IT flag set to 'Y' AND cargo transport type is transport export (M1201-TRANSP-EXPORT)
When
TE bond requirement is set for TE export AND TE bond is not found
Then
Add saved IT line to report AND set message thirty flag AND increment report index
R-GCCADDT-cbl-00399Generate Message 31: Missing TR Bond for Default
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has tr created for it flag set to 'y' and cargo transport type is default (m1109-default), and tr bond requirement is set for default processing and tr bond is not found occurs during the 'Generate Message 31: Missing TR Bond for Default' routine, then the system must guarantee that add saved it line to report and set message thirty-one flag and increment report index.
EXCLUDING
Cargo is found AND cargo has TR created for IT flag set to 'Y' AND cargo transport type is default (M1109-DEFAULT)
When
TR bond requirement is set for default processing AND TR bond is not found
Then
Add saved IT line to report AND set message thirty-one flag AND increment report index
R-GCCADDT-cbl-00400Generate Message 32: Missing TR Bond for TR Type
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has tr created for it flag set to 'y' and cargo transport type is us-canada-us (m1201-us-can-us), and tr bond requirement is set for tr type and tr bond is not found occurs during the 'Generate Message 32: Missing TR Bond for TR Type' routine, then the system must guarantee that add saved it line to report and set message thirty-two flag and increment report index.
EXCLUDING
Cargo is found AND cargo has TR created for IT flag set to 'Y' AND cargo transport type is US-Canada-US (M1201-US-CAN-US)
When
TR bond requirement is set for TR type AND TR bond is not found
Then
Add saved IT line to report AND set message thirty-two flag AND increment report index
R-GCCADDT-cbl-00401Generate Message 33: Missing TE Bond for 88 Export
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has tr created for it flag set to 'y' and cargo transport type is export (m1109-export), and te bond requirement is set for 88 export and te bond is not found occurs during the 'Generate Message 33: Missing TE Bond for 88 Export' routine, then the system must guarantee that add saved it line to report and set message thirty-three flag and increment report index.
EXCLUDING
Cargo is found AND cargo has TR created for IT flag set to 'Y' AND cargo transport type is export (M1109-EXPORT)
When
TE bond requirement is set for 88 export AND TE bond is not found
Then
Add saved IT line to report AND set message thirty-three flag AND increment report index
R-GCCADDT-cbl-00447Generate IT Export Message
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is m1201-us-can-us and tr is not created for it and cargo status is release, and the system processes error messages occurs during the 'Generate IT Export Message' routine, then the system must guarantee that set msg-twenty-three flag to true and increment report index and set ws-gcx101-it-export flag to true.
EXCLUDING
Cargo is found AND bond type is M1201-US-CAN-US AND TR is not created for IT AND cargo status is RELEASE
When
The system processes error messages
Then
Set MSG-TWENTY-THREE flag to TRUE AND increment report index AND set WS-GCX101-IT-EXPORT flag to TRUE
R-GCCADDT-cbl-00448Generate IT Export Message
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is m1201-imm-transp and tr is not created for it, and the system processes error messages occurs during the 'Generate IT Export Message' routine, then the system must guarantee that set msg-twenty-three flag to true and increment report index and set ws-gcx101-it-export flag to true.
EXCLUDING
Cargo is found AND bond type is M1201-IMM-TRANSP AND TR is not created for IT
When
The system processes error messages
Then
Set MSG-TWENTY-THREE flag to TRUE AND increment report index AND set WS-GCX101-IT-EXPORT flag to TRUE
R-GCCADDT-cbl-00449Generate IT Export Message
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is m1109-default and tr is not created for it and cargo status is release, and the system processes error messages occurs during the 'Generate IT Export Message' routine, then the system must guarantee that set msg-twenty-three flag to true and increment report index and set ws-gcx101-it-export flag to true.
EXCLUDING
Cargo is found AND bond type is M1109-DEFAULT AND TR is not created for IT AND cargo status is RELEASE
When
The system processes error messages
Then
Set MSG-TWENTY-THREE flag to TRUE AND increment report index AND set WS-GCX101-IT-EXPORT flag to TRUE
R-GCCADDT-cbl-00450Create Special Manifest for IT Export
Action Rules
Business View: Assuming ws-gcx101-it-export flag is set to true during the 'Create Special Manifest for IT Export' routine, when the system performs special manifest creation, the system executes logic to ensure that initialize gcx101-input and set gcx101-it-export flag and populate equipment id, waybill number, and waybill date.
Given
WS-GCX101-IT-EXPORT flag is set to TRUE
When
The system performs special manifest creation
Then
Initialize GCX101-INPUT AND set GCX101-IT-EXPORT flag AND populate equipment ID, waybill number, and waybill date
R-GCCADDT-cbl-00477Generate IT Export Message
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is us-can-us (88-gcusrt-m1201-us-can-us) and tr not created for it (gcusrt-tr-created-for-it not = 'y') and cargo status is release (gcusrt-rt21-uscargo-stat-desc = 'release'), and the system processes the cargo validation occurs during the 'Generate IT Export Message' routine, then the system must guarantee that the system sets msg-twenty-three message flag to true and increments report index and sets ws-gcx101-it-export flag to true.
EXCLUDING
Cargo is found AND cargo bond type is US-CAN-US (88-GCUSRT-M1201-US-CAN-US) AND TR not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y') AND cargo status is RELEASE (GCUSRT-RT21-USCARGO-STAT-DESC = 'RELEASE')
When
The system processes the cargo validation
Then
The system sets MSG-TWENTY-THREE message flag to TRUE and increments report index and sets WS-GCX101-IT-EXPORT flag to TRUE
R-GCCADDT-cbl-00478Generate IT Export Message for IMM-TRANSP
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is imm-transp (88-gcusrt-m1201-imm-transp) and tr not created for it (gcusrt-tr-created-for-it not = 'y'), and the system processes the cargo validation occurs during the 'Generate IT Export Message for IMM-TRANSP' routine, then the system must guarantee that the system sets msg-twenty-three message flag to true and increments report index and sets ws-gcx101-it-export flag to true.
EXCLUDING
Cargo is found AND cargo bond type is IMM-TRANSP (88-GCUSRT-M1201-IMM-TRANSP) AND TR not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y')
When
The system processes the cargo validation
Then
The system sets MSG-TWENTY-THREE message flag to TRUE and increments report index and sets WS-GCX101-IT-EXPORT flag to TRUE
R-GCCADDT-cbl-00479Generate IT Export Message for Default
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is default (88-gcusrt-m1109-default) and tr not created for it (gcusrt-tr-created-for-it not = 'y') and cargo status is release (gcusrt-rt21-uscargo-stat-desc = 'release'), and the system processes the cargo validation occurs during the 'Generate IT Export Message for Default' routine, then the system must guarantee that the system sets msg-twenty-three message flag to true and increments report index and sets ws-gcx101-it-export flag to true.
EXCLUDING
Cargo is found AND cargo bond type is DEFAULT (88-GCUSRT-M1109-DEFAULT) AND TR not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y') AND cargo status is RELEASE (GCUSRT-RT21-USCARGO-STAT-DESC = 'RELEASE')
When
The system processes the cargo validation
Then
The system sets MSG-TWENTY-THREE message flag to TRUE and increments report index and sets WS-GCX101-IT-EXPORT flag to TRUE
R-GCCADDT-cbl-00160Generate Message 10: Container without Waybill
Validation Rules
Business View: <EXCLUSION CRITERIA> If a container equipment is being processed, and the waybill is not found and the container is found occurs during the 'Generate Message 10: Container without Waybill' routine, then the system must guarantee that generate message msg-ten indicating container exists without waybill.
EXCLUDING
A container equipment is being processed
When
The waybill is not found AND the container is found
Then
Generate message MSG-TEN indicating container exists without waybill
Business View: <EXCLUSION CRITERIA> If a waybill is found and no cargo is found and the equipment is not a conveying car, and the origin country is us and the destination country is us occurs during the 'Generate Message 23: US-US Detour Required' routine, then the system must guarantee that generate message msg-twenty-three and create a us-us-detour special manifest.
EXCLUDING
A waybill is found AND no cargo is found AND the equipment is not a conveying car
When
The origin country is US AND the destination country is US
Then
Generate message MSG-TWENTY-THREE and create a US-US-DETOUR special manifest
R-GCCADDT-cbl-00162Generate Message 15: No Cargo Found for Waybill
Validation Rules
Business View: <EXCLUSION CRITERIA> If a waybill is found and no cargo is found and the equipment is not a conveying car, and the movement is not us to us domestic (origin country is not us or destination country is not us) occurs during the 'Generate Message 15: No Cargo Found for Waybill' routine, then the system must guarantee that generate message msg-fifteen with waybill root key and date.
EXCLUDING
A waybill is found AND no cargo is found AND the equipment is not a conveying car
When
The movement is not US to US domestic (origin country is not US OR destination country is not US)
Then
Generate message MSG-FIFTEEN with waybill root key and date
R-GCCADDT-cbl-00163Generate Message 15: Idler Car with No Cargo
Validation Rules
Business View: <EXCLUSION CRITERIA> If a waybill is found and no cargo is found, and the idler indicator is not spaces (indicating an idler car) occurs during the 'Generate Message 15: Idler Car with No Cargo' routine, then the system must guarantee that generate message msg-fifteen with waybill root key and date.
EXCLUDING
A waybill is found AND no cargo is found
When
The idler indicator is not spaces (indicating an idler car)
Then
Generate message MSG-FIFTEEN with waybill root key and date
Business View: Assuming a us to us domestic movement is identified during the 'Generate Message 23: US-US Detour Required' routine, when no cargo is found for the waybill, the system executes logic to ensure that set ws-gcx101-us-us-detour flag and perform special manifest creation with empty ccn, equipment id, waybill root, and waybill date.
Given
A US to US domestic movement is identified
When
No cargo is found for the waybill
Then
Set WS-GCX101-US-US-DETOUR flag and perform special manifest creation with empty CCN, equipment ID, waybill root, and waybill date
R-GCCADDT-cbl-00167Is User Security Level NOT 'S'?
Authorization Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is 'tr' and cargo status is 'export' and cargo is billable as cprs, and user security level is not 's' (supervisor level) occurs during the 'Is User Security Level NOT 'S'?' routine, then the system must guarantee that generate export status error message (msg-twelve).
EXCLUDING
Cargo is found AND cargo bond type is 'TR' AND cargo status is 'EXPORT' AND cargo is billable as CPRS
When
User security level is not 'S' (supervisor level)
Then
Generate export status error message (MSG-TWELVE)
R-GCCADDT-cbl-00168Does Train Port NOT Match Cargo Port?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is 'mt' and vessel name is not 'train' and not spaces, and train crossing port does not match cargo location port occurs during the 'Does Train Port NOT Match Cargo Port?' routine, then the system must guarantee that generate port mismatch error message (msg-twenty-five).
EXCLUDING
Cargo is found AND cargo bond type is 'MT' AND vessel name is not 'TRAIN' and not spaces
When
Train crossing port does not match cargo location port
Then
Generate port mismatch error message (MSG-TWENTY-FIVE)
R-GCCADDT-cbl-00169Does Cargo Port NOT Match Train Port?
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is 'te' (transport export) and cargo status is not 'export' and cargo is billable as cprs, and cargo location port does not match train crossing port occurs during the 'Does Cargo Port NOT Match Train Port?' routine, then the system must guarantee that generate diversion message (msg-twenty) and create special manifest for port change (chg-port).
EXCLUDING
Cargo is found AND cargo bond type is 'TE' (transport export) AND cargo status is not 'EXPORT' AND cargo is billable as CPRS
When
Cargo location port does not match train crossing port
Then
Generate diversion message (MSG-TWENTY) AND create special manifest for port change (CHG-PORT)
R-GCCADDT-cbl-00171Does Train Crossing Port NOT Match Cargo Location?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found with bond type mt and vessel name is not 'train' or spaces, and the train crossing port does not match the cargo's p401 location id occurs during the 'Does Train Crossing Port NOT Match Cargo Location?' routine, then the system must guarantee that generate port mismatch error message (msg-twenty-five).
EXCLUDING
Cargo is found with bond type MT and vessel name is not 'TRAIN' or spaces
When
The train crossing port does not match the cargo's P401 location ID
Then
Generate port mismatch error message (MSG-TWENTY-FIVE)
R-GCCADDT-cbl-00174US-CAN-US Transit with Release Status?
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has us-canada-us transit type (88-gcusrt-m1201-us-can-us) and transport record was not created for it (gcusrt-tr-created-for-it not = 'y') and us cargo status description is 'release', and system processes the cargo for manifest validation occurs during the 'US-CAN-US Transit with Release Status?' routine, then the system must guarantee that system sets message twenty-three flag and adds report index and sets it export flag for gcx101 and creates special manifest.
EXCLUDING
Cargo is found AND cargo has US-Canada-US transit type (88-GCUSRT-M1201-US-CAN-US) AND transport record was not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y') AND US cargo status description is 'RELEASE'
When
System processes the cargo for manifest validation
Then
System sets message twenty-three flag AND adds report index AND sets IT export flag for GCX101 AND creates special manifest
R-GCCADDT-cbl-00175Immediate Transit without TR?
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has immediate transport type (88-gcusrt-m1201-imm-transp) and transport record was not created for it (gcusrt-tr-created-for-it not = 'y'), and system processes the cargo for manifest validation occurs during the 'Immediate Transit without TR?' routine, then the system must guarantee that system sets message twenty-three flag and adds report index and sets it export flag for gcx101 and creates special manifest.
EXCLUDING
Cargo is found AND cargo has immediate transport type (88-GCUSRT-M1201-IMM-TRANSP) AND transport record was not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y')
When
System processes the cargo for manifest validation
Then
System sets message twenty-three flag AND adds report index AND sets IT export flag for GCX101 AND creates special manifest
R-GCCADDT-cbl-00176Default Bond with Release Status?
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has default bond type (88-gcusrt-m1109-default) and transport record was not created for it (gcusrt-tr-created-for-it not = 'y') and us cargo status description is 'release', and system processes the cargo for manifest validation occurs during the 'Default Bond with Release Status?' routine, then the system must guarantee that system sets message twenty-three flag and adds report index and sets it export flag for gcx101 and creates special manifest.
EXCLUDING
Cargo is found AND cargo has default bond type (88-GCUSRT-M1109-DEFAULT) AND transport record was not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y') AND US cargo status description is 'RELEASE'
When
System processes the cargo for manifest validation
Then
System sets message twenty-three flag AND adds report index AND sets IT export flag for GCX101 AND creates special manifest
R-GCCADDT-cbl-00177Transport Export with Port Mismatch?
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has transport export type (88-gcusrt-m1201-transp-export) and transport record was not created for it (gcusrt-tr-created-for-it not = 'y') and us cargo status description is not 'export' and cargo is billed as cprs and cargo location does not match train crossing port, and system processes the cargo for manifest validation occurs during the 'Transport Export with Port Mismatch?' routine, then the system must guarantee that system sets message twenty flag and adds report index and sets port change flag for gcx101 and creates special manifest.
EXCLUDING
Cargo is found AND cargo has transport export type (88-GCUSRT-M1201-TRANSP-EXPORT) AND transport record was not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y') AND US cargo status description is not 'EXPORT' AND cargo is billed as CPRS AND cargo location does not match train crossing port
When
System processes the cargo for manifest validation
Then
System sets message twenty flag AND adds report index AND sets port change flag for GCX101 AND creates special manifest
R-GCCADDT-cbl-00178US-CAN-US with Port Mismatch?
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo has us-canada-us type (88-gcusrt-m1201-us-can-us) and cargo has master in-bond type (88-gcusrt-m1109-master-in-bond) and train crossing port does not match cargo location (gcusrt-p401-location-id), and system processes the cargo for manifest validation occurs during the 'US-CAN-US with Port Mismatch?' routine, then the system must guarantee that system performs diversion process which sets message twenty flag and adds report index and sets diversion flag for gcx101 and creates special manifest.
EXCLUDING
Cargo is found AND cargo has US-Canada-US type (88-GCUSRT-M1201-US-CAN-US) AND cargo has master in-bond type (88-GCUSRT-M1109-MASTER-IN-BOND) AND train crossing port does not match cargo location (GCUSRT-P401-LOCATION-ID)
When
System processes the cargo for manifest validation
Then
System performs diversion process which sets message twenty flag AND adds report index AND sets diversion flag for GCX101 AND creates special manifest
R-GCCADDT-cbl-00179Set IT Export Flag
Action Rules
Business View: Assuming it export flag is set for gcx101 processing during the 'Set IT Export Flag' routine, when system creates special manifest, the system executes logic to ensure that system sets gcx101 it export flag and moves equipment id to gcx101 car id and moves cargo waybill number to gcx101 waybill and moves cargo waybill date to gcx101 waybill date.
Given
IT export flag is set for GCX101 processing
When
System creates special manifest
Then
System sets GCX101 IT export flag AND moves equipment ID to GCX101 car ID AND moves cargo waybill number to GCX101 waybill AND moves cargo waybill date to GCX101 waybill date
R-GCCADDT-cbl-00180Set Port Change Flag
Action Rules
Business View: Assuming port change flag is set for gcx101 processing during the 'Set Port Change Flag' routine, when system creates special manifest, the system executes logic to ensure that system sets gcx101 port change flag.
Given
Port change flag is set for GCX101 processing
When
System creates special manifest
Then
System sets GCX101 port change flag
R-GCCADDT-cbl-00181Set Diversion Flag
Action Rules
Business View: Assuming diversion flag is set for gcx101 processing during the 'Set Diversion Flag' routine, when system creates special manifest, the system executes logic to ensure that system sets gcx101 diversion flag.
Given
Diversion flag is set for GCX101 processing
When
System creates special manifest
Then
System sets GCX101 diversion flag
R-GCCADDT-cbl-00182Create Special Manifest Request
Process Rules
Business View: Assuming special manifest creation is required during the 'Create Special Manifest Request' routine, when system processes manifest creation, the system executes logic to ensure that system increments spawn count and sets security byte to high values and sets record type to 'us' and moves train crossing port to border code and moves train crossing name to border name and moves cargo ccn key to gcx101 ccn and stores gcx101 input for processing.
Given
Special manifest creation is required
When
System processes manifest creation
Then
System increments spawn count AND sets security byte to high values AND sets record type to 'US' AND moves train crossing port to border code AND moves train crossing name to border name AND moves cargo CCN key to GCX101 CCN AND stores GCX101 input for processing
R-GCCADDT-cbl-00186Set Diversion Message
Action Rules
Business View: Assuming a cargo with port mismatch requiring diversion during the 'Set Diversion Message' routine, when the system processes the diversion requirement, the system executes logic to ensure that message type msg-twenty is set for the report indicating port diversion is needed.
Given
A cargo with port mismatch requiring diversion
When
The system processes the diversion requirement
Then
Message type MSG-TWENTY is set for the report indicating port diversion is needed
R-GCCADDT-cbl-00187Add Message to Report
Process Rules
Business View: Assuming a diversion message has been generated during the 'Add Message to Report' routine, when the system updates the processing report, the system executes logic to ensure that the report index is incremented to include the diversion message in the output report.
Given
A diversion message has been generated
When
The system updates the processing report
Then
The report index is incremented to include the diversion message in the output report
R-GCCADDT-cbl-00188Set Diversion Flag for Special Manifest
Action Rules
Business View: Assuming a cargo requiring diversion has been identified during the 'Set Diversion Flag for Special Manifest' routine, when the system prepares for special manifest creation, the system executes logic to ensure that the gcx101-diversion flag is set to indicate this cargo needs special manifest processing.
Given
A cargo requiring diversion has been identified
When
The system prepares for special manifest creation
Then
The GCX101-DIVERSION flag is set to indicate this cargo needs special manifest processing
R-GCCADDT-cbl-00189Create Special Manifest Request
Action Rules
Business View: Assuming a cargo with diversion flag set during the 'Create Special Manifest Request' routine, when the system creates special manifest documentation, the system executes logic to ensure that a special manifest request is generated with diversion type, border information, and cargo details for customs processing.
Given
A cargo with diversion flag set
When
The system creates special manifest documentation
Then
A special manifest request is generated with diversion type, border information, and cargo details for customs processing
R-GCCADDT-cbl-00322Set Diversion Message
Action Rules
Business View: Assuming port mismatch has been detected for eligible cargo during the 'Set Diversion Message' routine, when the system processes the diversion condition, the system executes logic to ensure that set message twenty (msg-twenty) to indicate diversion requirement.
Given
Port mismatch has been detected for eligible cargo
When
The system processes the diversion condition
Then
Set message twenty (MSG-TWENTY) to indicate diversion requirement
R-GCCADDT-cbl-00323Add Report Line
Process Rules
Business View: Assuming diversion message has been set during the 'Add Report Line' routine, when the system updates the report, the system executes logic to ensure that add report index to include the diversion message in the output report.
Given
Diversion message has been set
When
The system updates the report
Then
Add report index to include the diversion message in the output report
R-GCCADDT-cbl-00324Set GCX101 Diversion Flag
Action Rules
Business View: Assuming diversion message has been added to report during the 'Set GCX101 Diversion Flag' routine, when the system prepares for manifest creation, the system executes logic to ensure that set ws-gcx101-diversion flag to true to indicate diversion manifest type.
Given
Diversion message has been added to report
When
The system prepares for manifest creation
Then
Set WS-GCX101-DIVERSION flag to true to indicate diversion manifest type
R-GCCADDT-cbl-00325Create Special Manifest Request
Action Rules
Business View: Assuming gcx101 diversion flag has been set during the 'Create Special Manifest Request' routine, when the system creates special manifest, the system executes logic to ensure that perform special manifest creation process (7600-create-special-manifest) to generate diversion manifest for customs.
Given
GCX101 diversion flag has been set
When
The system creates special manifest
Then
Perform special manifest creation process (7600-CREATE-SPECIAL-MANIFEST) to generate diversion manifest for customs
Business View: Assuming shipment has been identified as us-to-us domestic routing during the 'Generate US-to-US Detour Message' routine, when system processes us domestic detour requirement, the system executes logic to ensure that system sets message twenty-three flag to indicate us-to-us detour situation.
Given
Shipment has been identified as US-to-US domestic routing
When
System processes US domestic detour requirement
Then
System sets message twenty-three flag to indicate US-to-US detour situation
R-GCCADDT-cbl-00200Add Message to Report
Process Rules
Business View: Assuming us-to-us detour message has been generated during the 'Add Message to Report' routine, when system adds message to report, the system executes logic to ensure that system increments report index to include the detour message in the output report.
Given
US-to-US detour message has been generated
When
System adds message to report
Then
System increments report index to include the detour message in the output report
R-GCCADDT-cbl-00201Set US-US-Detour Flag
Process Rules
Business View: Assuming us-to-us detour message has been added to report during the 'Set US-US-Detour Flag' routine, when system sets processing flags for special manifest creation, the system executes logic to ensure that system sets us-us-detour flag to true to trigger appropriate manifest generation.
Given
US-to-US detour message has been added to report
When
System sets processing flags for special manifest creation
Then
System sets US-US-detour flag to true to trigger appropriate manifest generation
R-GCCADDT-cbl-00202Create Special Manifest for Detour
Action Rules
Business View: Assuming us-us-detour flag has been set during the 'Create Special Manifest for Detour' routine, when system creates special manifest, the system executes logic to ensure that system calls special manifest creation process to generate appropriate customs documentation for the detour.
Given
US-US-detour flag has been set
When
System creates special manifest
Then
System calls special manifest creation process to generate appropriate customs documentation for the detour
R-GCCADDT-cbl-00203Generate Missing Cargo Message
Action Rules
Business View: <EXCLUSION CRITERIA> If equipment has waybill but no cargo and is not us-to-us domestic routing, and origin country is not 'us' or destination country is not 'us' occurs during the 'Generate Missing Cargo Message' routine, then the system must guarantee that system sets message fifteen flag to indicate missing cargo situation.
EXCLUDING
Equipment has waybill but no cargo and is not US-to-US domestic routing
When
Origin country is not 'US' OR destination country is not 'US'
Then
System sets message fifteen flag to indicate missing cargo situation
R-GCCADDT-cbl-00204Add Waybill Root Key and Date to Message
Process Rules
Business View: Assuming missing cargo message has been generated for non-us routes during the 'Add Waybill Root Key and Date to Message' routine, when system adds waybill details to the message, the system executes logic to ensure that system includes waybill root key and waybill date in the message fifteen content for identification purposes.
Given
Missing cargo message has been generated for non-US routes
When
System adds waybill details to the message
Then
System includes waybill root key and waybill date in the message fifteen content for identification purposes
R-GCCADDT-cbl-00334Process as US Domestic Movement
Decision Rules
Business View: Assuming both origin country and destination country have been determined from the state lookup during the 'Process as US Domestic Movement' routine, when the origin country equals 'us' and the destination country equals 'us', the system executes logic to ensure that the shipment is processed as a us domestic movement requiring special manifest creation for us-us detour.
Given
Both origin country and destination country have been determined from the state lookup
When
The origin country equals 'US' AND the destination country equals 'US'
Then
The shipment is processed as a US domestic movement requiring special manifest creation for US-US detour
Business View: Assuming a special manifest needs to be created for customs processing during the 'Initialize GCX101 Input Parameters' routine, when the manifest creation process begins, the system executes logic to ensure that the system initializes gcx101 input structure and increments the spawn counter by 1.
Given
A special manifest needs to be created for customs processing
When
The manifest creation process begins
Then
The system initializes GCX101 input structure and increments the spawn counter by 1
R-GCCADDT-cbl-00206Set Security and Record Type
Policy Rules
Business View: Assuming a special manifest is being created for customs processing during the 'Set Security and Record Type' routine, when security and record type parameters are being set, the system executes logic to ensure that the system sets security byte to high values and record type code to 'us'.
Given
A special manifest is being created for customs processing
When
Security and record type parameters are being set
Then
The system sets security byte to high values and record type code to 'US'
R-GCCADDT-cbl-00207Set Border Code and Name
Definitional Rules
Business View: Assuming a special manifest requires border crossing information during the 'Set Border Code and Name' routine, when border parameters are being populated, the system executes logic to ensure that the system sets border code from train crossing port and border name from train crossing name.
Given
A special manifest requires border crossing information
When
Border parameters are being populated
Then
The system sets border code from train crossing port and border name from train crossing name
R-GCCADDT-cbl-00208Set Diversion Type
Decision Rules
Business View: Assuming a cargo shipment has routing discrepancies requiring port diversion during the 'Set Diversion Type' routine, when the manifest type is being determined as diversion, the system executes logic to ensure that the system sets gcx101 diversion flag to true and populates ccn from cargo us ccn key.
Given
A cargo shipment has routing discrepancies requiring port diversion
When
The manifest type is being determined as diversion
Then
The system sets GCX101 diversion flag to true and populates CCN from cargo US CCN key
R-GCCADDT-cbl-00209Set IT Export Type
Decision Rules
Business View: Assuming a cargo shipment requires immediate transport export processing during the 'Set IT Export Type' routine, when the manifest type is being determined as it export, the system executes logic to ensure that the system sets gcx101 it export flag to true, populates equipment id, waybill number, waybill date, and ccn from cargo.
Given
A cargo shipment requires immediate transport export processing
When
The manifest type is being determined as IT export
Then
The system sets GCX101 IT export flag to true, populates equipment ID, waybill number, waybill date, and CCN from cargo
R-GCCADDT-cbl-00210Set Port Change Type
Decision Rules
Business View: Assuming a cargo shipment has incorrect destination port information during the 'Set Port Change Type' routine, when the manifest type is being determined as port change, the system executes logic to ensure that the system sets gcx101 port change flag to true and populates ccn from cargo us ccn key.
Given
A cargo shipment has incorrect destination port information
When
The manifest type is being determined as port change
Then
The system sets GCX101 port change flag to true and populates CCN from cargo US CCN key
R-GCCADDT-cbl-00211Set US-to-US Detour Type
Decision Rules
Business View: Assuming a us domestic shipment without cargo requires detour routing during the 'Set US-to-US Detour Type' routine, when the manifest type is being determined as us-to-us detour, the system executes logic to ensure that the system sets gcx101 us-us detour flag to true, clears ccn field, and populates equipment id, waybill root, and waybill date.
Given
A US domestic shipment without cargo requires detour routing
When
The manifest type is being determined as US-to-US detour
Then
The system sets GCX101 US-US detour flag to true, clears CCN field, and populates equipment ID, waybill root, and waybill date
R-GCCADDT-cbl-00212Store GCX101 Request in Spawn Table
Process Rules
Business View: Assuming a gcx101 manifest request has been fully populated with required data during the 'Store GCX101 Request in Spawn Table' routine, when the request needs to be queued for processing, the system executes logic to ensure that the system stores the gcx101 input structure in the spawn table at the current spawn counter position.
Given
A GCX101 manifest request has been fully populated with required data
When
The request needs to be queued for processing
Then
The system stores the GCX101 input structure in the spawn table at the current spawn counter position
R-GCCADDT-cbl-00213Execute GCX101 Spawn Process
Action Rules
Business View: Assuming gcx101 manifest requests are queued in the spawn table and no errors exist in the report during the 'Execute GCX101 Spawn Process' routine, when the spawn processing is executed for each queued request, the system executes logic to ensure that the system retrieves each spawn table entry, moves it to message format, and calls cims to change to export pcb.
Given
GCX101 manifest requests are queued in the spawn table and no errors exist in the report
When
The spawn processing is executed for each queued request
Then
The system retrieves each spawn table entry, moves it to message format, and calls CIMS to change to export PCB
R-GCCADDT-cbl-00214Send Message to Export Queue
Action Rules
Business View: Assuming a gcx101 manifest message is ready for export processing during the 'Send Message to Export Queue' routine, when the message is being sent to the export queue, the system executes logic to ensure that the system calls writmsgl to write the message with code, content, length and module name to the export pcb.
Given
A GCX101 manifest message is ready for export processing
When
The message is being sent to the export queue
Then
The system calls WRITMSGL to write the message with code, content, length and module name to the export PCB
R-GCCADDT-cbl-00215Purge Message Queue
Process Rules
Business View: Assuming a gcx101 manifest message has been successfully sent to the export queue during the 'Purge Message Queue' routine, when the message processing is complete, the system executes logic to ensure that the system calls cims with purge function to clear the export pcb queue.
Given
A GCX101 manifest message has been successfully sent to the export queue
When
The message processing is complete
Then
The system calls CIMS with purge function to clear the export PCB queue
Business View: Assuming a manifest creation request is initiated during the 'Initialize GCX101 Input Parameters' routine, when the system begins manifest parameter configuration, the system executes logic to ensure that all gcx101 input parameters are initialized to default values and spawn count is incremented.
Given
A manifest creation request is initiated
When
The system begins manifest parameter configuration
Then
All GCX101 input parameters are initialized to default values and spawn count is incremented
R-GCCADDT-cbl-00337Set Security and Record Type
Policy Rules
Business View: Assuming manifest parameters are being configured during the 'Set Security and Record Type' routine, when security and record type need to be established, the system executes logic to ensure that security byte is set to high values and record type code is set to 'us'.
Given
Manifest parameters are being configured
When
Security and record type need to be established
Then
Security byte is set to high values and record type code is set to 'US'
R-GCCADDT-cbl-00338Set Border Code and Name
Definitional Rules
Business View: Assuming train crossing port and name are available in the input parameters during the 'Set Border Code and Name' routine, when border information needs to be configured for the manifest, the system executes logic to ensure that border code is set to the train crossing port and border name is set to the train crossing name.
Given
Train crossing port and name are available in the input parameters
When
Border information needs to be configured for the manifest
Then
Border code is set to the train crossing port and border name is set to the train crossing name
R-GCCADDT-cbl-00339Set CCN from Cargo Data
Definitional Rules
Business View: Assuming cargo data contains a us ccn key during the 'Set CCN from Cargo Data' routine, when ccn information needs to be set for the manifest, the system executes logic to ensure that the ccn field is populated with the us ccn key from the cargo data.
Given
Cargo data contains a US CCN key
When
CCN information needs to be set for the manifest
Then
The CCN field is populated with the US CCN key from the cargo data
R-GCCADDT-cbl-00340Configure Diversion Parameters
Decision Rules
Business View: Assuming a diversion manifest type is required during the 'Configure Diversion Parameters' routine, when the manifest type is determined to be diversion, the system executes logic to ensure that the diversion flag is set to true in the manifest configuration.
Given
A diversion manifest type is required
When
The manifest type is determined to be diversion
Then
The diversion flag is set to true in the manifest configuration
R-GCCADDT-cbl-00341Configure IT Export Parameters
Decision Rules
Business View: Assuming an it export manifest type is required during the 'Configure IT Export Parameters' routine, when the manifest type is determined to be it export, the system executes logic to ensure that the it export flag is set to true in the manifest configuration.
Given
An IT export manifest type is required
When
The manifest type is determined to be IT export
Then
The IT export flag is set to true in the manifest configuration
R-GCCADDT-cbl-00342Configure Port Change Parameters
Decision Rules
Business View: Assuming a port change manifest type is required during the 'Configure Port Change Parameters' routine, when the manifest type is determined to be port change, the system executes logic to ensure that the port change flag is set to true in the manifest configuration.
Given
A port change manifest type is required
When
The manifest type is determined to be port change
Then
The port change flag is set to true in the manifest configuration
Business View: Assuming a us-us detour manifest type is required during the 'Configure US-US Detour Parameters' routine, when the manifest type is determined to be us-us detour, the system executes logic to ensure that the us-us detour flag is set to true in the manifest configuration.
Given
A US-US detour manifest type is required
When
The manifest type is determined to be US-US detour
Then
The US-US detour flag is set to true in the manifest configuration
R-GCCADDT-cbl-00344Set Equipment ID for Export/Detour
Definitional Rules
Business View: Assuming the manifest type is either it export or us-us detour during the 'Set Equipment ID for Export/Detour' routine, when equipment identification needs to be set, the system executes logic to ensure that the car id field is populated with the equipment id.
Given
The manifest type is either IT export or US-US detour
When
Equipment identification needs to be set
Then
The car ID field is populated with the equipment ID
R-GCCADDT-cbl-00345Set Waybill Number and Date
Definitional Rules
Business View: Assuming the manifest type is it export and cargo data contains waybill information during the 'Set Waybill Number and Date' routine, when waybill information needs to be set, the system executes logic to ensure that waybill number is set from cargo rt072 waybill number index and waybill date is set from cargo rt072 waybill date index.
Given
The manifest type is IT export and cargo data contains waybill information
When
Waybill information needs to be set
Then
Waybill number is set from cargo RT072 waybill number index and waybill date is set from cargo RT072 waybill date index
R-GCCADDT-cbl-00346Set Waybill Number and Date
Definitional Rules
Business View: Assuming the manifest type is us-us detour during the 'Set Waybill Number and Date' routine, when waybill information needs to be set for detour processing, the system executes logic to ensure that waybill number is set from working storage waybill root and waybill date is set from working storage waybill date.
Given
The manifest type is US-US detour
When
Waybill information needs to be set for detour processing
Then
Waybill number is set from working storage waybill root and waybill date is set from working storage waybill date
R-GCCADDT-cbl-00347Clear CCN for Detour Type
Process Rules
Business View: Assuming the manifest type is us-us detour during the 'Clear CCN for Detour Type' routine, when ccn information needs to be cleared for detour processing, the system executes logic to ensure that the ccn field is set to spaces.
Given
The manifest type is US-US detour
When
CCN information needs to be cleared for detour processing
Then
The CCN field is set to spaces
R-GCCADDT-cbl-00348Store Configured Parameters
Process Rules
Business View: Assuming all manifest parameters have been configured based on the manifest type during the 'Store Configured Parameters' routine, when the configuration is complete, the system executes logic to ensure that the configured gcx101 input parameters are stored in the working storage gcx101 input array at the current spawn count position.
Given
All manifest parameters have been configured based on the manifest type
When
The configuration is complete
Then
The configured GCX101 input parameters are stored in the working storage GCX101 input array at the current spawn count position
R-GCCADDT-cbl-00402Set Equipment ID from Current Equipment
Action Rules
Business View: Assuming a special manifest is being created and the manifest type is it export during the 'Set Equipment ID from Current Equipment' routine, when the system processes the equipment identification setup, the system executes logic to ensure that the equipment id from the current equipment should be assigned to the manifest.
Given
A special manifest is being created and the manifest type is IT Export
When
The system processes the equipment identification setup
Then
The equipment ID from the current equipment should be assigned to the manifest
R-GCCADDT-cbl-00403Set Waybill Number from Cargo Record
Action Rules
Business View: Assuming a special manifest is being created and the manifest type is it export during the 'Set Waybill Number from Cargo Record' routine, when the system processes the waybill information setup, the system executes logic to ensure that the waybill number and waybill date should be assigned from the cargo record to the manifest.
Given
A special manifest is being created and the manifest type is IT Export
When
The system processes the waybill information setup
Then
The waybill number and waybill date should be assigned from the cargo record to the manifest
R-GCCADDT-cbl-00404Clear CCN Key for Detour
Process Rules
Business View: Assuming a special manifest is being created and the manifest type is us-to-us detour during the 'Clear CCN Key for Detour' routine, when the system processes the ccn setup, the system executes logic to ensure that the ccn key should be cleared (set to spaces) in the manifest.
Given
A special manifest is being created and the manifest type is US-to-US Detour
When
The system processes the CCN setup
Then
The CCN key should be cleared (set to spaces) in the manifest
R-GCCADDT-cbl-00405Set Equipment ID from Current Equipment
Action Rules
Business View: Assuming a special manifest is being created and the manifest type is us-to-us detour during the 'Set Equipment ID from Current Equipment' routine, when the system processes the equipment and waybill setup, the system executes logic to ensure that the equipment id should be assigned from current equipment, waybill root key should be assigned from working storage, and waybill date should be assigned from working storage.
Given
A special manifest is being created and the manifest type is US-to-US Detour
When
The system processes the equipment and waybill setup
Then
The equipment ID should be assigned from current equipment, waybill root key should be assigned from working storage, and waybill date should be assigned from working storage
R-GCCADDT-cbl-00406Skip Equipment ID Setup
Process Rules
Business View: Assuming a special manifest is being created and the manifest type is diversion or port change during the 'Skip Equipment ID Setup' routine, when the system processes the equipment identification setup, the system executes logic to ensure that no equipment id, waybill number, or waybill date should be assigned to the manifest.
Given
A special manifest is being created and the manifest type is Diversion or Port Change
When
The system processes the equipment identification setup
Then
No equipment ID, waybill number, or waybill date should be assigned to the manifest
R-GCCADDT-cbl-00227Check if train has arrived and US-CCN is required for additions
Validation Rules
Business View: Assuming a train crossing process is being completed during the 'Check if train has arrived and US-CCN is required for additions' routine, when the train has arrived and the first us-ccn entry in the report is empty (spaces), the system executes logic to ensure that generate error message msg-twenty-six indicating train arrived but no us-ccn available for additions and add the error to the report.
Given
A train crossing process is being completed
When
The train has arrived AND the first US-CCN entry in the report is empty (spaces)
Then
Generate error message MSG-TWENTY-SIX indicating train arrived but no US-CCN available for additions AND add the error to the report
R-GCCADDT-cbl-00229Generate Message 23: IT Export Required
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is us-can-us (88-gcusrt-m1201-us-can-us) and tr is not created for it (gcusrt-tr-created-for-it not = 'y') and cargo status is release (gcusrt-rt21-uscargo-stat-desc = 'release'), and the system processes the cargo validation occurs during the 'Generate Message 23: IT Export Required' routine, then the system must guarantee that set msg-twenty-three message flag and create it-export special manifest request.
EXCLUDING
Cargo is found AND cargo type is US-CAN-US (88-GCUSRT-M1201-US-CAN-US) AND TR is not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y') AND cargo status is RELEASE (GCUSRT-RT21-USCARGO-STAT-DESC = 'RELEASE')
When
The system processes the cargo validation
Then
Set MSG-TWENTY-THREE message flag AND create IT-EXPORT special manifest request
R-GCCADDT-cbl-00230Generate Message 23: IT Export Required
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is immediate transport (88-gcusrt-m1201-imm-transp) and tr is not created for it (gcusrt-tr-created-for-it not = 'y'), and the system processes the cargo validation occurs during the 'Generate Message 23: IT Export Required' routine, then the system must guarantee that set msg-twenty-three message flag and create it-export special manifest request.
EXCLUDING
Cargo is found AND cargo type is immediate transport (88-GCUSRT-M1201-IMM-TRANSP) AND TR is not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y')
When
The system processes the cargo validation
Then
Set MSG-TWENTY-THREE message flag AND create IT-EXPORT special manifest request
R-GCCADDT-cbl-00231Generate Message 23: IT Export Required
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is default (88-gcusrt-m1109-default) and tr is not created for it (gcusrt-tr-created-for-it not = 'y') and cargo status is release (gcusrt-rt21-uscargo-stat-desc = 'release'), and the system processes the cargo validation occurs during the 'Generate Message 23: IT Export Required' routine, then the system must guarantee that set msg-twenty-three message flag and create it-export special manifest request.
EXCLUDING
Cargo is found AND cargo type is default (88-GCUSRT-M1109-DEFAULT) AND TR is not created for IT (GCUSRT-TR-CREATED-FOR-IT NOT = 'Y') AND cargo status is RELEASE (GCUSRT-RT21-USCARGO-STAT-DESC = 'RELEASE')
When
The system processes the cargo validation
Then
Set MSG-TWENTY-THREE message flag AND create IT-EXPORT special manifest request
Business View: <EXCLUSION CRITERIA> If waybill is not found (ws-waybill-not-found) and container is found (ws-container-found), and the system validates waybill and container relationship occurs during the 'Generate Message 10: Container Waybill Missing' routine, then the system must guarantee that set msg-ten message flag to indicate container waybill is missing.
EXCLUDING
Waybill is not found (WS-WAYBILL-NOT-FOUND) AND container is found (WS-CONTAINER-FOUND)
When
The system validates waybill and container relationship
Then
Set MSG-TEN message flag to indicate container waybill is missing
R-GCCADDT-cbl-00233Generate Message 15: No Cargo Found
Validation Rules
Business View: <EXCLUSION CRITERIA> If waybill is found (ws-waybill-found) and no cargo is found (ws-no-cargo-found) and idler indicator is not spaces (idler-ind not = spaces), and the system validates cargo existence for the waybill occurs during the 'Generate Message 15: No Cargo Found' routine, then the system must guarantee that set msg-fifteen message flag and populate message with root-key and wb-date.
EXCLUDING
Waybill is found (WS-WAYBILL-FOUND) AND no cargo is found (WS-NO-CARGO-FOUND) AND idler indicator is not spaces (IDLER-IND NOT = SPACES)
When
The system validates cargo existence for the waybill
Then
Set MSG-FIFTEEN message flag AND populate message with ROOT-KEY and WB-DATE
Business View: <EXCLUSION CRITERIA> If waybill is found and no cargo is found and container is not found and equipment is not conveying car (not shrt-conveying-car) and origin country is us (ws-orig-cntry = 'us') and destination country is us (ws-dest-cntry = 'us'), and the system determines routing requirements for domestic movement occurs during the 'Generate Message 23: US-US Detour Required' routine, then the system must guarantee that set msg-twenty-three message flag and create us-us-detour special manifest request.
EXCLUDING
Waybill is found AND no cargo is found AND container is not found AND equipment is not conveying car (NOT SHRT-CONVEYING-CAR) AND origin country is US (WS-ORIG-CNTRY = 'US') AND destination country is US (WS-DEST-CNTRY = 'US')
When
The system determines routing requirements for domestic movement
Then
Set MSG-TWENTY-THREE message flag AND create US-US-DETOUR special manifest request
R-GCCADDT-cbl-00235Generate Message 17: Invalid Bond Type
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and ((bond type is te and vessel name starts with t) or (bond type is not te or mt and vessel name is not train)), and the system validates transport bond type compatibility occurs during the 'Generate Message 17: Invalid Bond Type' routine, then the system must guarantee that set msg-seventeen message flag to indicate invalid bond type for train transport.
EXCLUDING
Cargo is found AND ((bond type is TE AND vessel name starts with T) OR (bond type is not TE or MT AND vessel name is not TRAIN))
When
The system validates transport bond type compatibility
Then
Set MSG-SEVENTEEN message flag to indicate invalid bond type for train transport
R-GCCADDT-cbl-00236Generate Message 16: Cargo Status Error
Validation Rules
Business View: Assuming cargo is found and cargo status is (pending or deleted or error) during the 'Generate Message 16: Cargo Status Error' routine, when the system validates cargo processing status, the system executes logic to ensure that set msg-sixteen message flag to indicate cargo status error.
Given
Cargo is found AND cargo status is (PENDING OR DELETED OR ERROR)
When
The system validates cargo processing status
Then
Set MSG-SIXTEEN message flag to indicate cargo status error
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is tr (gcusrt-m1201-in-bond-typ-cde = 'tr') and cargo status is export and cargo is billed as cprs (gcusrt-bill-as-cprs) and user security level is not s (gcladdif-user-security-level not = 's'), and the system validates user authorization for export cargo processing occurs during the 'Generate Message 12: Security Level Error' routine, then the system must guarantee that set msg-twelve message flag to indicate insufficient security level.
EXCLUDING
Cargo is found AND bond type is TR (GCUSRT-M1201-IN-BOND-TYP-CDE = 'TR') AND cargo status is EXPORT AND cargo is billed as CPRS (GCUSRT-BILL-AS-CPRS) AND user security level is not S (GCLADDIF-USER-SECURITY-LEVEL NOT = 'S')
When
The system validates user authorization for export cargo processing
Then
Set MSG-TWELVE message flag to indicate insufficient security level
R-GCCADDT-cbl-00238Generate Message 25: Port Mismatch
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is mt (gcusrt-m1201-in-bond-typ-cde = 'mt') and vessel name is not train or spaces and train crossing port does not match cargo location (gcladdif-train-crossing-port not = gcusrt-p401-location-id), and the system validates port location for mt transport occurs during the 'Generate Message 25: Port Mismatch' routine, then the system must guarantee that set msg-twenty-five message flag to indicate port mismatch.
EXCLUDING
Cargo is found AND bond type is MT (GCUSRT-M1201-IN-BOND-TYP-CDE = 'MT') AND vessel name is not TRAIN or SPACES AND train crossing port does not match cargo location (GCLADDIF-TRAIN-CROSSING-PORT NOT = GCUSRT-P401-LOCATION-ID)
When
The system validates port location for MT transport
Then
Set MSG-TWENTY-FIVE message flag to indicate port mismatch
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is transport export (88-gcusrt-m1201-transp-export) and tr is not created and cargo status is not export and cargo is billed as cprs and cargo location does not match train crossing port (gcusrt-m1203-location-id1 not = gcladdif-train-crossing-port), and the system processes port change requirements occurs during the 'Generate Message 20: Diversion Required' routine, then the system must guarantee that set msg-twenty message flag and create chg-port special manifest request.
EXCLUDING
Cargo is found AND cargo type is transport export (88-GCUSRT-M1201-TRANSP-EXPORT) AND TR is not created AND cargo status is not EXPORT AND cargo is billed as CPRS AND cargo location does not match train crossing port (GCUSRT-M1203-LOCATION-ID1 NOT = GCLADDIF-TRAIN-CROSSING-PORT)
When
The system processes port change requirements
Then
Set MSG-TWENTY message flag AND create CHG-PORT special manifest request
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is us-can-us (88-gcusrt-m1201-us-can-us) and cargo is master in-bond (88-gcusrt-m1109-master-in-bond) and train crossing port does not match cargo location (gcladdif-train-crossing-port not = gcusrt-p401-location-id), and the system processes diversion requirements for master in-bond cargo occurs during the 'Generate Message 20: Diversion Required' routine, then the system must guarantee that execute diversion process to generate msg-twenty and create diversion manifest request.
EXCLUDING
Cargo is found AND cargo type is US-CAN-US (88-GCUSRT-M1201-US-CAN-US) AND cargo is master in-bond (88-GCUSRT-M1109-MASTER-IN-BOND) AND train crossing port does not match cargo location (GCLADDIF-TRAIN-CROSSING-PORT NOT = GCUSRT-P401-LOCATION-ID)
When
The system processes diversion requirements for master in-bond cargo
Then
Execute diversion process to generate MSG-TWENTY and create DIVERSION manifest request
R-GCCADDT-cbl-00241Generate Message 1: No Waybill Found
Validation Rules
Business View: <EXCLUSION CRITERIA> If waybill is not found (ws-waybill-not-found) and container is not found (ws-container-not-found), and the system searches for waybill and container information occurs during the 'Generate Message 1: No Waybill Found' routine, then the system must guarantee that set msg-one message flag to indicate no waybill found for the equipment.
EXCLUDING
Waybill is not found (WS-WAYBILL-NOT-FOUND) AND container is not found (WS-CONTAINER-NOT-FOUND)
When
The system searches for waybill and container information
Then
Set MSG-ONE message flag to indicate no waybill found for the equipment
R-GCCADDT-cbl-00349Cargo Found with TR Created for IT?
Decision Rules
Business View: Assuming cargo is found and transport record is created for immediate transport (tr-created-for-it = 'y') during the 'Cargo Found with TR Created for IT?' routine, when the system evaluates the cargo movement type codes, the system executes logic to ensure that set the appropriate transport requirement flag: it for immediate transport (m1201-imm-transp), te for transport export (m1201-transp-export), 00 for default (m1109-default), 88 for export (m1109-export), or tr for us-canada-us (m1201-us-can-us).
Given
Cargo is found AND transport record is created for immediate transport (TR-CREATED-FOR-IT = 'Y')
When
The system evaluates the cargo movement type codes
Then
Set the appropriate transport requirement flag: IT for immediate transport (M1201-IMM-TRANSP), TE for transport export (M1201-TRANSP-EXPORT), 00 for default (M1109-DEFAULT), 88 for export (M1109-EXPORT), or TR for US-Canada-US (M1201-US-CAN-US)
R-GCCADDT-cbl-00350US-CAN-US Cargo Released?
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is us-canada-us (m1201-us-can-us) and transport record is not created for immediate transport (tr-created-for-it not = 'y') and cargo status is 'release', and the system processes the cargo validation occurs during the 'US-CAN-US Cargo Released?' routine, then the system must guarantee that generate message twenty-three (it export required) and create it export special manifest.
EXCLUDING
Cargo is found AND cargo type is US-Canada-US (M1201-US-CAN-US) AND transport record is not created for immediate transport (TR-CREATED-FOR-IT NOT = 'Y') AND cargo status is 'RELEASE'
When
The system processes the cargo validation
Then
Generate message twenty-three (IT Export Required) AND create IT export special manifest
R-GCCADDT-cbl-00351Immediate Transport Not Created?
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is immediate transport (m1201-imm-transp) and transport record is not created for immediate transport (tr-created-for-it not = 'y'), and the system processes the cargo validation occurs during the 'Immediate Transport Not Created?' routine, then the system must guarantee that generate message twenty-three (it export required) and create it export special manifest.
EXCLUDING
Cargo is found AND cargo type is immediate transport (M1201-IMM-TRANSP) AND transport record is not created for immediate transport (TR-CREATED-FOR-IT NOT = 'Y')
When
The system processes the cargo validation
Then
Generate message twenty-three (IT Export Required) AND create IT export special manifest
R-GCCADDT-cbl-00352Default Cargo Released?
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is default (m1109-default) and transport record is not created for immediate transport (tr-created-for-it not = 'y') and cargo status is 'release', and the system processes the cargo validation occurs during the 'Default Cargo Released?' routine, then the system must guarantee that generate message twenty-three (it export required) and create it export special manifest.
EXCLUDING
Cargo is found AND cargo type is default (M1109-DEFAULT) AND transport record is not created for immediate transport (TR-CREATED-FOR-IT NOT = 'Y') AND cargo status is 'RELEASE'
When
The system processes the cargo validation
Then
Generate message twenty-three (IT Export Required) AND create IT export special manifest
R-GCCADDT-cbl-00353No Waybill for Container?
Validation Rules
Business View: <EXCLUSION CRITERIA> If waybill is not found and container is found, and the system validates waybill and container relationship occurs during the 'No Waybill for Container?' routine, then the system must guarantee that generate message ten (container waybill missing).
EXCLUDING
Waybill is not found AND container is found
When
The system validates waybill and container relationship
Then
Generate message ten (Container Waybill Missing)
R-GCCADDT-cbl-00354No Cargo for Loaded Equipment?
Validation Rules
Business View: <EXCLUSION CRITERIA> If waybill is found and no cargo is found and ((container is found and equipment load indicator is 'l') or (container is not found and equipment is not conveying car)), and the system processes cargo validation for loaded equipment occurs during the 'No Cargo for Loaded Equipment?' routine, then the system must guarantee that generate message fifteen (no cargo found) with waybill root key and date.
EXCLUDING
Waybill is found AND no cargo is found AND ((container is found AND equipment load indicator is 'L') OR (container is not found AND equipment is not conveying car))
When
The system processes cargo validation for loaded equipment
Then
Generate message fifteen (No Cargo Found) with waybill root key and date
R-GCCADDT-cbl-00355US-to-US Movement?
Decision Rules
Business View: <EXCLUSION CRITERIA> If waybill is found and no cargo is found and container is not found and equipment is not conveying car and origin country is 'us' and destination country is 'us', and the system determines movement is domestic us routing occurs during the 'US-to-US Movement?' routine, then the system must guarantee that generate message twenty-three (us-us detour) and create us-us detour special manifest.
EXCLUDING
Waybill is found AND no cargo is found AND container is not found AND equipment is not conveying car AND origin country is 'US' AND destination country is 'US'
When
The system determines movement is domestic US routing
Then
Generate message twenty-three (US-US Detour) AND create US-US detour special manifest
R-GCCADDT-cbl-00356Invalid Bond Type for Vessel?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and ((bond type is 'te' and vessel name position 23 is 't') or (bond type is not 'te' and not 'mt' and vessel name is not 'train')), and the system validates bond type and vessel name combination occurs during the 'Invalid Bond Type for Vessel?' routine, then the system must guarantee that generate message seventeen (invalid bond/vessel).
EXCLUDING
Cargo is found AND ((bond type is 'TE' AND vessel name position 23 is 'T') OR (bond type is not 'TE' and not 'MT' AND vessel name is not 'TRAIN'))
When
The system validates bond type and vessel name combination
Then
Generate message seventeen (Invalid Bond/Vessel)
R-GCCADDT-cbl-00357Cargo Status Error?
Validation Rules
Business View: Assuming cargo is found and cargo status is pending or deleted or error during the 'Cargo Status Error?' routine, when the system validates cargo processing status, the system executes logic to ensure that generate message sixteen (cargo status error).
Given
Cargo is found AND cargo status is pending OR deleted OR error
When
The system validates cargo processing status
Then
Generate message sixteen (Cargo Status Error)
R-GCCADDT-cbl-00358Export Cargo Security Issue?
Authorization Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is 'tr' and cargo status is 'export' and cargo is billed as cprs and user security level is not 's', and the system validates user access to export cargo occurs during the 'Export Cargo Security Issue?' routine, then the system must guarantee that generate message twelve (security level error).
EXCLUDING
Cargo is found AND bond type is 'TR' AND cargo status is 'EXPORT' AND cargo is billed as CPRS AND user security level is not 'S'
When
The system validates user access to export cargo
Then
Generate message twelve (Security Level Error)
R-GCCADDT-cbl-00359Port Mismatch for MT Bond?
Validation Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and bond type is 'mt' and vessel name is not 'train' and not spaces and train crossing port does not match cargo location, and the system validates mt bond cargo routing occurs during the 'Port Mismatch for MT Bond?' routine, then the system must guarantee that generate message twenty-five (port mismatch).
EXCLUDING
Cargo is found AND bond type is 'MT' AND vessel name is not 'TRAIN' and not spaces AND train crossing port does not match cargo location
When
The system validates MT bond cargo routing
Then
Generate message twenty-five (Port Mismatch)
R-GCCADDT-cbl-00360Transport Export Port Change?
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is transport export (m1201-transp-export) and transport record is not created for immediate transport and cargo status is not 'export' and cargo is billed as cprs and cargo location does not match train crossing port, and the system validates transport export cargo routing occurs during the 'Transport Export Port Change?' routine, then the system must guarantee that generate message twenty (port change required) and create port change special manifest.
EXCLUDING
Cargo is found AND cargo type is transport export (M1201-TRANSP-EXPORT) AND transport record is not created for immediate transport AND cargo status is not 'EXPORT' AND cargo is billed as CPRS AND cargo location does not match train crossing port
When
The system validates transport export cargo routing
Then
Generate message twenty (Port Change Required) AND create port change special manifest
R-GCCADDT-cbl-00361Diversion Required?
Action Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo type is us-canada-us (m1201-us-can-us) and cargo is master in-bond (m1109-master-in-bond) and train crossing port does not match cargo location, and the system validates us-canada-us cargo routing occurs during the 'Diversion Required?' routine, then the system must guarantee that generate message twenty (diversion required) and create diversion special manifest.
EXCLUDING
Cargo is found AND cargo type is US-Canada-US (M1201-US-CAN-US) AND cargo is master in-bond (M1109-MASTER-IN-BOND) AND train crossing port does not match cargo location
When
The system validates US-Canada-US cargo routing
Then
Generate message twenty (Diversion Required) AND create diversion special manifest
R-GCCADDT-cbl-00362Categorize Message Type
Process Rules
Business View: Assuming a message has been generated for the report during the 'Categorize Message Type' routine, when the system categorizes the message type, the system executes logic to ensure that if message is error type, increment error count or if message is warning type, increment warning count or if message is information type, increment information count.
Given
A message has been generated for the report
When
The system categorizes the message type
Then
If message is error type, increment error count OR if message is warning type, increment warning count OR if message is information type, increment information count
R-GCCADDT-cbl-00407US-CAN-US Cargo with Release Status?
Decision Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with us-canada-us transport type and cargo status is release and transport record is not created for it, and the system processes the cargo for manifest requirements occurs during the 'US-CAN-US Cargo with Release Status?' routine, then the system must guarantee that the system should set message twenty-three, increment report index, set it export flag, and create special manifest.
EXCLUDING
A cargo record exists with US-Canada-US transport type and cargo status is RELEASE and transport record is not created for IT
When
The system processes the cargo for manifest requirements
Then
The system should set message twenty-three, increment report index, set IT export flag, and create special manifest
R-GCCADDT-cbl-00408Immediate Transport Cargo?
Decision Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with immediate transport type and transport record is not created for it, and the system processes the cargo for manifest requirements occurs during the 'Immediate Transport Cargo?' routine, then the system must guarantee that the system should set message twenty-three, increment report index, set it export flag, and create special manifest.
EXCLUDING
A cargo record exists with immediate transport type and transport record is not created for IT
When
The system processes the cargo for manifest requirements
Then
The system should set message twenty-three, increment report index, set IT export flag, and create special manifest
R-GCCADDT-cbl-00409Default Cargo with Release Status?
Decision Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with default transport type and cargo status is release and transport record is not created for it, and the system processes the cargo for manifest requirements occurs during the 'Default Cargo with Release Status?' routine, then the system must guarantee that the system should set message twenty-three, increment report index, set it export flag, and create special manifest.
EXCLUDING
A cargo record exists with default transport type and cargo status is RELEASE and transport record is not created for IT
When
The system processes the cargo for manifest requirements
Then
The system should set message twenty-three, increment report index, set IT export flag, and create special manifest
R-GCCADDT-cbl-00410Set IT Export Flag
Action Rules
Business View: Assuming cargo has been validated for it export requirements during the 'Set IT Export Flag' routine, when the system needs to configure manifest processing type, the system executes logic to ensure that the system should set the gcx101 it export flag to true.
Given
Cargo has been validated for IT export requirements
When
The system needs to configure manifest processing type
Then
The system should set the GCX101 IT export flag to true
Business View: Assuming a special manifest needs to be created during the 'Initialize GCX101 Manifest Request' routine, when the system begins manifest creation process, the system executes logic to ensure that the system should initialize gcx101 input structure and increment spawn count.
Given
A special manifest needs to be created
When
The system begins manifest creation process
Then
The system should initialize GCX101 input structure and increment spawn count
R-GCCADDT-cbl-00412Set Security and Record Type
Validation Rules
Business View: Assuming gcx101 manifest input is initialized during the 'Set Security and Record Type' routine, when the system configures manifest parameters, the system executes logic to ensure that the system should set security byte to high values and record type code to us.
Given
GCX101 manifest input is initialized
When
The system configures manifest parameters
Then
The system should set security byte to high values and record type code to US
R-GCCADDT-cbl-00413Set Border Code and Name
Definitional Rules
Business View: Assuming train crossing port and name are available from input parameters during the 'Set Border Code and Name' routine, when the system configures manifest border information, the system executes logic to ensure that the system should set gcx101 border code to train crossing port and border name to train crossing name.
Given
Train crossing port and name are available from input parameters
When
The system configures manifest border information
Then
The system should set GCX101 border code to train crossing port and border name to train crossing name
R-GCCADDT-cbl-00414Set CCN from Cargo
Definitional Rules
Business View: Assuming cargo record contains us ccn key information during the 'Set CCN from Cargo' routine, when the system configures manifest cargo identification, the system executes logic to ensure that the system should set gcx101 ccn to the cargo us ccn key.
Given
Cargo record contains US CCN key information
When
The system configures manifest cargo identification
Then
The system should set GCX101 CCN to the cargo US CCN key
R-GCCADDT-cbl-00415Set IT Export Processing Type
Action Rules
Business View: Assuming it export flag is set to true during the 'Set IT Export Processing Type' routine, when the system evaluates manifest processing type requirements, the system executes logic to ensure that the system should set gcx101 to it export processing type.
Given
IT export flag is set to true
When
The system evaluates manifest processing type requirements
Then
The system should set GCX101 to IT export processing type
R-GCCADDT-cbl-00416Set Equipment ID
Definitional Rules
Business View: Assuming it export processing type is configured and equipment id is available during the 'Set Equipment ID' routine, when the system sets manifest equipment information, the system executes logic to ensure that the system should set gcx101 car id to the working storage equipment id.
Given
IT export processing type is configured and equipment ID is available
When
The system sets manifest equipment information
Then
The system should set GCX101 car ID to the working storage equipment ID
R-GCCADDT-cbl-00417Set Waybill Number and Date
Definitional Rules
Business View: Assuming it export processing type is configured and cargo contains waybill information during the 'Set Waybill Number and Date' routine, when the system sets manifest waybill details, the system executes logic to ensure that the system should set gcx101 waybill to cargo waybill number index and waybill date to cargo waybill date index.
Given
IT export processing type is configured and cargo contains waybill information
When
The system sets manifest waybill details
Then
The system should set GCX101 waybill to cargo waybill number index and waybill date to cargo waybill date index
R-GCCADDT-cbl-00418Store Manifest Request
Process Rules
Business View: Assuming gcx101 manifest input is fully configured during the 'Store Manifest Request' routine, when the system completes manifest creation, the system executes logic to ensure that the system should move gcx101 input to working storage gcx101 input array at spawn count position.
Given
GCX101 manifest input is fully configured
When
The system completes manifest creation
Then
The system should move GCX101 input to working storage GCX101 input array at spawn count position
R-GCCADDT-cbl-00451Is Cargo US-CAN-US Type?
Decision Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with us-canada-us transport classification, and the cargo transport record creation flag is not 'y' and the cargo status description is 'release' occurs during the 'Is Cargo US-CAN-US Type?' routine, then the system must guarantee that set message twenty-three indicator to true and create special manifest for it export processing.
EXCLUDING
A cargo record exists with US-Canada-US transport classification
When
The cargo transport record creation flag is not 'Y' AND the cargo status description is 'RELEASE'
Then
Set message twenty-three indicator to true AND create special manifest for IT export processing
R-GCCADDT-cbl-00452Is Cargo Immediate Transport Type?
Decision Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with immediate transport classification, and the cargo transport record creation flag is not 'y' occurs during the 'Is Cargo Immediate Transport Type?' routine, then the system must guarantee that set message twenty-three indicator to true and create special manifest for it export processing.
EXCLUDING
A cargo record exists with immediate transport classification
When
The cargo transport record creation flag is not 'Y'
Then
Set message twenty-three indicator to true AND create special manifest for IT export processing
R-GCCADDT-cbl-00453Is Cargo Default Type?
Decision Rules
Business View: <EXCLUSION CRITERIA> If a cargo record exists with default classification, and the cargo transport record creation flag is not 'y' and the cargo status description is 'release' occurs during the 'Is Cargo Default Type?' routine, then the system must guarantee that set message twenty-three indicator to true and create special manifest for it export processing.
EXCLUDING
A cargo record exists with default classification
When
The cargo transport record creation flag is not 'Y' AND the cargo status description is 'RELEASE'
Then
Set message twenty-three indicator to true AND create special manifest for IT export processing
R-GCCADDT-cbl-00454Create Special Manifest for IT Export
Action Rules
Business View: Assuming it export processing has been triggered during the 'Create Special Manifest for IT Export' routine, when the it export flag is set to true, the system executes logic to ensure that set gcx101 it export indicator to true and perform special manifest creation procedure.
Given
IT export processing has been triggered
When
The IT export flag is set to true
Then
Set GCX101 IT export indicator to true AND perform special manifest creation procedure
Business View: Assuming a special manifest needs to be created for it export processing during the 'Initialize GCX101 Input Parameters' routine, when the system begins manifest creation process, the system executes logic to ensure that all gcx101 input parameters are initialized to blank values and spawn count is incremented by 1.
Given
A special manifest needs to be created for IT export processing
When
The system begins manifest creation process
Then
All GCX101 input parameters are initialized to blank values and spawn count is incremented by 1
R-GCCADDT-cbl-00481Set Security Level to High Values
Policy Rules
Business View: Assuming a special manifest is being created during the 'Set Security Level to High Values' routine, when security parameters are being set, the system executes logic to ensure that the security byte is set to high values to indicate maximum security level.
Given
A special manifest is being created
When
Security parameters are being set
Then
The security byte is set to high values to indicate maximum security level
R-GCCADDT-cbl-00482Set Record Type to 'US'
Definitional Rules
Business View: Assuming a special manifest is being created for border crossing during the 'Set Record Type to 'US'' routine, when record type classification is required, the system executes logic to ensure that the record type code is set to 'us' to identify it as a us customs record.
Given
A special manifest is being created for border crossing
When
Record type classification is required
Then
The record type code is set to 'US' to identify it as a US customs record
R-GCCADDT-cbl-00483Set Border Code from Train Crossing Port
Definitional Rules
Business View: Assuming a train crossing port is defined in the system during the 'Set Border Code from Train Crossing Port' routine, when creating a special manifest for border crossing, the system executes logic to ensure that the border code is set to the train crossing port identifier.
Given
A train crossing port is defined in the system
When
Creating a special manifest for border crossing
Then
The border code is set to the train crossing port identifier
R-GCCADDT-cbl-00484Set Border Name from Train Crossing Name
Definitional Rules
Business View: Assuming a train crossing name is defined in the system during the 'Set Border Name from Train Crossing Name' routine, when creating a special manifest for border crossing, the system executes logic to ensure that the border name is set to the train crossing location name.
Given
A train crossing name is defined in the system
When
Creating a special manifest for border crossing
Then
The border name is set to the train crossing location name
R-GCCADDT-cbl-00485Set CCN from US-CCN Key
Definitional Rules
Business View: Assuming cargo has a valid us-ccn key identifier during the 'Set CCN from US-CCN Key' routine, when creating a special manifest for the cargo, the system executes logic to ensure that the ccn field is populated with the cargo's us-ccn key value.
Given
Cargo has a valid US-CCN key identifier
When
Creating a special manifest for the cargo
Then
The CCN field is populated with the cargo's US-CCN key value
R-GCCADDT-cbl-00486Set IT Export Flag to True
Decision Rules
Business View: Assuming cargo requires immediate transport export processing during the 'Set IT Export Flag to True' routine, when creating a special manifest, the system executes logic to ensure that the it export flag is set to true to classify the manifest type.
Given
Cargo requires immediate transport export processing
When
Creating a special manifest
Then
The IT export flag is set to true to classify the manifest type
R-GCCADDT-cbl-00487Set Equipment ID as Car ID
Definitional Rules
Business View: Assuming equipment has a valid equipment id during the 'Set Equipment ID as Car ID' routine, when creating a special manifest for cargo on that equipment, the system executes logic to ensure that the car id field is populated with the equipment identifier.
Given
Equipment has a valid equipment ID
When
Creating a special manifest for cargo on that equipment
Then
The car ID field is populated with the equipment identifier
R-GCCADDT-cbl-00488Set Waybill Number from Cargo Record
Definitional Rules
Business View: Assuming cargo has an associated waybill record with a waybill number during the 'Set Waybill Number from Cargo Record' routine, when creating a special manifest for the cargo, the system executes logic to ensure that the waybill field is populated with the waybill number from the cargo record.
Given
Cargo has an associated waybill record with a waybill number
When
Creating a special manifest for the cargo
Then
The waybill field is populated with the waybill number from the cargo record
R-GCCADDT-cbl-00489Set Waybill Date from Cargo Record
Definitional Rules
Business View: Assuming cargo has an associated waybill record with a waybill date during the 'Set Waybill Date from Cargo Record' routine, when creating a special manifest for the cargo, the system executes logic to ensure that the waybill date field is populated with the waybill date from the cargo record.
Given
Cargo has an associated waybill record with a waybill date
When
Creating a special manifest for the cargo
Then
The waybill date field is populated with the waybill date from the cargo record
R-GCCADDT-cbl-00490Increment Spawn Count
Process Rules
Business View: Assuming a special manifest is being created during the 'Increment Spawn Count' routine, when the manifest parameters are finalized, the system executes logic to ensure that the spawn count is incremented by 1 to track the number of manifests created.
Given
A special manifest is being created
When
The manifest parameters are finalized
Then
The spawn count is incremented by 1 to track the number of manifests created
R-GCCADDT-cbl-00491Store GCX101 Input in Spawn Table
Process Rules
Business View: Assuming a special manifest has been fully configured with all required parameters during the 'Store GCX101 Input in Spawn Table' routine, when the manifest is ready for processing, the system executes logic to ensure that the complete gcx101 input record is stored in the spawn table at the current spawn count position.
Given
A special manifest has been fully configured with all required parameters
When
The manifest is ready for processing
Then
The complete GCX101 input record is stored in the spawn table at the current spawn count position
R-GCCADDT-cbl-00422Both Origin AND Destination are US?
Decision Rules
Business View: Assuming origin and destination country codes have been determined from state lookups during the 'Both Origin AND Destination are US?' routine, when both the origin country is 'us' and the destination country is 'us', the system executes logic to ensure that the shipment should qualify for us-us detour manifest creation.
Given
Origin and destination country codes have been determined from state lookups
When
Both the origin country is 'US' AND the destination country is 'US'
Then
The shipment should qualify for US-US detour manifest creation
R-GCCADDT-cbl-00423Set US-US Detour Message
Action Rules
Business View: Assuming a shipment qualifies for us-us detour processing during the 'Set US-US Detour Message' routine, when the system confirms both origin and destination are within the us, the system executes logic to ensure that message twenty-three should be set in the report and the report index should be incremented.
Given
A shipment qualifies for US-US detour processing
When
The system confirms both origin and destination are within the US
Then
Message twenty-three should be set in the report and the report index should be incremented
Business View: Assuming a manifest needs to be created for special processing during the 'Initialize GCX101 Manifest Input' routine, when the system begins manifest creation process, the system executes logic to ensure that the gcx101 input structure should be initialized to clear any previous data.
Given
A manifest needs to be created for special processing
When
The system begins manifest creation process
Then
The GCX101 input structure should be initialized to clear any previous data
R-GCCADDT-cbl-00425Set High Security Level
Authorization Rules
Business View: Assuming a special manifest is being created during the 'Set High Security Level' routine, when the manifest requires high security processing, the system executes logic to ensure that the security byte should be set to high-values to indicate maximum security level.
Given
A special manifest is being created
When
The manifest requires high security processing
Then
The security byte should be set to high-values to indicate maximum security level
R-GCCADDT-cbl-00426Set Record Type to 'US'
Definitional Rules
Business View: Assuming a manifest is being created for us customs processing during the 'Set Record Type to 'US'' routine, when the record type needs to be specified, the system executes logic to ensure that the record type code should be set to 'us' to indicate us customs jurisdiction.
Given
A manifest is being created for US customs processing
When
The record type needs to be specified
Then
The record type code should be set to 'US' to indicate US customs jurisdiction
R-GCCADDT-cbl-00427Set Border Code from Train Crossing Port
Definitional Rules
Business View: Assuming a manifest requires border crossing information during the 'Set Border Code from Train Crossing Port' routine, when the train crossing port is specified in the input parameters, the system executes logic to ensure that the border code in the manifest should be set to the train crossing port value.
Given
A manifest requires border crossing information
When
The train crossing port is specified in the input parameters
Then
The border code in the manifest should be set to the train crossing port value
R-GCCADDT-cbl-00428Set Border Name from Train Crossing Name
Definitional Rules
Business View: Assuming a manifest requires border crossing identification during the 'Set Border Name from Train Crossing Name' routine, when the train crossing name is specified in the input parameters, the system executes logic to ensure that the border name in the manifest should be set to the train crossing name value.
Given
A manifest requires border crossing identification
When
The train crossing name is specified in the input parameters
Then
The border name in the manifest should be set to the train crossing name value
R-GCCADDT-cbl-00429Clear CCN Key for US-US Detour
Policy Rules
Business View: <EXCLUSION CRITERIA> If a manifest is being created for us-us detour processing, and the shipment is domestic and does not require international customs processing occurs during the 'Clear CCN Key for US-US Detour' routine, then the system must guarantee that the ccn field in the manifest should be set to spaces to indicate no customs control number is needed.
EXCLUDING
A manifest is being created for US-US detour processing
When
The shipment is domestic and does not require international customs processing
Then
The CCN field in the manifest should be set to spaces to indicate no customs control number is needed
R-GCCADDT-cbl-00430Set Equipment ID as Car ID
Definitional Rules
Business View: Assuming a manifest requires equipment identification during the 'Set Equipment ID as Car ID' routine, when the equipment id is available for the shipment, the system executes logic to ensure that the car id field in the manifest should be set to the equipment id value.
Given
A manifest requires equipment identification
When
The equipment ID is available for the shipment
Then
The car ID field in the manifest should be set to the equipment ID value
R-GCCADDT-cbl-00431Set Waybill Root Key
Definitional Rules
Business View: Assuming a manifest requires waybill reference information during the 'Set Waybill Root Key' routine, when the waybill root key is available, the system executes logic to ensure that the waybill field in the manifest should be set to the waybill root key value.
Given
A manifest requires waybill reference information
When
The waybill root key is available
Then
The waybill field in the manifest should be set to the waybill root key value
R-GCCADDT-cbl-00432Set Waybill Date
Definitional Rules
Business View: Assuming a manifest requires waybill dating information during the 'Set Waybill Date' routine, when the waybill date is available, the system executes logic to ensure that the waybill date field in the manifest should be set to the waybill date value.
Given
A manifest requires waybill dating information
When
The waybill date is available
Then
The waybill date field in the manifest should be set to the waybill date value
R-GCCADDT-cbl-00433Set GCX101 US-US Detour Flag
Process Rules
Business View: Assuming a manifest is being created for us domestic detour during the 'Set GCX101 US-US Detour Flag' routine, when the shipment qualifies for us-us detour processing, the system executes logic to ensure that the gcx101 us-us detour flag should be set to true to indicate special domestic routing.
Given
A manifest is being created for US domestic detour
When
The shipment qualifies for US-US detour processing
Then
The GCX101 US-US detour flag should be set to true to indicate special domestic routing
R-GCCADDT-cbl-00434Store Manifest Request in Spawn Table
Process Rules
Business View: Assuming a manifest request has been fully configured during the 'Store Manifest Request in Spawn Table' routine, when the manifest is ready for processing, the system executes logic to ensure that the gcx101 input should be stored in the spawn table at the current spawn count position.
Given
A manifest request has been fully configured
When
The manifest is ready for processing
Then
The GCX101 input should be stored in the spawn table at the current spawn count position
R-GCCADDT-cbl-00435Increment Spawn Counter
Computation Rules
Business View: Assuming a manifest request has been stored in the spawn table during the 'Increment Spawn Counter' routine, when the storage operation is complete, the system executes logic to ensure that the spawn counter should be incremented by 1 to reflect the additional manifest request.
Given
A manifest request has been stored in the spawn table
When
The storage operation is complete
Then
The spawn counter should be incremented by 1 to reflect the additional manifest request
R-GCCADDT-cbl-00458Origin Country = 'US' AND Destination Country = 'US'?
Decision Rules
Business View: Assuming origin country has been determined as 'us' and destination country has been determined as 'us' during the 'Origin Country = 'US' AND Destination Country = 'US'?' routine, when the system evaluates if the shipment is a domestic us movement, the system executes logic to ensure that the system should classify this as a us-us detour requiring special manifest creation.
Given
Origin country has been determined as 'US' AND destination country has been determined as 'US'
When
The system evaluates if the shipment is a domestic US movement
Then
The system should classify this as a US-US detour requiring special manifest creation
R-GCCADDT-cbl-00459Generate Message 23: US-US Detour Required AND Set GCX101 US-US Detour Flag AND Create Special Manifest for US-US Detour
Action Rules
Business View: Assuming a shipment has been identified as a us-us detour scenario during the 'Generate Message 23: US-US Detour Required AND Set GCX101 US-US Detour Flag AND Create Special Manifest for US-US Detour' routine, when the system processes the detour requirement, the system executes logic to ensure that the system should generate message 23 indicating us-us detour required and set the gcx101 us-us detour flag and create a special manifest for us-us detour processing.
Given
A shipment has been identified as a US-US detour scenario
When
The system processes the detour requirement
Then
The system should generate message 23 indicating US-US detour required AND set the GCX101 US-US detour flag AND create a special manifest for US-US detour processing
R-GCCADDT-cbl-00460Generate Message 15: No Cargo Found for Waybill AND Include Root Key and Waybill Date in Message
Process Rules
Business View: <EXCLUSION CRITERIA> If a waybill exists but no cargo is found and the shipment is not identified as a us-us detour, and the system processes the no-cargo condition occurs during the 'Generate Message 15: No Cargo Found for Waybill AND Include Root Key and Waybill Date in Message' routine, then the system must guarantee that the system should generate message 15 indicating no cargo found for the waybill and include the root key and waybill date in the error message.
EXCLUDING
A waybill exists but no cargo is found AND the shipment is not identified as a US-US detour
When
The system processes the no-cargo condition
Then
The system should generate message 15 indicating no cargo found for the waybill AND include the root key and waybill date in the error message
R-GCCADDT-cbl-00508Set US-US Detour Message
Action Rules
Business View: Assuming a shipment has been identified as us domestic traffic during the 'Set US-US Detour Message' routine, when the system processes the us-us detour scenario, the system executes logic to ensure that message twenty-three is set in the report for the current report index.
Given
A shipment has been identified as US domestic traffic
When
The system processes the US-US detour scenario
Then
Message twenty-three is set in the report for the current report index
R-GCCADDT-cbl-00509Set Special Manifest Type to US-US Detour
Process Rules
Business View: Assuming a us domestic shipment requires special manifest processing during the 'Set Special Manifest Type to US-US Detour' routine, when the system prepares to create a special manifest, the system executes logic to ensure that the gcx101 processing type is set to us-us detour mode.
Given
A US domestic shipment requires special manifest processing
When
The system prepares to create a special manifest
Then
The GCX101 processing type is set to US-US detour mode
Business View: Assuming a special manifest needs to be created during the 'Initialize GCX101 Input Parameters' routine, when the system begins manifest preparation, the system executes logic to ensure that all gcx101 input parameters are initialized to default values.
Given
A special manifest needs to be created
When
The system begins manifest preparation
Then
All GCX101 input parameters are initialized to default values
R-GCCADDT-cbl-00511Set Security Byte to High Values
Authorization Rules
Business View: Assuming a special manifest is being created during the 'Set Security Byte to High Values' routine, when security parameters need to be set, the system executes logic to ensure that the security byte is set to high values indicating maximum security level.
Given
A special manifest is being created
When
Security parameters need to be set
Then
The security byte is set to high values indicating maximum security level
R-GCCADDT-cbl-00512Set Record Type Code to 'US'
Definitional Rules
Business View: Assuming a special manifest is being created for us processing during the 'Set Record Type Code to 'US'' routine, when record type identification is required, the system executes logic to ensure that the record type code is set to 'us' to indicate us customs processing.
Given
A special manifest is being created for US processing
When
Record type identification is required
Then
The record type code is set to 'US' to indicate US customs processing
R-GCCADDT-cbl-00513Set Border Code from Train Crossing Port
Definitional Rules
Business View: Assuming a special manifest requires border crossing information during the 'Set Border Code from Train Crossing Port' routine, when border code assignment is needed, the system executes logic to ensure that the border code is set from the configured train crossing port.
Given
A special manifest requires border crossing information
When
Border code assignment is needed
Then
The border code is set from the configured train crossing port
R-GCCADDT-cbl-00514Set Border Name from Train Crossing Name
Definitional Rules
Business View: Assuming a special manifest requires border crossing identification during the 'Set Border Name from Train Crossing Name' routine, when border name assignment is needed, the system executes logic to ensure that the border name is set from the configured train crossing name.
Given
A special manifest requires border crossing identification
When
Border name assignment is needed
Then
The border name is set from the configured train crossing name
R-GCCADDT-cbl-00515Clear CCN Field for US-US Detour
Policy Rules
Business View: Assuming a us-us detour special manifest is being created during the 'Clear CCN Field for US-US Detour' routine, when ccn field assignment is processed, the system executes logic to ensure that the ccn field is set to spaces since no customs control number is needed for domestic us shipments.
Given
A US-US detour special manifest is being created
When
CCN field assignment is processed
Then
The CCN field is set to spaces since no customs control number is needed for domestic US shipments
R-GCCADDT-cbl-00516Set Car ID from Equipment ID
Definitional Rules
Business View: Assuming a special manifest requires equipment identification during the 'Set Car ID from Equipment ID' routine, when car id assignment is needed, the system executes logic to ensure that the car id is set from the current equipment id being processed.
Given
A special manifest requires equipment identification
When
Car ID assignment is needed
Then
The car ID is set from the current equipment ID being processed
R-GCCADDT-cbl-00517Set Waybill Number from Root Key
Definitional Rules
Business View: Assuming a special manifest requires waybill identification during the 'Set Waybill Number from Root Key' routine, when waybill number assignment is needed, the system executes logic to ensure that the waybill number is set from the waybill root key.
Given
A special manifest requires waybill identification
When
Waybill number assignment is needed
Then
The waybill number is set from the waybill root key
R-GCCADDT-cbl-00518Set Waybill Date
Definitional Rules
Business View: Assuming a special manifest requires waybill date information during the 'Set Waybill Date' routine, when waybill date assignment is needed, the system executes logic to ensure that the waybill date is set from the current waybill date being processed.
Given
A special manifest requires waybill date information
When
Waybill date assignment is needed
Then
The waybill date is set from the current waybill date being processed
R-GCCADDT-cbl-00519Store GCX101 Input in Spawn Table
Process Rules
Business View: Assuming a special manifest has been fully configured during the 'Store GCX101 Input in Spawn Table' routine, when the manifest needs to be queued for processing, the system executes logic to ensure that the gcx101 input parameters are stored in the spawn table at the current spawn count position.
Given
A special manifest has been fully configured
When
The manifest needs to be queued for processing
Then
The GCX101 input parameters are stored in the spawn table at the current spawn count position
R-GCCADDT-cbl-00520Increment Spawn Count
Computation Rules
Business View: Assuming a special manifest has been stored in the spawn table during the 'Increment Spawn Count' routine, when spawn tracking needs to be updated, the system executes logic to ensure that the spawn count is incremented by one to reflect the additional manifest.
Given
A special manifest has been stored in the spawn table
When
Spawn tracking needs to be updated
Then
The spawn count is incremented by one to reflect the additional manifest
R-GCCADDT-cbl-00463Set Origin Country to Spaces - Not Found
Action Rules
Business View: <EXCLUSION CRITERIA> If a waybill is found with no cargo found and the equipment is not a container and not a conveying car, and both the origin country and destination country are determined to be 'us' occurs during the 'Set Origin Country to Spaces - Not Found' routine, then the system must guarantee that the system generates message twenty-three, creates a us-us-detour special manifest, and adds it to the report.
EXCLUDING
A waybill is found with no cargo found and the equipment is not a container and not a conveying car
When
Both the origin country and destination country are determined to be 'US'
Then
The system generates message twenty-three, creates a US-US-DETOUR special manifest, and adds it to the report
R-GCCADDT-cbl-00464Set Origin Country to Spaces - Not Found
Validation Rules
Business View: <EXCLUSION CRITERIA> If a waybill is found with no cargo found and the equipment is not a container and not a conveying car, and either the origin country or destination country is not 'us' occurs during the 'Set Origin Country to Spaces - Not Found' routine, then the system must guarantee that the system generates message fifteen with the waybill root key and date in the report.
EXCLUDING
A waybill is found with no cargo found and the equipment is not a container and not a conveying car
When
Either the origin country or destination country is not 'US'
Then
The system generates message fifteen with the waybill root key and date in the report
R-GCCADDT-cbl-00436Is Spawn Message?
Decision Rules
Business View: Assuming a message line is being processed during the 'Is Spawn Message?' routine, when the message is identified as a spawn message, the system executes logic to ensure that skip updating any message type counters and proceed to increment report index.
Given
A message line is being processed
When
The message is identified as a spawn message
Then
Skip updating any message type counters and proceed to increment report index
R-GCCADDT-cbl-00437Error Message?
Process Rules
Business View: <EXCLUSION CRITERIA> If a message line is being processed and it is not a spawn message, and the message is classified as an error message type occurs during the 'Error Message?' routine, then the system must guarantee that add 1 to the error counter.
EXCLUDING
A message line is being processed and it is not a spawn message
When
The message is classified as an error message type
Then
Add 1 to the error counter
R-GCCADDT-cbl-00438Warning Message?
Process Rules
Business View: <EXCLUSION CRITERIA> If a message line is being processed and it is not a spawn message and it is not an error message, and the message is classified as a warning message type occurs during the 'Warning Message?' routine, then the system must guarantee that add 1 to the warning counter.
EXCLUDING
A message line is being processed and it is not a spawn message and it is not an error message
When
The message is classified as a warning message type
Then
Add 1 to the warning counter
R-GCCADDT-cbl-00439Information Message?
Process Rules
Business View: <EXCLUSION CRITERIA> If a message line is being processed and it is not a spawn message and it is not an error message and it is not a warning message, and the message is classified as an information message type occurs during the 'Information Message?' routine, then the system must guarantee that add 1 to the information counter.
EXCLUDING
A message line is being processed and it is not a spawn message and it is not an error message and it is not a warning message
When
The message is classified as an information message type
Then
Add 1 to the information counter
R-GCCADDT-cbl-00440Increment Report Index
Process Rules
Business View: Assuming a message line has been processed during the 'Increment Report Index' routine, when message type categorization is complete, the system executes logic to ensure that add 1 to the report index.
Given
A message line has been processed
When
Message type categorization is complete
Then
Add 1 to the report index
R-GCCADDT-cbl-00441Report Maximum Reached?
Validation Rules
Business View: Assuming the report index has been incremented during the 'Report Maximum Reached?' routine, when the report index reaches the maximum allowed report lines, the system executes logic to ensure that set message nine indicating maximum report capacity reached.
Given
The report index has been incremented
When
The report index reaches the maximum allowed report lines
Then
Set message nine indicating maximum report capacity reached
R-GCCADDT-cbl-00363Set IT Export Flag
Decision Rules
Business View: Assuming cargo is found and cargo has transport record created for it and cargo bond type is m1201 immediate transport during the 'Set IT Export Flag' routine, when processing cargo for manifest requirements, the system executes logic to ensure that set it export flag to true and create it export manifest.
Given
Cargo is found AND cargo has transport record created for IT AND cargo bond type is M1201 immediate transport
When
Processing cargo for manifest requirements
Then
Set IT export flag to true AND create IT export manifest
R-GCCADDT-cbl-00364Set IT Export Flag
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is m1201 us-canada-us and transport record not created for it and cargo status is release, and processing cargo for manifest requirements occurs during the 'Set IT Export Flag' routine, then the system must guarantee that set message twenty-three and increment report index and set it export flag to true and create it export manifest.
EXCLUDING
Cargo is found AND cargo bond type is M1201 US-Canada-US AND transport record not created for IT AND cargo status is RELEASE
When
Processing cargo for manifest requirements
Then
Set message twenty-three AND increment report index AND set IT export flag to true AND create IT export manifest
R-GCCADDT-cbl-00365Set IT Export Flag
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is m1109 default and transport record not created for it and cargo status is release, and processing cargo for manifest requirements occurs during the 'Set IT Export Flag' routine, then the system must guarantee that set message twenty-three and increment report index and set it export flag to true and create it export manifest.
EXCLUDING
Cargo is found AND cargo bond type is M1109 default AND transport record not created for IT AND cargo status is RELEASE
When
Processing cargo for manifest requirements
Then
Set message twenty-three AND increment report index AND set IT export flag to true AND create IT export manifest
R-GCCADDT-cbl-00366Set Diversion Flag
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is m1201 us-canada-us and cargo is m1109 master in-bond and train crossing port does not equal cargo location, and processing cargo for manifest requirements occurs during the 'Set Diversion Flag' routine, then the system must guarantee that set message twenty and increment report index and set diversion flag to true and create diversion manifest.
EXCLUDING
Cargo is found AND cargo bond type is M1201 US-Canada-US AND cargo is M1109 master in-bond AND train crossing port does not equal cargo location
When
Processing cargo for manifest requirements
Then
Set message twenty AND increment report index AND set diversion flag to true AND create diversion manifest
R-GCCADDT-cbl-00367Set Port Change Flag
Decision Rules
Business View: <EXCLUSION CRITERIA> If cargo is found and cargo bond type is m1201 transport export and transport record not created for it and cargo status is not export and cargo has cprs billing and cargo location does not equal train crossing port, and processing cargo for manifest requirements occurs during the 'Set Port Change Flag' routine, then the system must guarantee that set message twenty and increment report index and set port change flag to true and create port change manifest.
EXCLUDING
Cargo is found AND cargo bond type is M1201 transport export AND transport record not created for IT AND cargo status is not EXPORT AND cargo has CPRS billing AND cargo location does not equal train crossing port
When
Processing cargo for manifest requirements
Then
Set message twenty AND increment report index AND set port change flag to true AND create port change manifest
R-GCCADDT-cbl-00368Set US-US Detour Flag
Decision Rules
Business View: <EXCLUSION CRITERIA> If waybill is found and no cargo found and container not found and not conveying car and origin country is us and destination country is us, and processing cargo for manifest requirements occurs during the 'Set US-US Detour Flag' routine, then the system must guarantee that set message twenty-three and increment report index and set us-us detour flag to true and create us-us detour manifest.
EXCLUDING
Waybill is found AND no cargo found AND container not found AND not conveying car AND origin country is US AND destination country is US
When
Processing cargo for manifest requirements
Then
Set message twenty-three AND increment report index AND set US-US detour flag to true AND create US-US detour manifest
R-GCCADDT-cbl-00369Initialize GCX101 Input
Process Rules
Business View: Assuming special manifest creation is required during the 'Initialize GCX101 Input' routine, when creating manifest request, the system executes logic to ensure that initialize gcx101 input and increment spawn count and set security byte to high values and set record type code to us.
Given
Special manifest creation is required
When
Creating manifest request
Then
Initialize GCX101 input AND increment spawn count AND set security byte to high values AND set record type code to US
R-GCCADDT-cbl-00370Set Border Code and Name
Action Rules
Business View: Assuming manifest request is initialized during the 'Set Border Code and Name' routine, when configuring manifest parameters, the system executes logic to ensure that set border code to train crossing port and set border name to train crossing name.
Given
Manifest request is initialized
When
Configuring manifest parameters
Then
Set border code to train crossing port AND set border name to train crossing name
R-GCCADDT-cbl-00371Set CCN Key
Action Rules
Business View: Assuming manifest request has border information set during the 'Set CCN Key' routine, when configuring manifest parameters, the system executes logic to ensure that set ccn to cargo us ccn key.
Given
Manifest request has border information set
When
Configuring manifest parameters
Then
Set CCN to cargo US CCN key
R-GCCADDT-cbl-00372Configure IT Export Parameters
Action Rules
Business View: Assuming manifest type is it export during the 'Configure IT Export Parameters' routine, when configuring manifest type-specific parameters, the system executes logic to ensure that set it export flag to true and set car id to equipment id and set waybill to cargo waybill number and set waybill date to cargo waybill date.
Given
Manifest type is IT export
When
Configuring manifest type-specific parameters
Then
Set IT export flag to true AND set car ID to equipment ID AND set waybill to cargo waybill number AND set waybill date to cargo waybill date
R-GCCADDT-cbl-00373Configure Diversion Parameters
Action Rules
Business View: Assuming manifest type is diversion during the 'Configure Diversion Parameters' routine, when configuring manifest type-specific parameters, the system executes logic to ensure that set diversion flag to true.
Given
Manifest type is diversion
When
Configuring manifest type-specific parameters
Then
Set diversion flag to true
R-GCCADDT-cbl-00374Configure Port Change Parameters
Action Rules
Business View: Assuming manifest type is port change during the 'Configure Port Change Parameters' routine, when configuring manifest type-specific parameters, the system executes logic to ensure that set port change flag to true.
Business View: Assuming manifest type is us-us detour during the 'Configure US-US Detour Parameters' routine, when configuring manifest type-specific parameters, the system executes logic to ensure that set us-us detour flag to true and clear ccn and set car id to equipment id and set waybill to waybill root and set waybill date to waybill date.
Given
Manifest type is US-US detour
When
Configuring manifest type-specific parameters
Then
Set US-US detour flag to true AND clear CCN AND set car ID to equipment ID AND set waybill to waybill root AND set waybill date to waybill date
R-GCCADDT-cbl-00376Store Manifest Request
Action Rules
Business View: Assuming manifest request is fully configured during the 'Store Manifest Request' routine, when finalizing manifest creation, the system executes logic to ensure that move gcx101 input to spawn table entry using spawn count as index.
Given
Manifest request is fully configured
When
Finalizing manifest creation
Then
Move GCX101 input to spawn table entry using spawn count as index
R-GCCADDT-cbl-00242Train Arrived and No US-CCN Found?
Validation Rules
Business View: Assuming the system is finalizing report processing during the 'Train Arrived and No US-CCN Found?' routine, when train arrival flag is set to true and the first report line us-ccn field is empty, the system executes logic to ensure that add message twenty-six warning to the report and increment report index.
Given
The system is finalizing report processing
When
Train arrival flag is set to true AND the first report line US-CCN field is empty
Then
Add message twenty-six warning to the report and increment report index
R-GCCADDT-cbl-00247Process Spawn Messages
Action Rules
Business View: Assuming spawn requests exist and need processing during the 'Process Spawn Messages' routine, when the system processes spawn messages, the system executes logic to ensure that execute spawn processing for each request from index 1 to spawn count.
Given
Spawn requests exist and need processing
When
The system processes spawn messages
Then
Execute spawn processing for each request from index 1 to spawn count
R-GCCADDT-cbl-00248Convert to Port Change Message
Process Rules
Business View: Assuming spawn messages are being processed and no errors exist during the 'Convert to Port Change Message' routine, when a message line contains a diversion spawn message, the system executes logic to ensure that set message nineteen flag and populate station field with train crossing port.
Given
Spawn messages are being processed and no errors exist
When
A message line contains a diversion spawn message
Then
Set message nineteen flag and populate station field with train crossing port
R-GCCADDT-cbl-00249Convert to IT Export Message
Process Rules
Business View: <EXCLUSION CRITERIA> If spawn messages are being processed with no errors and message is not diversion, and a message line contains an it export spawn message occurs during the 'Convert to IT Export Message' routine, then the system must guarantee that set message eighteen flag for the report line.
EXCLUDING
Spawn messages are being processed with no errors and message is not diversion
When
A message line contains an IT export spawn message
Then
Set message eighteen flag for the report line
R-GCCADDT-cbl-00251Any Info Messages?
Decision Rules
Business View: Assuming no errors were found during processing during the 'Any Info Messages?' routine, when the system checks for informational messages, the system executes logic to ensure that return true if info count is greater than zero, otherwise return false.
Given
No errors were found during processing
When
The system checks for informational messages
Then
Return true if info count is greater than zero, otherwise return false
R-GCCADDT-cbl-00252Set Report Status to NO-WAYBILL
Decision Rules
Business View: Assuming no errors exist but informational messages are present during the 'Set Report Status to NO-WAYBILL' routine, when the system assigns final status, the system executes logic to ensure that set report status to no-waybill.
Given
No errors exist but informational messages are present
When
The system assigns final status
Then
Set report status to NO-WAYBILL
R-GCCADDT-cbl-00253Set Report Status to OK
Decision Rules
Business View: Assuming no errors or informational messages exist during the 'Set Report Status to OK' routine, when the system assigns final status, the system executes logic to ensure that set report status to ok.
Given
No errors or informational messages exist
When
The system assigns final status
Then
Set report status to OK
R-GCCADDT-cbl-00256Set Email Parameters
Process Rules
Business View: Assuming a customs error report needs to be sent during the 'Set Email Parameters' routine, when the system prepares email parameters for transmission, the system executes logic to ensure that the sender code is set to om01247, recipient code is set to om01247, destination filename is set to request, and keywords and copy user code are cleared.
Given
A customs error report needs to be sent
When
The system prepares email parameters for transmission
Then
The sender code is set to OM01247, recipient code is set to OM01247, destination filename is set to REQUEST, and keywords and copy user code are cleared
R-GCCADDT-cbl-00260Email Send Successful?
Validation Rules
Business View: Assuming email service has been called to send customs report during the 'Email Send Successful?' routine, when the system evaluates the email return status, the system executes logic to ensure that if transmission failed, the system processes an email send error, otherwise continues with normal processing.
Given
Email service has been called to send customs report
When
The system evaluates the email return status
Then
If transmission failed, the system processes an email send error, otherwise continues with normal processing
R-GCCADDT-cbl-00264Special Manifests Required?
Decision Rules
Business View: Assuming the report processing is complete during the 'Special Manifests Required?' routine, when there are no errors in the report but spawn count is greater than zero, the system executes logic to ensure that the system proceeds with spawn processing for special manifests.
Given
The report processing is complete
When
There are no errors in the report but spawn count is greater than zero
Then
The system proceeds with spawn processing for special manifests
R-GCCADDT-cbl-00265Add Spawn Count to Error Count
Computation Rules
Business View: Assuming the report has no errors but has spawn requirements during the 'Add Spawn Count to Error Count' routine, when special manifests are required to be spawned, the system executes logic to ensure that the spawn count is added to the error count for tracking purposes.
Given
The report has no errors but has spawn requirements
When
Special manifests are required to be spawned
Then
The spawn count is added to the error count for tracking purposes
Business View: Assuming special manifests need to be spawned during the 'Initialize Spawn Processing Loop' routine, when the spawn processing begins, the system executes logic to ensure that the system initializes a loop from 1 to the total spawn count.
Given
Special manifests need to be spawned
When
The spawn processing begins
Then
The system initializes a loop from 1 to the total spawn count
R-GCCADDT-cbl-00269Prepare Message for GCX101
Action Rules
Business View: Assuming gcx101 input data has been retrieved during the 'Prepare Message for GCX101' routine, when the message needs to be prepared for transmission, the system executes logic to ensure that the input data is moved to the gct1011e message structure.
Given
GCX101 input data has been retrieved
When
The message needs to be prepared for transmission
Then
The input data is moved to the GCT1011E message structure
R-GCCADDT-cbl-00270Initialize IMS Transaction
Action Rules
Business View: Assuming a gcx101 message is ready for processing during the 'Initialize IMS Transaction' routine, when the system needs to send the message to export queue, the system executes logic to ensure that ims transaction is initialized with chng function and export pcb.
Given
A GCX101 message is ready for processing
When
The system needs to send the message to export queue
Then
IMS transaction is initialized with CHNG function and export PCB
R-GCCADDT-cbl-00271Write Message to Export Queue
Action Rules
Business View: Assuming ims transaction is initialized and message is prepared during the 'Write Message to Export Queue' routine, when the message needs to be sent to external system, the system executes logic to ensure that the message is written to the export queue using writmsgl.
Given
IMS transaction is initialized and message is prepared
When
The message needs to be sent to external system
Then
The message is written to the export queue using WRITMSGL
R-GCCADDT-cbl-00272Commit IMS Transaction
Action Rules
Business View: Assuming message has been written to export queue during the 'Commit IMS Transaction' routine, when the transaction needs to be finalized, the system executes logic to ensure that ims transaction is committed using purg function.
Given
Message has been written to export queue
When
The transaction needs to be finalized
Then
IMS transaction is committed using PURG function
R-GCCADDT-cbl-00274Update Message Types for Failed Spawns
Process Rules
Business View: Assuming the report contains errors and has spawn requirements during the 'Update Message Types for Failed Spawns' routine, when spawn processing cannot proceed normally due to errors, the system executes logic to ensure that the system updates message types for failed spawn processes.
Given
The report contains errors and has spawn requirements
When
Spawn processing cannot proceed normally due to errors
Then
The system updates message types for failed spawn processes
R-GCCADDT-cbl-00275Diversion Message?
Decision Rules
Business View: Assuming a spawn message needs type update due to errors during the 'Diversion Message?' routine, when the message is identified as a diversion spawn message, the system executes logic to ensure that the system sets the appropriate diversion error message type.
Given
A spawn message needs type update due to errors
When
The message is identified as a diversion spawn message
Then
The system sets the appropriate diversion error message type
R-GCCADDT-cbl-00276Set Diversion Error Message
Action Rules
Business View: Assuming a diversion spawn message has failed due to report errors during the 'Set Diversion Error Message' routine, when the message type needs to be updated, the system executes logic to ensure that the system sets msg-nineteen with the train crossing port information.
Given
A diversion spawn message has failed due to report errors
When
The message type needs to be updated
Then
The system sets MSG-NINETEEN with the train crossing port information
R-GCCADDT-cbl-00277IT Export Message?
Decision Rules
Business View: <EXCLUSION CRITERIA> If a spawn message is not a diversion type and needs type update, and the message is identified as an it export spawn message occurs during the 'IT Export Message?' routine, then the system must guarantee that the system sets the appropriate it export error message type.
EXCLUDING
A spawn message is not a diversion type and needs type update
When
The message is identified as an IT export spawn message
Then
The system sets the appropriate IT export error message type
R-GCCADDT-cbl-00278Set IT Export Error Message
Action Rules
Business View: Assuming an it export spawn message has failed due to report errors during the 'Set IT Export Error Message' routine, when the message type needs to be updated, the system executes logic to ensure that the system sets msg-eighteen for the it export error condition.
Given
An IT export spawn message has failed due to report errors
When
The message type needs to be updated
Then
The system sets MSG-EIGHTEEN for the IT export error condition
Business View: Assuming the system is processing return results for a train crossing during the 'Generate Train Arrival Warning Message' routine, when the train has arrived and the first report line contains no us-ccn data, the system executes logic to ensure that generate message twenty-six warning and add it to the report.
Given
The system is processing return results for a train crossing
When
The train has arrived AND the first report line contains no US-CCN data
Then
Generate message twenty-six warning and add it to the report
R-GCCADDT-cbl-00281Count Report Statistics
Process Rules
Business View: Assuming report processing is completing during the 'Count Report Statistics' routine, when the system needs to finalize report statistics, the system executes logic to ensure that set the last report line index and process report wrap-up including spawn message handling.
Given
Report processing is completing
When
The system needs to finalize report statistics
Then
Set the last report line index and process report wrap-up including spawn message handling
R-GCCADDT-cbl-00283Set Error Return Code
Decision Rules
Business View: Assuming report processing has completed with no information messages during the 'Set Error Return Code' routine, when the report error count is greater than zero, the system executes logic to ensure that set the return status to errors and send the report to customs identification.
Given
Report processing has completed with no information messages
When
The report error count is greater than zero
Then
Set the return status to ERRORS AND send the report to customs identification
R-GCCADDT-cbl-00285Set Success Return Code
Decision Rules
Business View: Assuming report processing has completed with no information messages and no errors during the 'Set Success Return Code' routine, when the processing is successful, the system executes logic to ensure that set the return status to ok.
Given
Report processing has completed with no information messages and no errors