Update 2018.04.17: For the most up-to-date version of this documentation, see: Transport case file format.
For the benefit of anyone else who might be interested, here is my documentation of the transport case file format. I based this documentation on transport case files produced by Automation Engine v11.2. This information is provided as-is, and is based on a lot of educated guesswork. Rely on this information at your own risk! B)
If you can fill in any missing information, please comment below.
Overall structure
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. Lines beginning with a semicolon (;) are comments, and are ignored.
Record types
Record type | Description |
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 group of data fields |
S | End of file |
; | Comment |
Broadly speaking, a transport case file consists of two main parts: table descriptions at the top, and table content at the bottom.
Table descriptions
Thetable descriptions section contains a complete description of the structure ofall 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. Thetable contentsection 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.
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 | 08 |
System version | 5 | 10 | 11.2 |
File type | 15 | 21 | TRANSPORT |
Main table | 35 | 20 | OH |
Number of objects | 55 | 10 | 56 |
Unknown | 66 | ? | 018 |
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
Crecords 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 | 001 |
Column name | 5 | 15 | ABLOB_AH_Idnr |
Column data type | 23 | 1 | 3 |
Column data length | 24 | 5 | 00004 |
The column numbers correspond to the order of columns in theDB 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
Frecords 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 | 004 |
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_Restis used to store additionalattributes 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 | 005 |
Field data type | 5 | 1 | M |
Field data length | 6 | 9 | 000000010 |
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.
O records
Orecords 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
Original post
I am working on a general purpose script for reading arbitrary information from a transport case export file. The idea is to make it easy to list the details of objects that meet certain criteria. The new script is based on the approach first suggested by Automic back in . There are still a few things I haven't figured out. Does anyone have any documentation of the transport case file format?