將數據類型從自動化轉換為 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,其內部數據表示法相同。 長度維持不變,因此不會影響您的大型主機程式。