DFHJS2LS:针对可链接接口的 JSON 模式到高级语言转换

DFHJS2LS 编目过程从 JSON 模式中生成高级语言数据结构和 JSON 绑定。 如果要创建可解析或创建 JSON 的 CICS® 程序,请使用 DFHJS2LS 。 本主题列出 DFHJS2LS的作业控制语句,符号参数,输入参数及其描述。

DFHJS2LS JCL 过程安装在数据集 HLQ .XDFHINST 中,其中 HLQ 是安装了 CICS 的高级限定符。

DFHJS2LS 的作业控制语句

JOB
启动作业。
EXEC
指定过程名称 (DFHJS2LS)。
INPUT.SYSUT1 DD
指定输入。 输入参数在输入流中指定。 您还可以在数据集中或分区数据集的成员中定义这些值。

符号参数

以下符号参数在 DFHJS2LS:

JAVADIR = 路径
指定 DFHJS2LS使用的 Java™ 目录的名称。 此参数的值将追加到 /usr/lpp/ ,提供完整路径名 /usr/lpp/ path
通常,您不指定此参数。 缺省值是在 JAVADIR 参数中提供给 CICS 安装作业 (DFHISTAR) 的值。
PATHPREF = 前缀
指定用于扩展其他参数上使用的 z/OS® UNIX 目录路径的可选前缀。 缺省值为空字符串。
通常,您不指定此参数。 缺省值是在 PATHPREF 参数中提供给 CICS 安装作业 (DFHISTAR) 的值。
SERVICE =
仅当 IBM® 支持人员指示时才使用此参数。
TMPDIR = tmpdir
指定 z/OS UNIX 中 DFHJS2LS 用作临时工作空间的目录的位置。 作业运行所使用的用户标识必须具有对此目录的读和写许可权。
缺省值为 /tmp
TMPFILE = tmpprefix
指定 DFHJS2LS 用于构造临时工作空间文件的名称的前缀。
缺省值为 JS2LS
USSDIR = 路径
指定 UNIX 系统服务文件系统中 CICS TS 目录的名称。 此参数的值将追加到 /usr/lpp/cicsts/ 以生成完整路径名 /usr/lpp/cicsts/ path 。 如果使用缺省值,那么必须将此值指定为 '.' (句点)。
通常,您不指定此参数。 缺省值是在 USSDIR 参数中提供给 CICS 安装作业 (DFHISTAR) 的值。

临时工作空间

DFHJS2LS 在运行时创建以下三个临时文件:
  • tmpdir / tmpprefix .in
  • tmpdir / tmpprefix .out
  • tmpdir / tmpprefix .err
其中:
  • tmpdir TMPDIR 参数中指定的值。
  • tmpprefix TMPFILE 参数中指定的值。
文件的缺省名称 (未指定 TMPDIRTMPFILE 时) 如下所示:
  • /tmp/JS2LS.in
  • /tmp/JS2LS.out
  • /tmp/JS2LS.err
重要信息: DFHJS2LS 不会锁定对 z/OS UNIX 文件或数据集成员的访问权。 因此,如果同时运行两个或多个 DFHJS2LS 实例,并使用相同的临时工作空间文件,那么当另一个作业正在使用这些文件时,没有任何内容可以阻止一个作业覆盖这些工作空间文件,从而导致不可预测的失败。

因此,建议您设计避免此情况的命名约定和操作过程; 例如,可以使用系统符号参数 SYSUID 来生成对单个用户唯一的工作空间文件名。

在作业结束之前,将删除这些临时文件。

DFHJS2LS 的输入参数

