將數據類型從自動化轉換為 z/OS COBOL

使用本主題中的數據表做為指南,指定 TI 如何處理從自動化數據類型轉換為 COBOL 數據類型的轉換。 如需特定數據類型的詳細資訊,請參閱 支援的 TI 數據類型

使用下列程式代碼索引鍵來解譯每個數據表中 [可能轉換錯誤 ] 和 [ 必要屬性設定] 資料 行中的程序代碼。

程式碼 描述
r 可能的範圍錯誤。
b 由於基底 2 到基底 16 轉換而可能遺失精確度。
p 可能因為圖片格式縮放規格而遺失精確度。
m 可能對應錯誤。
f yyyyddd 和 hhmmss。
A 您必須在屬性頁的 [COBOL 定義] 索引標籤上,指定 [錯誤處理] 底下的 [截斷]、[四捨五入] 或 [錯誤]。
C 您必須在屬性頁的 [COBOL 定義] 索引標籤上填入 [數位] 左邊[數位] 右方塊,以指定精確度和小數字數。
D 您必須在屬性頁的 [COBOL 定義] 索引標籤上填入 [大小] 方塊,以指定字串寬度。
E 需要 Unicode 或 EBCDIC 對應資訊,例如代碼頁。
F 對於長度小於指定最大值的陣列,您必須在屬性頁的 [COBOL 定義] 索引標籤上,在 [尾端填入] 底下指定 [填入大小]。
G 您必須指定如何處理字串。 在屬性頁的 [COBOL 定義] 索引標籤上,按兩下 [字元串分隔] 底下的 [空格填補] 或 [Null]。 然後在屬性頁的 [COBOL 定義] 索引標籤上按兩下 [錯誤處理] 底下的 [截斷] 或 [錯誤],以指定字串太長時應該執行的 TI。
H 需要大小上限。
I 需要當地語系化。
J 支援選擇性的 SO 和 SI 插入和刪除。

下表顯示 TI 用來將自動化資料類型轉換成 COBOL 數據類型的預設值。

Default

從自動化數據類型 至 z/OS COBOL 數據類型 可能的轉換錯誤 必要的屬性設定
1 位元組無符號整數 PIC X 無翻譯
2 位元組帶正負號的整數 PIC S9 (4) COMP (整數 16 位)
4 位元組帶正負號的整數 PIC S9 (9) COMP (整數 32 位)
4 位元組 Real (Single) COMP-1 br
8 位元組 Real (Double) COMP-2 br
Boolean PIC S9 (4) COMP (整數 16 位)
可變長度字串 PIC X m
貨幣 COMP-3 已封裝十進位 pr C
日期 (日期和時間) COMP-3 已封裝十進位 pf CI
僅限日期 (日期) COMP-3 已封裝十進位 pf CI
僅限日期 (時間) COMP-3 已封裝十進位 pf CI
Decimal COMP-3 已封裝十進位 pr C
陣列 (任何數據類型) 發生固定時間 跳 頻

注意

當您將整數或小數字數從 Visual Basic Single 或 Visual Basic Double 數據類型轉換成 Packed Decimal 或 distributed program call (DPC) Zoned Decimal 數據類型時,TI 會限制為小數點左邊 1 到 18 位數的精確度 (,例如 1.2345678901234567E+17) 。 當您轉換小數數位 Packed Decimal 或 DPC Zoned Decimal 數據類型時,您應該轉換成 Visual Basic Decimal 數據類型。

下表顯示您可以在 TI Project 中設定的其他支援資料類型對應,以覆寫上表中顯示的預設值。

交易整合器支援

從自動化數據類型 至 z/OS COBOL 數據類型 可能的轉換錯誤 必要的屬性設定
1 位元組無符號整數 PIC S9 (4) COMP (整數 16 位)
1 位元組無符號整數 COMP-3 Packed Decimal C
2 位元組帶正負號的整數 COMP-3 Packed Decimal C
2 位元組帶正負號的整數 DISPLAY Zoned Decimal C
4 位元組帶正負號的整數 COMP-3 Packed Decimal C
4 位元組帶正負號的整數 DISPLAY Zoned Decimal C
4 位元組 Real (Single) PIC S9 (4) COMP (整數 16 位) p,r
4 位元組 Real (Single) PIC S9 (9) COMP (整數 32 位) p,r
4 位元組 Real (Single) COMP-3 Packed Decimal p,r C
4 位元組 Real (Single) DISPLAY Zoned Decimal p,r C
8 位元組 Real (Double) PIC S9 (4) COMP (整數 16 位) p,r
8 位元組 Real (Double) PIC S9 (9) COMP (整數 32 位) p,r
8 位元組 Real (Double) COMP-3 Packed Decimal p,r C
8 位元組 Real (Double) DISPLAY Zoned Decimal p,r C
Boolean PIC S9 (9) COMP (整數 32 位)
Boolean COMP-3 Packed Decimal C
可變長度字串 PIC G m DEGJ
貨幣 PIC S9 (?) V9 (?) COMP (16 位) pr
貨幣 PIC S9 (?) V9 (?) COMP (32 位) pr
貨幣 DISPLAY Zoned Decimal pr C
Decimal PIC S9 (?) V9 (?) COMP (16 位) pr
Decimal PIC S9 (?) V9 (?) COMP (32 位) pr
Decimal DISPLAY Zoned Decimal pr C
陣列 (任何數據類型) 發生於視情況而定 跳 頻

注意

當您將整數或小數字數從 Visual Basic Single 或 Visual Basic Double 數據類型轉換成 Packed Decimal 或 DPC Zoned Decimal 數據類型時,TI 會限制為小數點左邊 1 到 18 位數的精確度 (,例如 1.2345678901234567E+17) 。

下表顯示 TI 執行時間環境支援的其他支援資料類型對應。

只有 TI 執行時間環境才支援

從自動化數據類型 至 z/OS COBOL 數據類型 可能的轉換錯誤 必要的屬性設定
1 位元組無符號整數 PIC S9 (9) COMP (整數 32 位)
1 位元組無符號整數 DISPLAY Zoned Decimal C
Boolean DISPLAY Zoned Decimal C

TI 目前不支援從自動化到 COBOL 的其他資料類型轉換。

注意

當 COBOL 使用方式為 DISPLAY 而沒有符號且您將 Automation 類型變更為 String 時,COBOL 圖片會變更為 PIC X,其內部數據表示法相同。 長度維持不變,因此不會影響您的大型主機程式。

另請參閱

支援的 TI 資料類型
將數據類型從 z/OS COBOL 轉換為自動化
數據類型轉換