📄 billone.cbl
字号:
$set 64ksect ans85 mf noosvs nobound ibm-ms SEGSIZE"65535"
$SET EXPANDDATA
$set keycompress "1" KEYCOMPRESS "2"
$SET ADDSYN "BACKGROUND-COLOR" = "BG"
$SET ADDSYN "FOREGROUND-COLOR" = "FG"
$SET ADDSYN "HIGHLIGHT" = "HL"
$SET ADDSYN "COLUMN" = "COL"
* * * * * Customer transactions * * * * *
IDENTIFICATION DIVISION.
PROGRAM-ID. ldcusdet.
ENVIRONMENT DIVISION.
SPECIAL-NAMES.
crt status is key-status
COMMAND-LINE IS COMLINE
CONSOLE IS CRT.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT NOT OPTIONAL ITEM-FILE ASSIGN TO DISK
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
LOCK MODE IS AUTOMATIC with lock on record
RECORD KEY IS I-CODE
ALTERNATE RECORD KEY IS IMFR WITH DUPLICATES
ALTERNATE RECORD KEY IS I-NAME10 WITH DUPLICATES
ALTERNATE RECORD KEY IS I-res-SUP1 WITH DUPLICATES
ALTERNATE RECORD KEY IS I-ALT-CODE WITH DUPLICATES
FILE STATUS IS CHECK-FST.
SELECT NOT OPTIONAL GENERAL-FILE ASSIGN TO DISK
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
LOCK MODE IS AUTOMATIC WITH LOCK ON RECORD
RECORD KEY IS GENERAL-CODE
ALTERNATE RECORD KEY IS COMB-KEY1 = GEN-ID DESCRIP-6
WITH DUPLICATES
ALTERNATE RECORD KEY IS COMB-KEY2 = GEN-ID AREA-ABB
WITH DUPLICATES
ALTERNATE RECORD KEY IS COMB-KEY3 = GEN-ID REPORT-ID2
WITH DUPLICATES
ALTERNATE RECORD KEY IS COMB-KEY4 = GEN-ID REPORT-ID3
WITH DUPLICATES
ALTERNATE RECORD KEY IS COMB-KEY5 = GEN-ID SMAN-CODE
WITH DUPLICATES
FILE STATUS IS CHECK-FST.
******* Supplier -- S , Salesman - E ---> gen-code3-6.
******* Customer -- C , Bank -- B , Lorry - L ---> gen-code.
******* Area -- A ----> Area-code.
SELECT NOT OPTIONAL NO-FILE ASSIGN TO DISK
ORGANIZATION IS SEQUENTIAL
ACCESS MODE IS SEQUENTIAL
LOCK MODE IS AUTOMATIC WITH LOCK ON RECORD
FILE STATUS IS CHECK-FST.
SELECT NOT OPTIONAL SALE-TRANS ASSIGN TO DISK
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
LOCK MODE IS AUTOMATIC WITH LOCK ON RECORD
RECORD KEY IS SAL-BNO
alternate record key is suser-code with duplicates
FILE STATUS IS CHECK-FST.
SELECT NOT OPTIONAL ITEM-TRANS ASSIGN TO DISK
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
LOCK MODE IS AUTOMATIC WITH LOCK ON RECORD
RECORD KEY IS IT-BNO
ALTERNATE RECORD KEY IS IT-CODE WITH DUPLICATES
FILE STATUS IS CHECK-FST.
select head-file assign to disk
organization is indexed
access mode is dynamic
lock mode is automatic with lock on record
record key is hd-bno
alternate record key is hd-cust-code with duplicates
file status is check-fst.
select det-file assign to disk
organization is indexed
access mode is dynamic
lock mode is automatic with lock on record
record key is det-key1 = det-bill det-date
alternate record key is det-bno with duplicates
file status is check-fst.
SELECT PRINT-FILE ASSIGN TO PRINT-ID
FILE STATUS CHECK-FST.
DATA DIVISION.
FILE SECTION.
fd head-file
label records are standard
value of file-id is head-id.
01 head-rec.
02 hd-rec-begin pic x.
02 hd-bno pic 9(6).
02 hd-date.
03 hd-dd pic 9(2).
03 hd-mm pic 9(2).
03 hd-y1 pic 9(2).
03 hd-y2 pic 9(2).
02 hd-tot-amt pic 9(7)v99.
02 hd-cust-code pic x(6).
02 hd-doct-code pic x(6).
02 hd-mrn pic x(10).
02 hd-cmp-code pic x(6).
02 hd-f pic x(75).
02 hd-rec-end pic x.
fd det-file
label records are standard
value of file-id is det-id.
01 det-rec.
02 det-rec-begin pic x.
02 det-bno pic 9(6).
02 det-bill.
03 det-type pic x.
03 det-tid pic 99.
03 det-bil-no pic x(5).
02 det-date.
03 det-dd pic 99.
03 det-mm pic 99.
03 det-y1 pic 99.
03 det-y2 pic 99.
02 det-no-items pic 9(4).
02 det-rec-end pic x.
FD ITEM-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS ITEM-ID.
01 I-REC.
02 I-REC-BEGIN PIC X.
02 I-SPACES.
05 I-CODE PIC X(6).
05 REDEFINES I-CODE.
07 I-CODE-1.
08 I-CODE-1-1 PIC X.
08 I-CODE-1-2 PIC XX.
07 I-CODE-2 PIC 9(3).
05 I-NAME PIC X(30).
05 REDEFINES I-NAME.
07 I-NAME10 PIC X(10).
07 I-NAME15 PIC X(20).
05 I-ALT-CODE PIC X(10).
05 IMFR.
07 I-MFRS PIC XXX.
07 I-MFR PIC XXX.
05 I-MFR-ABR PIC X.
05 I-remarks PIC X.
******** to display at the time of billing "verify and bill"
05 I-TYPE PIC X.
******** pharma or nonpharma
05 I-SCH-CODE PIC X.
05 I-LOCN PIC X(4).
05 I-UNIT-DESC PIC X(4).
05 I-BULK-DESC PIC X(4).
05 I-LAST-BILL PIC X(7).
05 I-RES-SUP1 PIC X(6).
05 I-RES-SUP2 PIC X(6).
05 I-RES-SUP3 PIC X(6).
05 I-ORD-PLACED-ID PIC X.
05 I-ABC-LEVEL PIC X.
05 I-LEAD-TIME PIC 9(2).
05 I-MIN-MAX-RATIO PIC 99V99.
05 I-ORD-UNIT PIC 9(4).
05 I-SHELF-LIFE PIC 9(3).
05 I-EXTRA-SPACES PIC X(11).
02 I-ZEROS.
05 I-EXTRA-ZEROS PIC 9(18).
************ BILLING TIME REF & UPDATION
05 I-SCHEME1 PIC 9.
05 I-SCHEME2 PIC 9.
05 I-SCHEME3 PIC 9.
05 I-CASH-DISC-ELI PIC 9.
05 I-SCH-DISC-ELI PIC 9.
05 I-SCH-DISC-PER PIC 99V99.
05 I-TEMP-PUR-QTY PIC 9(3).
05 I-SAL-QTY PIC S9(7).
05 I-SAL-VAL PIC S9(8)V99.
05 I-SAL-TAX-VAL PIC S9(8)V99.
05 I-SAL-DATE.
07 I-DATE1 PIC 9(2).
07 I-SY1 REDEFINES I-DATE1 PIC 99.
07 I-DATE2.
09 I-SY2 PIC 99.
09 I-SMM PIC 99.
09 I-SDD PIC 99.
05 I-TAX-ID PIC 9.
************ PRODUCT ENTRY REF & UPDATION
05 I-PENDING-ORDER PIC 9(6).
05 I-MARK-UP PIC 99V99.
05 I-STK-REC PIC S9(7).
05 I-REC-DATE PIC 9(8).
05 REDEFINES I-REC-DATE.
07 I-RY1 PIC 99.
07 I-RY2 PIC 99.
07 I-RMM PIC 99.
07 I-RDD PIC 99.
05 I-wgt-av-cost pic 9(5)v99.
05 I-PRV-MARGIN PIC 99.
************* STATISTICS
05 I-STK-ADJ PIC S9(4).
05 I-ORD-LEV PIC 9(6).
05 I-STK-MAX PIC 9(6).
05 I-STK-OP PIC S9(6).
05 I-PRV-SAL-QTY PIC s9(7).
05 I-PRV-SAL-VAL PIC s9(8)V99.
05 I-PRV-TAX-SAL PIC s9(8)V99.
05 I-CLAIM-PENDING PIC 9(5).
05 I-CLAIM-DT PIC 9(8).
05 REDEFINES I-CLAIM-DT.
07 I-CY1 PIC 99.
07 I-CY2 PIC 99.
07 I-CMM PIC 99.
07 I-CDD PIC 99.
05 I-TRAN-ID PIC X.
05 I-RPT-GR1 PIC X(3).
05 I-RPT-GR2 PIC X(3).
05 I-MONTH-END-DT PIC 9(8).
05 REDEFINES I-MONTH-END-DT.
07 I-MY1 PIC 99.
07 I-MY2 PIC 99.
07 I-MMM PIC 99.
07 I-MDD PIC 99.
02 I-BLOCK.
03 BLOCK1 OCCURS 3 TIMES.
05 I-BAT PIC X(6).
05 I-STK PIC 9(4).
05 I-EXP PIC 9(4).
05 REDEFINES I-EXP.
07 e-mm PIC 9(2).
07 e-yy PIC 9(2).
05 I-WHO-PR PIC 9(5)V99.
05 I-SAL-PR PIC 9(5)V99.
05 I-MRP PIC 9(5)V99.
05 I-TAX-AMT PIC 9(5)V99.
05 I-COST PIC 9(5)V99.
05 I-GRN-NO PIC X(7).
05 I-SC-B-TAX PIC 9(5)V99.
05 I-SC-A-TAX PIC 9(5)V99.
05 I-sal-UNIT PIC 9(4).
05 I-pur-UNIT PIC 9(4).
05 I-sal-TAX-CODE PIC 99.
05 I-pur-TAX-CODE PIC 99.
05 I-LAST-SUP-CODE PIC X(6).
05 I-PRO-PER PIC 99V99.
05 F PIC 9(12).
02 I-REC-END PIC X.
************ PRESENT LENGTH 605
fd GENERAL-FILE label records are standard
value of file-id is gen-id1.
01 general-rec.
02 general-code.
03 gen-id pic x.
03 gen-code.
05 gen-code1-3.
07 ggcode1 pic x.
07 ggcode23 pic xx.
05 gen-code3-6 pic x(3).
05 gencode3-6 redefines gen-code3-6.
07 gcode1 pic 9.
07 gcode2-3 pic 99.
03 redefines gen-code.
04 gen-code1-2 pic xx.
04 gen-code4-6 pic x(4).
03 redefines gen-code.
04 gen-coden pic 9(6).
02 AREA-TABLE.
03 area-abb PIC X(4).
03 report-id2 PIC X(4).
03 report-id3 PIC X(4).
02 REDEFINES AREA-TABLE.
03 P-AREA PIC X(4) OCCURS 3 TIMES.
02 party-name.
03 descrip-6 pic x(10).
03 descrip-24 pic x(20).
02 sman-code pic x(3).
02 par-spaces.
03 gen-spaces.
05 contact-person1 pic x(25).
05 contact-person2 pic x(25).
05 party-address pic x(25) occurs 3 times.
05 pincode.
07 pin1 pic xxx.
07 pin2 pic xxx.
05 p-phone pic x(25).
05 dl-no-1-2 pic x(30).
05 tngst-no pic x(16).
05 cst-no pic x(10).
05 bank-name pic x(6).
05 lorry pic x(6).
05 last-bill pic x(7).
05 transaction-id pic x.
05 allow-credit pic x.
05 idisc-per pic 99v99.
03 party-zeros.
05 month-op pic s9(8)v99 occurs 4 times.
05 month-cl pic s9(8)v99 occurs 4 times.
05 year-pur pic s9(8)v99 occurs 4 times.
05 month-pur pic s9(8)v99 occurs 4 times.
05 cheq-in-hand pic s9(8)v99.
05 par-zeros.
06 credit-limit pic 9(8)v99.
06 fa-bank-id pic 9.
06 PARTY-COMPANY-CODE PIC X(6).
06 par-month-count pic 9(3).
06 par-year-count PIC 9(5).
06 par-rest pic x(5).
05 credit-days pic 999.
05 ACCOUNTING-CODE PIC X(6).
05 DOCTOR-CODE PIC X(6).
05 PENDING-BILLS PIC X.
05 show-outstanding PIC X.
05 F-FILLER PIC X(03).
03 comp-zeros redefines party-zeros.
04 c-bal.
05 c-credit-days pic 999.
05 c-credit-limit pic 9(8)v99.
05 c-disc-per pic 99v99.
04 comp-year-stat.
05 c-ysales-tax pic 9(8)v99.
05 c-ysales pic 9(8)v99.
05 c-ypur-tax pic 9(8)v99.
05 c-ypur pic 9(8)v99.
04 comp-mon-stat.
05 c-msales-tax pic 9(8)v99.
05 c-msales pic 9(8)v99.
05 c-mpur-tax pic 9(8)v99.
05 c-mpur pic 9(8)v99.
04 comp-day-stat.
05 c-dsales-tax pic S9(8)v99.
05 c-dsales pic S9(8)v99.
05 c-dpur-tax pic S9(8)v99.
05 c-dpur pic S9(8)v99.
04 c-month-op pic s9(8)v99.
04 c-month-cl pic s9(8)v99.
04 c-unadj-db pic 9(6)v99.
04 AREA-ID PIC 9.
04 f-filler pic x(05).
03 sman-zeros redefines party-zeros.
04 s-sman-year-op pic s9(8)v99 occurs 4 times.
04 s-month-op pic s9(8)v99 occurs 4 times.
04 s-month-cl pic s9(8)v99 occurs 4 times.
04 s-comm pic 99v99 occurs 4 times.
04 f-filler pic x(84).
fd no-file
label records are standard
value of file-id is "DPDATA\DLNO.DAT".
01 NO-REC.
02 NO-NUM.
03 NUMBERS OCCURS 20 TIMES.
05 NUM-SLNO PIC 9(5) OCCURS 20 TIMES.
03 NUM-TYPES.
05 NUM-TYPE PIC X OCCURS 20 TIMES.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -