The transport case provides a mechanism for moving objects between AE systems. The transport case file format is not officially documented by CA, but it has been reverse-engineered and partly documented by MichaelLowry. This document is intended to build on that initial work, and expand it into a collaborative effort to more fully document the file format, filling in missing pieces and elaborating on important details. If you are interested in contributing, please contact one of the authorized editors.
Overall structure
A transport case file is divided into two sections: table descriptions at the top, and table content at the bottom.
Table descriptions
The table descriptions section contains a complete description of the structure of all of the tables in the AE schema that pertain to AE objects. Each table description consists of the table name (a T record) followed by descriptions of the columns in the table (C records).
;Table OCA was exported on: 2017-01-20 15:40:36
TOCA
C001OCA_OH_Idnr 300004
C002OCA_Name 700032
C003OCA_Value 700200
Table content
After the table descriptions comes the actual content of the tables. The table content section contains the actual data for the AE objects in the transport case. Only tables containing information relevant to the objects in the transport case are included. For each table, the table content consists of the table name (a T record) followed by the contents of the fields in the table (F records). Groups of fields are terminated by a single R record.
TJPP
F001+0001463068
F002+00001
F004CUC0.DEV.TEST#1_1.JOBP
F006C001135
F016001
F019+0000000001
F024C000000
F035+00001
R
For each object described in the transport case, the table data section begins with data for the OH table, followed by any O records, and then data for other tables related to the object.
Record types
The transport case file format consists of many records. Each record occupies a single line in the transport case file. The record type is indicated by the first character of the line. There are seven different record types. Comment lines begin with a semicolon (;).
Record type |
Description |
; |
Comment |
V |
File & version information |
T |
Table name |
C |
Table column definition |
F |
Table field data |
O |
Object home folder path (or link path) |
R |
End of row of data fields |
S |
End of file |
Comments
Comment lines begin with a semicolon (;).
The V record
All transport case files begin with a single V record. This record encodes basic information about the file and the system whence it originates.
V08 11.2 TRANSPORT OH 0000000056 018
Fields of record type V
Description |
Position |
Length |
Example |
Record type |
1 |
1 |
V |
File version |
2 |
4 |
8 |
System version |
5 |
10 |
11.2 |
File type |
15 |
21 |
TRANSPORT |
Main table |
35 |
20 |
OH |
Number of objects |
55 |
10 |
56 |
Unknown |
66 |
? |
18 |
T records
T records indicate the table to which a subsequent group of records pertains.
TABLOB
Fields of record type T
Description |
Position |
Length |
Example |
Record type |
1 |
1 |
T |
Table name |
2 |
? |
ABLOB |
C records
C records describe the columns in a particular table.
C001ABLOB_AH_Idnr 300004
Fields of record type C
Description |
Position |
Length |
Example |
Record type |
1 |
1 |
C |
Column number |
2 |
3 |
1 |
Column name |
5 |
15 |
ABLOB_AH_Idnr |
Column data type |
23 |
1 |
3 |
Column data length |
24 |
5 |
4 |
The column numbers correspond to the order of columns in the DB schema documentation. There are several column data types.
Column data types
Data type |
Description |
A |
Memo, CLOB |
B |
Memo, ? |
C |
Long Integer |
D |
XML |
0 |
Memo, binary |
1 |
Byte |
2 |
Integer |
3 |
Long Integer |
4 |
Long Integer, counter |
5 |
Date/Time |
6 |
Unknown (not yet encountered) |
7 |
Text |
8 |
Memo, ? |
9 |
Byte |
For the Memo data types, there is usually more information about the data type in the Description field of the DB schema documentation for the corresponding table.
F records
F records contain the data for each field in a particular table.
F004CUC0.DEV.TEST#1_1.JOBP
Fields of record type F
Description |
Position |
Length |
Example |
Record type |
1 |
1 |
F |
Field number |
2 |
3 |
4 |
Field data type |
5 |
1 |
C |
Field data |
6 |
1 |
UC0.DEV.TEST#1_1.JOBP |
The field numbers correspond to the column numbers of the corresponding tables, and the order of columns in the DB schema documentation.
There are several field data types.
Field data types
Data type |
Description |
- |
Integer |
+ |
Integer |
0 |
Byte |
2 |
Date/Time |
C |
String |
M |
String with byte count. Can contain multiple parts. |
There may be additional types too. The date/time values in F***2 fields begin with the numeral 2 in byte 5.
Some fields of type C can contain multiple labeled parts. E.g., JBA_Rest is used to store additional attributes for z/OS jobs.
F records (data type M)
F records with data type M have an additional data length field that indicates the length of the data to follow.
F005M000000010key1value1
Fields of record type F, data type M
Description |
Position |
Length |
Example |
Record type |
1 |
1 |
F |
Field number |
2 |
3 |
5 |
Field data type |
5 |
1 |
M |
Field data length |
6 |
9 |
10 |
Field data |
15 |
variable (10 in this case) |
key1value1 |
M fields often contain multiple parts separated by ^K (control-K) characters. These fields sometimes include embedded XML.
R records
A single R record terminates a group of F records corresponding to a single row in a table (which table is indicated in the most recent preceding T record). If an R record is followed immediately by another F record, this indicates the beginning of a new row of data for the same table. If an R record is followed immediately by a T record, this indicates the beginning of records for a different table.
O records
O records encode folder paths of objects.
\APPS{}\UC0{}\TESTS{}\TEST1{This is a folder title}
Fields of record type O
Description |
Position |
Length |
Example |
Record type |
1 |
1 |
O |
Folder path |
2 |
? |
\APPS{}\UC0{}\TESTS{}\TEST1{This is a folder title} |
O records always appear right after the R record concluding the F records of the OH table. If there is no O record for an object, this means the object is in <No Folder>. If there is one O record, this record contains the home folder path of the object. If there is more than one O record, the second, third, and so on represent links to the object. Folder titles appear within curly braces ({,}) after each level in the folder hierarchy.
The S record
The transport case file is terminated by a single S record.
S END
This document is based on an earlier discussion, Transport case file format.