读取语法图跳过可视语法图CCSID= 值DATA-SCREENING=ENABLEDDATA-SCREENING=DISABLEDDEFAULT-ARRAY-MAXITEMS= 值JSONTRANSFRM= 值JSON-SCHEMA= 值LANG=COBOLLANG=PLI-ENTERPRISELANG=PLI-OTHERLANG=CLANG=CPPBUNDLE= 值LOGFILE= 值MAPPING-LEVEL=1.0MAPPING-LEVEL=1.1MAPPING-LEVEL=1.2高级数据映射(映射级别 1.2 和更高级别)MAPPING-LEVEL=2.0高级数据映射(映射级别 1.2 和更高级别)MAPPING-LEVEL=2.1高级数据映射(映射级别 2.1 和更高级别)MAPPING-LEVEL=2.2高级数据映射(映射级别 2.1 和更高级别)MAPPING-LEVEL=3.0高级数据映射 (映射级别 3.0 及更高版本)MAPPING-LEVEL=4.0高级数据映射 (映射级别 4.0 及更高版本)MAPPING-LEVEL=4.1高级数据映射 (映射级别 4.1 及更高版本)MAPPING-LEVEL=4.2高级数据映射(映射级别 4.2 和更高级别)MAPPING-LEVEL=4.3高级数据映射 (映射级别 4.3 及更高版本)MAPPING-OVERRIDES=SAME-AS-MAPPING-LEVELHYPHENS-AS-UNDERSCORESINTEGER-AS-PIC9LESS-DUP-NAMESUNDERSCORES-AS-HYPHENSMINIMUM-RUNTIME-LEVEL=MINIMUMMINIMUM-RUNTIME-LEVEL=3.0MINIMUM-RUNTIME-LEVEL=4.0MINIMUM-RUNTIME-LEVEL=4.1MINIMUM-RUNTIME-LEVEL=4.2MINIMUM-RUNTIME-LEVEL=4.3MINIMUM-RUNTIME-LEVEL=CURRENTOVERWRITE-OUTPUT= 否OVERWRITE-OUTPUT= YESPDSCP= 值PDSLIB= 值PDSMEM= 值STRUCTURE= PDSMEM_valueSTRUCTURE= 数据WIDE-COMP3=FULLWIDE-COMP3= 否WIDE-COMP3= YES
高级数据映射(映射级别 1.2 和更高级别)
读取语法图跳过可视语法图CHAR-VARYING=NOCHAR-VARYING=NULLCHAR-VARYING=YESCHAR-VARYING-LIMIT=32767CHAR-VARYING-LIMIT= 值CHAR-MULTIPLIER=1CHAR-MULTIPLIER= 值DEFAULT-CHAR-MAXLENGTH=255DEFAULT-CHAR-MAXLENGTH= 值DEFAULT-FRACTION-DIGITS=3DEFAULT-FRACTION-DIGITS= 值
高级数据映射(映射级别 2.1 和更高级别)
读取语法图跳过可视语法图INLINE-MAXOCCURS-LIMIT=1INLINE-MAXOCCURS-LIMIT= 值CHAR-WHITESPACE=PRESERVECHAR-WHITESPACE=REPLACECHAR-WHITESPACE=COLLAPSE
高级数据映射 (映射级别 3.0 及更高版本)
读取语法图跳过可视语法图DATETIME=PACKED15DATETIME=STRINGDATA-TRUNCATION=DISABLEDDATA-TRUNCATION=ENABLED
高级数据映射(映射级别 4.2 和更高级别)
读取语法图跳过可视语法图ADDITIONAL-PROPERTIES-DEFAULT=FALSEADDITIONAL-PROPERTIES-DEFAULT=TRUEADDITIONAL-PROPERTIES-MAX=UNBOUNDEDADDITIONAL-PROPERTIES-MAX= 值ADDITIONAL-PROPERTIES-SIZE=255ADDITIONAL-PROPERTIES-SIZE= 值

参数使用

  • 您可以按任何顺序指定输入参数。
  • 每个参数必须在新行开始。
  • 参数 (及其连续字符,如果使用) 不得超出第 72 列; 第 73-80 列必须包含空格。
  • 如果参数太长,无法适合单行,请在行尾使用星号 (*) 字符来指示该参数在下一行继续。 星号之前的所有内容 (包括空格) 都被视为参数的一部分。
  • 行的第一个字符位置中的 # 字符是注释字符。 将忽略该行。
  • 行的最后一个字符位置中的逗号是可选的行分隔符,将被忽略。

