PUT CONTAINER (BTS)
将数据保存在指定的 BTS 数据容器中。
语法
条件: ACTIVITYERR , CONTAINERERR , INVREQ , IOERR , LOCKED 和 PROCESSBUSY
NOHANDLE、RESP 和 RESP2是常用选项,可添加到所有 EXEC CICS 命令中以处理错误条件。 命令语法图和选项说明中没有明确包含这些选项。 有关这些常用选项和 EXEC CICS 命令语法的信息,请参阅 EXEC CICS 命令格式和编程注意事项.
描述
PUT CONTAINER (BTS) 保存数据并将其放入与指定 BTS 活动或进程关联的容器中。
容器由名称标识。 可以标识拥有容器的流程或活动:
- 通过指定其中一个与 PROCESS 或 ACTIVITY 相关的选项显式地执行此操作。
- 通过省略与 PROCESS 和 ACTIVITY 相关的选项来隐式执行此操作。 如果省略这些活动,那么将隐含当前活动。
注:
- 可以与活动关联的容器数量没有限制。
- 不同的活动可以拥有名称相同的容器-这些是不同的容器。
- 如果指定的容器尚不存在,那么将创建该容器。 如果指定的容器已存在,那么将覆盖其先前的内容。
- 流程 (process-containers) 拥有的容器可以由流程中的每个活动读取。 但是,它们只能由根活动或已获取流程的程序进行更新。
流程的容器 不 与其根活动的容器相同。
选项
- ACQACTIVITY
- 指定以下任一项:
- 如果发出该命令的程序已获取进程,那么该容器由该进程的根活动拥有。
- 否则,该容器由程序通过获取 ACTIVITYID 命令获取的活动所拥有。
- ACQPROCESS
- 指定容器由发出命令的程序在当前工作单元中获取的进程拥有。
- ACTIVITY (数据值)
- 指定拥有容器的活动的名称 (1-16 个字符)。 这必须是当前活动的子代。
- CONTAINER (数据值)
- 指定要将数据放入其中的容器的名称 (1-16 个字符)。
The acceptable characters are A-Z a-z 0-9 $ @ # / % & ? ! : | " = ¬ , ; < > . - and _. 不允许使用前导和嵌入的空白字符。 如果提供的名称少于 16 个字符,那么将使用最多 16 个字符的尾部空格来填充该名称。
- FLENGTH (数据值)
- 指定要从中读取数据的数据区的长度作为全字二进制值。
- FROM (数据区)
- 指定要从中读取要保存的数据的工作存储器区域。
- PROCESS
- 指定要将数据放置到其中的容器由当前进程 (即,代表发出该命令的程序正在执行的进程) 拥有。
条件
- 109 个 ACTIVITYERR
- RESP2 值:
- 8
- 找不到 ACTIVITY 选项上指定的活动。
- 110 CONTAINERERR
- RESP2 值:
- 10
- 找不到 CONTAINER 选项上指定的容器。
- 18
- CONTAINER 选项上指定的名称包含非法字符或字符组合。
- 26 日
- CONTAINER 选项上指定的进程容器是只读的。
- 16 INVREQ
- RESP2 值:
- 1
- 指定了 DATATYPE 选项而未指定 CHANNEL 选项,并且没有当前通道 (因为发出该命令的程序未传递一个)。 DATATYPE 仅在指定 (显式或隐式) 通道的 PUT CONTAINER 命令上有效。 它在 PUT CONTAINER (BTS) 命令上无效。
- 2
- 指定了没有 CHANNEL 选项的 FROMCCSID 选项,并且没有当前通道 (因为发出该命令的程序没有传递一个)。 FROMCCSID 仅在指定 (显式或隐式) 通道的 PUT CONTAINER 命令上有效。 它在 PUT CONTAINER (BTS) 命令上无效。
- 4
- 该命令是在当前活动活动的作用域之外发出的。
- 15
- 使用了 ACQPROCESS 选项,但发出请求的工作单元尚未获取进程。
- 24
- 使用了 ACQACTIVITY 选项,但发出请求的工作单元尚未获取活动。
- 25
- 使用了 PROCESS 选项,但在当前活动进程的作用域之外发出了该命令。
- 17 IOERR
- RESP2 值:
- 30
- 在存储库文件上发生输入/输出错误。
- 31 日
- 存储库文件上的记录正在使用中。
- 100 个已锁定
- 无法执行请求,因为针对存储库文件上的相关记录存在保留锁定。
- 106 进程忙
- RESP2 值:
- 13
- 无法满足请求,因为进程记录已被另一个任务锁定。
