cobol学习笔记
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Cobol With tamic
0 、变量和数组声明
Cobol变量使用stuct结构。
01 WS-DETAIL3.
03 WK-DETAIL3 OCCURS 999 TIMES.(定义数据)
05 IWYYMMDD-AFT-RECORD-SEQNO PIC 9(03).
05 IWYYMMDD-AFT-RECORD-DRCRFLAG PIC X(02) V ALUE SPACE.
05 IWYYMMDD-AFT-RECORD-CUSTCOD PIC X(13) V ALUE SPACE.
05 IWYYMMDD-AFT-RECORD-AGLACIT PIC X(12) V ALUE SPACE.
05 IWYYMMDD-AFT-RECORD-CCY PIC X(03) V ALUE SPACE.
1 、数学计算
COMPUTE WS-TOTDR = WS-TOTDR - IWYYMMDD-BEF-RECORD-DRAMT.
ADD 1 TO B.
2 、赋值语句。
Move “A”to A AA.(可以为两个变量同时赋值)
3 、逻辑判断
If A NOT= B
End-if.
4 、函数模块调用
1)、调某函数块
PERFORM A3000-DETAIL2-EDIT THRU A3000-EXIT.
2)、循环调某函数块
PERFORM A3000-DETAIL2-EDIT util COND1 .循环调某函数块到满足条件为止。
3) go to.
5 、一般数据操作
1)、和数据库建立连接
EXEC TAMIC-DB
OPEN I-O FILE("YEDMVDTL")* 打开数据库连接
END-EXEC.
2)、执行查询
INITIALIZE YEDMVDTL-REC
EXEC TAMIC-DB
START FILE ("YEDMVDTL") GTEQ FROM (YEDMVDTL-REC) –打开数据表,获取满足条件的记录
END-EXEC.
IF SUCCESS ----success 系统变量,判断数据库连接是否成功。
PERFORM 15000-CLEAR-FILE UNTIL IS-EOF
*循环调用一直到满足条件为止
END-IF.
3)、读取数据
EXEC TAMIC-DB
READNEXT FILE("YEDMVDTL") INTO(YEDMVDTL-REC) *读取下一条数据记录到yedmvdtl_rec中
END-EXEC
4)、更新或新建数据
WRITE FILE ("YEDMVDTL") FROM (YEDMVDTL-RECORD)
5)、删除数据
DELETE FILE ("YEDMVDTL") FROM (YEDMVDTL-REC)
6 、文件操作
1)、环境部申明内容
ENVIRONMENT DIVISION.
MF SELECT IWYYMMDD-AFT ASSIGN TO DYNAMIC WS-FILENM-AFT(文件名)* 申明文件操作
ORGANIZATION IS LINE SEQUENTIAL * 每次读取一行
ACCESS MODE IS SEQUENTIAL * 块操作
FILE STATUS IS FILE-STATUS. * 文件读写状态参数2)、数据部申明内容
DATA DIVISION.
FILE SECTION.
FD IWYYMMDD-AFT
* LABEL RECORDS ARE STANDARD.
DATA RECORD IWYYMMDD-AFT-RECORD.
01 IWYYMMDD-AFT-RECORD.
05 FILLER PIC X(300).
01 IF-END-OF-FILE PIC X.
01 WS-FILENM-AFT.(文件名)
05 FILLER PIC X(17).
01 WK-IWYYMMDD-AFT-RECORD.
03 IWYYMMDD-AFT-RECORD1 PIC X(124).
03 FILLER1 REDEFINES IWYYMMDD-AFT-RECORD1.
05 IWYYMMDD-AFT-RECORD-TTALINTCON PIC 9(06).
05 IWYYMMDD-AFT-RECORD-TTADRAMT PIC S9(14)V99.
05 IWYYMMDD-AFT-RECORD-TTACRAMT PIC S9(14)V99.
3)、打开读取文件
STRING "./IF/","FTGL",WK-PRODATE(5:4),".TXT"
DELIMITED BY SIZE INTO WS-FILENM-AFT.
OPEN OUTPUT(INPUT)IWYYMMDD-AFT. –打开文件指定输出到(IWYYMMDD-AFT)
READ IWYYMMDD-AFT NEXT .读取下一行
写文件
Write IWYYMMDD-AFT.
MOVE IWYYMMDD-AFT-RECORD TO WK-IWYYMMDD-AFT-RECORD(按结构读取文件中一行内容到结构变量上)
4)、关闭文件
CLOSE IWYYMMDD-BEF.