Преобразование между COBOL и Java

В следующей таблице описаны преобразования между Java и отдельными полями COBOL.

Предложение Occurs

Табл. 1. Преобразование COBOL
Тип модели COBOL Формат COBOL и опции компиляции Строка PICTURE Пример Тип Java
COBOL AlphabeticType DISPLAY A PIC A(20). String
COBOL AlphaNumericType DISPLAY X и комбинация A, X и 9 PIC X(12). String
COBOL NumericType COMP-5 или BINARY, COMP, COMP-4 и TRUNC(BIN). Если указана опция компиляции trunc(bin), то диапазон двоичного числа (binary, comp, comp-4) ограничивается доступной памятью, а не строкой PIC. Comp-5 всегда ограничивается доступной памятью. Ограничение памяти задается в соответствии с размером строки PIC. S9(1) - S9(4) PIC S9 BINARY short
    S9(5) - S9(9) PIC S999999 BINARY. int
    S9(10) - S9(18) PIC S9999999999 BINARY. long
    9(1) - 9(4) PIC 9 BINARY. int
    9(5) - 9(9) PIC 999999 BINARY. long
    9(10) - 9(18) PIC 9999999999 BINARY. BigInteger
    Аналогично десятичным числам (V или P) PIC S999V9 BINARY. BigDecimal
  DISPLAY, COMP-3, PACKED-DECIMAL или BINARY, COMP, COMP-4 без TRUNC(BIN) S9(1) - S9(4) 9(1) - 9(4)   short
    S9(5) - S9(9) 9(5) - 9(9)   int
    S9(10) - S9(18) 9(10) - 9(18)   long
    Аналогично десятичным числам (V или P)   BigDecimal
  DISPLAY, COMP-3, PACKED-DECIMAL и ARITH(extend) S9(19) - S9(31) 9(19) - 9(31)   BigInteger
  DISPLAY, COMP-3, PACKED-DECIMAL и ARITH(extend) S9(19) - S9(31) 9(19) - 9(31) и decimal (V или P).   BigDecimal
COBOL AlphaNumericEdited Type DISPLAY A X 9 B 0 /   String
COBOL NumericEdited Type DISPLAY B P V Z 9 0 / , . + - CR DB * cs   String
COBOL DBCS Type DBCS G, B или N и DISPLAY-1. PIC G(10). String
COBOL InternalFloat Type COMP-1     float
  COMP-2     double
COBOL ExternalFloat Type   +- 9 . V E 9 PIC +99V9E99. String
Уровень 88    
  • 05 TXN_Resp_Code PIC X(3)
  • 88 Business_Code value "AAA" THRU "XXX"
  • 88 Business_Error value "XYX" THRU "ZYX"
  • 88 Completed_Code value "COM"
Для обращения к главному элементу на каждом уровне 88 применяется метод get.
COBOL National NATIONAL PIC N(8)   String
    PIC NBN   String
    PIC $9.9   String
    PIC +9.9E+99   String
    PIC 999V9   BigDecimal
    PIC S999V9 SIGN LEADING SEPARATE   BigDecimal
    PIC S999V9 SIGN TRAILING SEPARATE   BigDecimal

Комментарии