参数描述

ADDITIONAL-PROPERTIES-DEFAULT = { true | false }
指示是否将未显式声明支持 其他属性 的 JSON 模式对象解释为支持这些对象。 其他 JSON 属性是 JSON 对象中未在 JSON 模式中预定义的任何属性。 这些属性通常作为意外的额外数据被数据转换机制拒绝。 如果 ADDITIONAL-PROPERTIES-DEFAULT 设置为 TRUE,或者如果 JSON 模式显式地为对象设置 additionalProperties:true ,那么将在生成的副本中分配空间以保存此类值。 应用程序可以使用副本中的关联字段与这些值进行交互。

可以在 4.2 或更高的映射级别使用此参数。

ADDITIONAL-PROPERTIES-MAX = { 0-20 | 无界 }
指示支持这些属性的 JSON 对象支持的 其他属性 数。 请参阅 ADDITIONAL-PROPERTIES-DEFAULT。 生成的副本将包含适用于寻址任何其他属性的结构。 缺省情况下,不会对受支持的属性数施加最大约束。 副本以与没有约束的数组相似的方式生成,并使用容器。 此参数可用于应用可与 INLINE-MAXOCCURS-LIMIT 参数组合使用的最大约束,以导致为最大属性数分配固定长度数组,从而避免需要容器。

可以在 4.2 或更高的映射级别使用此参数。

ADDITIONAL-PROPERTIES-SIZE = { 16-32767 | 255 }
指示每个 JSON 附加属性的最大大小。 如果 JSON 对象支持 ADDITIONAL-PROPERTIES-DEFAULT定义的其他属性,那么生成的副本将具有绑定以支持最多由 ADDITIONAL-PROPERTIES-MAX指定的数目的属性。 缺省情况下,每个附加属性支持的最大值为 255 个字符。 将在生成的副本中生成该大小的字段。 可以通过设置 ADDITIONAL-PROPERTIES-SIZE 参数来定制此大小。 例如,将处理发现包含以下属性的 JSON 对象:

"example": { "notes": "this extra property was not defined in the JSON Schema" }

如果已生成副本以支持其他属性,那么该完整值将传递到应用程序以进行处理。 该值以属性键前的前导引号开头,并以属性值中的尾部右花括号结尾。 在此示例中,大约有 100 个字符。 用于 ADDITIONAL-PROPERTIES-SIZE 的值必须足够大,以容纳可能出现的最大此类值。 如果分配的缓冲区对于处理的值太小,那么将生成错误响应。

可以在 4.2 或更高的映射级别使用此参数。

BUNDLE =
指定 z/OS UNIX 上捆绑软件目录的路径和名称。 如果指定此值,那么 JSON 助手会在捆绑软件目录中生成 JSON 绑定,并为您创建捆绑软件清单。 此参数的路径信息将覆盖 JSONTRANSFRM 参数的任何路径信息。
CCSID =
指定在运行时用于对应用程序数据结构中的字符数据进行编码的 CCSID。 此参数的值将覆盖 LOCALCCSID 系统初始化参数的值。 value 必须是 Java 和 z/OS 转换服务支持的 EBCDIC CCSID。 如果未指定此参数,那么将使用系统初始化参数中指定的 CCSID 对应用程序数据结构进行编码。

可以将此参数与任何映射级别配合使用。

CHAR-MULTIPLIER = { 1 | value }
指定当映射级别为 1.2 或更高时允许每个字符使用的字节数。 该参数的可以是范围 1 - 2147483647 中的一个正整数。 所有基于非数字字符的映射均受到该倍数的限制。 二进制字段、数字字段、区位及压缩十进制字段不受该倍数的限制。

