⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 billone.cbl

📁 This is a Bill One Program to generate the bills and the source code is from cobol.
💻 CBL
📖 第 1 页 / 共 3 页
字号:
      $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 + -