我需要将四字节字段的两个字节移动到一个两个字节的新字段中.
我想使用的代码:
MOVE C-SERVICE-CYE TO S-CYE.
Run Code Online (Sandbox Code Playgroud)
我需要一年中的最后两位数字.例如:2014年将是14
数据结构:
02 S-DATE.
10 S-MME PIC X(02).
10 FILLER PIC X(01) VALUE '/'.
10 S-DDE PIC X(02).
10 FILLER PIC X(01) VALUE '/'.
10 S-CYE PIC X(02).
Run Code Online (Sandbox Code Playgroud)
第二数据结构:
02 C-SERVICE-DATE-E.
10 C-SERVICE-CYE PIC X(04).
10 C-SERVICE-MME PIC X(02).
10 C-SERVICE-DDE PIC X(02).
Run Code Online (Sandbox Code Playgroud)
有两种相当直接的方法可以做到这一点.
一个是细分源变量声明:
02 C-SERVICE-DATE-E.
10 C-SERVICE-CYE.
15 C-SERVICE-CYE-CC PIC X(02).
15 C-SERVICE-CYE-YY PIC X(02).
10 C-SERVICE-MME PIC X(02).
10 C-SERVICE-DDE PIC X(02).
Run Code Online (Sandbox Code Playgroud)
然后将MOVE语句修改为: MOVE C-SERVICE-CYE-YY TO S-CYE
另一种方法是使用参考修改: MOVE C-SERVICE-CYE (3:2) TO S-CYE
这一切都有效,因为您在这里引用的数据项是DISPLAY类型.如果他们是数字(例如COMP事物),这种技术将不起作用.
| 归档时间: |
|
| 查看次数: |
2023 次 |
| 最近记录: |