该参数可能很有用,例如,如果您打算使用 DBCS 字符,其中您可能选择使用乘数 3,以在运行时允许每个双字节字符周围的潜在移入和移出字符中包含空格。

设置 CCSID=1200 (指示 UTF-16) 时, CHAR-MULTIPLIER 的有效值只有 24 。 使用 UTF-16时,缺省值为 2 。 当您期望应用程序数据包含需要 1 UTF-16 编码单元的字符时,请使用 CHAR-MULTIPLIER=2 。 如果希望应用程序数据包含需要 2 UTF-16 编码单元的字符,请使用 CHAR-MULTIPLIER=4
注:CHAR-MULTIPLIER 设置为 1 并不排除使用 DBCS 字符,将其设置为 2 也不排除使用 UTF-16 代理对。 但是,如果经常使用宽字符,那么某些有效值将无法符合已分配字段。 如果使用更大的 CHAR-MULTIPLIER 值,那么已分配字段中可能存储比 XML 中有效字符数更多的字符。 请务必注意符合相应的范围限制。
CHAR-VARYING = { NO | NULL | YES }
指定当映射级别为 1.2 或更高时如何映射可变长度字符数据。 可变长度二进制数据类型始终与容器或可变结构建立映射。 如果不指定此参数,那么缺省映射取决于指定的语言。 您可以选择以下选项:
可变长度字符数据映射为定长字符串。
NULL
可变长度字符数据映射为以 null 结束的字符串。
YES
可变长度字符数据映射到 PL/I 中的 CHAR VARYING 数据类型。 在 COBOL , C 和 C++ 语言中,可变长度字符数据映射到由两个相关元素组成的等效表示: 数据长度和数据。
CHAR-VARYING-LIMIT = { 32767 | value }
指定当映射级别为 1.2 或更高时映射到语言结构的二进制数据和可变长度字符数据的最大大小。 如果字符或二进制数据大于在该参数中指定的值,那么它将与容器建立映射,且该容器的名称将被用在生成的语言结构中。 value 的范围从 0 到缺省值 32 767 字节。
CHAR-WHITESPACE = 折叠 | REPLACE | PRESERVE

指定 CICS将如何处理类型为字符串的值中的空格。

COLLAPSE
将移除前导、尾部和嵌入的空格,并且所有制表符、换行符和连续空格都将替换为单个空格字符。
REPLACE
任何制表符或换行符都将替换为相应数量的空格。
保留
在数据值中保留任何空格。
如果未设置 CHAR-WHITESPACE 参数,那么将折叠空格。
注: 此参数不适用于格式为 date-timeuribase64BinaryhexBinary (其中始终折叠空格) 的字段。
DATA-SCREENING = { ENABLED | DISABLED }
指定是否筛选应用程序提供的数据以查找错误。
ENABLED
将应用程序提供的与语言结构不一致的任何运行时数据视为错误,并发出消息 DFHPI1010 。 系统会向应用程序返回错误响应。
DISABLED
应用程序提供的运行时数据中与语言结构不一致的数据值将替换为缺省值。 例如,零替换数字字段中的错误值。 未发出消息 DFHPI1010 ,并且将向应用程序返回正常响应。 此功能可用于避免从未初始化的输出字段中生成的 INVALID_PACKED_DEC 和 INVALID_ZONED_DEC 错误响应。
DATA-TRUNCATION = { DISABLED | ENABLED }
指定可变长度数据是否可采用固定长度字段结构:
DISABLED
如果数据小于 CICS 期望的固定长度,那么 CICS 将拒绝截断的数据并发出错误消息。
ENABLED
如果数据小于 CICS 期望的固定长度,那么 CICS 会容许截断的数据,并将缺失的数据作为空值处理。
DATETIME = { PACKED15 | STRING }
指定将 JSON 日期时间属性映射到 CICS ABSTIME 数据格式或文本:
PACKED15
JSON 日期时间属性字段映射到 CICS ABSTIME 格式。
字符串
JSON 日期时间属性映射到文本。 此映射与所有先前映射级别相同。

可以在映射级别 3.0使用此参数。

DEFAULT-ARRAY-MAXITEMS =
指定要应用的最大数组边界,其中 JSON 模式中不包含最大出现次数信息 (maxItems)。 如果未设置此参数,那么不会应用最大限制。 此参数的值可以是 1-2147483647 范围内的正整数。 此参数可与 INLINE-MAXOCCURS-LIMIT 参数结合使用,以影响将 JSON 数组映射到语言结构中的方式。
DEFAULT-CHAR-MAXLENGTH = { 255 | value }
指定当映射级别为 1.2 或更高版本时,在 JSON 模式文档中不包含任何长度的映射的字符数据的缺省数组长度 (以字符计)。 此参数的 可以是 1 到 2 147 483 647 范围内的正整数。
DEFAULT-FRACTION-DIGITS = { 3 | value }
指定要在 JSON 十进制模式类型上使用的缺省小数位数。 缺省值为 3。 对于 COBOL ,有效范围为 0-17 ,如果正在使用参数 WIDE-COMP3 ,那么有效范围为 0-30。 对于 C 或 PLI ,有效范围为 0-30。
INLINE-MAXOCCURS-LIMIT = { 1 | value }
指定是否根据 JSON 模式关键字的 maxItems 属性使用内联变量重复内容。

INLINE-MAXOCCURS-LIMIT 参数仅在映射级别 2.1 起可用。 INLINE-MAXOCCURS-LIMITvalue 可以是 0 到 32 767 范围内的正整数。 值为 0 表示未使用内联映射。 值为 1 确保可选元素已进行内联映射。 如果 maxItems 属性的 value 大于 INLINE-MAXOCCURS-LIMITvalue ,那么将使用基于容器的映射; 否则,将使用内联映射。

如果您决定要始终以内联方式映射重复列表,请考虑重复数据的单个项的长度。 如果您有几个长长度的实例,那么首选基于容器的映射; 如果您有许多短长度的实例,那么可能首选内联映射。

有关可变重复内容的更多信息,请参阅 DFHJS2LS中元素的变量数组

JSONTRANSFRM =
此参数对于 LINKable 方式是必需的,但对于请求/响应方式和 RESTful 方式无效。 它指示用于 CICS中的 JSONTRANSFRM 束资源的名称 (1-16 个字符)。 可以在名称中使用字符 A-Z a-z 0-9 和 _。
JSON-SCHEMA =
从中读取 JSON 模式的文件的标准 z/OS UNIX 名称。 如果该文件尚不存在,那么 DFHJS2LS 会创建该文件,但不会创建目录结构。
LANG = COBOL
指定高级语言结构的编程语言为 COBOL。
LANG = PLI-ENTERPRISE
指定高级语言结构的编程语言为 Enterprise PL/I。
LANG = PLI-OTHER
指定高级语言结构的编程语言为 Enterprise PL/I 以外的 PL/I 级别。
LANG = C
指定高级语言结构的编程语言为 C。
LANG = CPP
指定高级语言结构的编程语言为 C++。
LOGFILE =
DFHJS2LS 将其活动日志和跟踪信息写入的文件的标准 z/OS UNIX 名称。 如果该文件尚不存在,那么 DFHJS2LS 会创建该文件,但不会创建目录结构。

通常,您不使用此文件,但如果迂到 DFHJS2LS问题,那么 IBM 服务组织可能会请求此文件。

MAPPING-LEVEL = { 1.0 | 1.1 | 1.2 | 2.0 | 2.1 | 2.2 | 3.0 | 4.0 | 4.1 | 4.2|4.3 }
指定在生成 JSON 绑定和语言结构时要使用的助手的映射级别。 必须使用可用的最新映射级别; 对于 DFHJS2LS,必须使用映射级别 3.0 或更高版本。
3.0
这是可用于 DFHJS2LS的最低映射级别。
4.0
如果要使用 UTF-16,请将此映射级别与 CICS TS 5.2 或更高版本的区域配合使用。
4.1
对于可集群阵列支持,请将此映射级别与具有 APAR PI67641或更高版本的 CICS V5.2 区域配合使用。
4.2
对于其他属性,请将此映射级别与具有 APAR PI86039或更高版本的 CICS TS 5.4 区域配合使用。
4.3
对于多维阵列支持,请将此映射级别与具有 APAR PI88519或更高版本的 CICS TS 5.4 区域配合使用。
有关每个映射级别的支持的更多详细信息,请参阅 CICS JSON 助手的映射级别
MAPPING-OVERRIDES = { SAME-AS-MAPPING-LEVEL |HYPHENS-AS-UNDERSCORES | INTEGER-AS-PIC9 | LESS-DUP-NAMES | UNDERSCORES-AS-HYPHENS | NO-ARRAY-NAME-INDEXING }
指定在生成语言结构时是否覆盖指定映射级别的缺省行为。
与映射级别相同
此参数生成与映射级别相同的样式的语言结构。 这是缺省值。
连字符即下划线
仅适用于 PL/I。 此参数将 JSON 模式中的任何连字符转换为下划线而不是字符 X ,以提高生成的 PL/I 语言结构的可读性。 有关更多信息,请参阅 JSON 模式到 PL/I 映射
INTEGER-AS-PIC9
仅适用于 COBOL 和 DFHJS2LS 。 此参数生成包含来自 JSON 模式的整数值的语言结构,作为数字而不是字母数字字符。
LESS-DUP-NAMES
该参数将生成非结构化结构字段名称,名称末尾带 _value 以支持对字段的直接引用。 例如,在以下 PLI 语言结构中,当指定 MAPPING-OVERRIDES = LESS-DUP-NAMES 时,级别 12 字段 streetName 以 _value 作为后缀:
09 streetName,
12 streetName CHAR(255) VARYING
UNALIGNED,
12 filler BIT (7),
12 attr_nil_streetName_value BIT (1),

生成的结构如下:

09 streetName,
12 streetName_value CHAR(255) VARYING
UNALIGNED,
12 filler BIT (7),
12 attr_nil_streetName_value BIT (1),
UNDERSCORES-AS-HYPHENS
此选项在映射级别 4.0自动启用。
仅适用于 COBOL。 这个参数将 JSON 模式的任何下划线转换为连字符,而不是字符 X,以提高生成的 COBOL 语言结构的可读性。 如果发生任何字段名称冲突,那么将对字段进行编号以确保其唯一。 有关更多信息,请参阅 JSON 模式到 COBOL 映射
NO-ARRAY-NAME-建立索引
仅适用于 COBOL 和 Enterprise PL/I。 确保数组中的字段名称仅在较高级别结构的作用域内唯一。
MINIMUM-RUNTIME-LEVEL = { MINIMUM | 3.0 | 4.0 | 4.1|4.2| 4.3|CURRENT }
指定可以将 JSON 绑定部署到的最低 CICS 运行时环境。 如果选择的级别与指定的其他参数不匹配,那么将接收到错误消息。 您可以选择的选项如下所示:
最小值
将根据您选择的参数自动分配 CICS 的最低可能运行时级别。
3.0
如果要使用 CICS JSON 助手并利用高级数据映射,请指定运行时级别 3.0 或更高版本。
4.0
生成的 Web Service 绑定文件成功部署到位于 CICS TS 5.2 或更高版本的区域中。 通过此运行时级别,可以将映射级别 4.0 或更低版本用于 MAPPING-LEVEL 参数。 可以在此级别使用任何可选参数。
4.1
生成的 Web Service 绑定文件成功部署到具有 APAR PI67641或更高版本的 CICS TS 5.2 上的区域中。 通过此运行时级别,可以将映射级别 4.1 或更低版本用于 MAPPING-LEVEL 参数。
4.2
生成的 Web Service 绑定文件成功部署到具有 APAR PI86039或更高版本的 CICS TS V5.4 区域中。 通过此运行时级别,可以将映射级别 4.2 或更低版本用于 MAPPING-LEVEL 参数。
4.3
生成的 Web Service 绑定文件成功部署到具有 APAR PI88519或更高版本的 CICS TS 5.4 区域中。 通过此运行时级别,可以将映射级别 4.3 或更低版本用于 MAPPING-LEVEL 参数。
CURRENT
使用此运行时级别将生成的绑定文件部署到将运行时环境设置为用于生成绑定文件的 CICS 区域中。
OVERWRITE-OUTPUT = { NO | YES }
控制是否可以覆盖文件系统上的现有 CICS BUNDLE。
不会替换任何现有 BUNDLE。 如果找到现有 BUNDLE DFHJS2LS ,那么会发出错误消息 DFHPI9689E 并终止。
YES
将替换任何现有 BUNDLE。 如果找到现有 BUNDLE ,那么将发出消息 DFHPI9683W 以通知您已替换该文件。
PDSCP =
指定分区数据集成员中使用的代码页,其中 value 是 CCSID 编号或 Java 代码页编号。 如果未指定此参数,那么将使用 z/OS UNIX System Services 代码页。 例如,可以指定 PDSCP=037
PDSLIB =
指定包含生成的高级语言的分区数据集的名称。
PDSMEM =
指定 DFHJS2LS 用于生成将包含高级语言结构的分区数据集成员的名称的 1-6 字符前缀。
DFHJS2LS 为每个操作生成一个分区数据集成员。 通过向前缀追加数字来生成成员名,最大成员名长度为 8 个字符。
STRUCTURE = { PDSMEM_value | data }
C 和 C++ 中顶级数据结构的名称。 缺省值是 PDSMEM 参数的值。
WIDE-COMP3 = { FULL | NO | YES }
控制所生成的 COBOL 或 PL/I 语言结构中压缩十进制可变长度的最大大小。
full
对于 COBOL 和 PL/I。 DFHJS2LS 生成一个足以容纳所有有效值的压缩十进制字段。 最大大小为 31 位。 这是缺省值。
仅适用于 COBOL。 DFHJS2LS 在生成 COBOL 语言结构类型 COMP-3时,将压缩十进制变量长度限制为 18。 如果压缩十进制大小超过 18,那么将发出 DFHPI9022W 消息以指示所指定的类型被限制在总共 18 个数字。
YES
仅适用于 COBOL。 DFHJS2LS 在生成 COBOL 语言结构类型 COMP-3时支持最大大小 31。
注: NOYES 选项生成无法表示所有有效值的字段; FULL 选项可避免此问题。 但是, FULL 选项允许在压缩十进制字段中表示一些无效值。 例如,如果模式指示最多有 5 位数字,最多有 2 位小数,那么 FULL 选项将生成允许 7 位数字的压缩十进制字段,这将允许为有效值 (例如 25000 和 999.99) 提供空间,但也为某些无效值 (例如 9999.99) 提供空间。 使用 FULL 选项时,请注意不要在应用程序数据中生成无效值。

示例


//JS2LS JOB '
accounting information
',
name,MSGCLASS=A
// SET QT=''''
//JAVAPROG EXEC DFHJS2LS,
// TMPFILE=&QT.&SYSUID.&QT
/INPUT.SYSUT1 DD *
PDSLIB=//CICSHLQ.SDFHSAMP
PDSMEM=CPYBK2
JSON-SCHEMA=example.json
LANG=COBOL
LOGFILE=/u/exampleapp/example.log
MAPPING-LEVEL=4.0
CHAR-VARYING=NULL
JSONTRANSFRM=EXAMPLE
BUNDLE=/u/exampleapp/bundles/exampleBundle
/*