Sei sulla pagina 1di 5

0001.00 IDENTIFICATION DIVISION.

0002.00 * PROGRAM ACTUALIZARE ABONATI CU SUBAFIS

0003.00 PROGRAM-ID. PACTABS.

0004.00 ENVIRONMENT DIVISION.

0005.00 CONFIGURATION SECTION.

0006.00 INPUT-OUTPUT SECTION.

0007.00 FILE-CONTROL.

0008.00 SELECT FABONT

0009.00 ASSIGN TO DATABASE-FABONT

0010.00 ORGANIZATION INDEXED

0011.00 ACCESS DYNAMIC

0012.00 RECORD KEY EXTERNALLY-DESCRIBED-KEY

0013.00 FILE STATUS FSA.

0014.00 SELECT EABONA

0015.00 ASSIGN TO WORKSTATION-EABONA-SI

0016.00 ORGANIZATION TRANSACTION

0017.00 ACCESS DYNAMIC

0018.00 RELATIVE KEY NR

0019.00 FILE STATUS FSE.

0020.00 DATA DIVISION.

0021.00 FILE SECTION.

0022.00 FD FABONT LABEL RECORD STANDARD.

0023.00 01 ART-A.

0024.00 COPY DDS-ALL-FORMATS OF FABONT.

0025.00 FD EABONA LABEL RECORD OMITTED.

0026.00 01 ART-E.

0027.00 COPY DDS-ALL-FORMATS OF EABONA.

0028.00 WORKING-STORAGE SECTION.

0029.00 77 FSA PIC XX.

0030.00 77 FSE PIC XX.

0031.00 77 SF PIC 9.
0032.00 77 NR PIC 9(4).

0033.00 77 INDON PIC 1 VALUE B"1".

0034.00 77 INDOF PIC 1 VALUE B"0".

0035.00 77 SF03 PIC 9.

0036.00 01 ART-E-I.

0037.00 COPY DDS-ALL-FORMATS-INDIC OF EABONA.

0038.00 PROCEDURE DIVISION.

0039.00 DECLARATIVES.

0040.00 SECTA SECTION.

0041.00 USE AFTER STANDARD EXCEPTION PROCEDURE ON FABONT.

0042.00 PAR1.

0043.00 IF FSA > "00"

0044.00 DISPLAY "FILE STATUS FABONT = " FSA

0045.00 STOP RUN

0046.00 END-IF.

0047.00 SECTE SECTION.

0048.00 USE AFTER STANDARD EXCEPTION PROCEDURE ON EABONA.

0049.00 PAR1.

0050.00 IF FSE > "00"

0051.00 DISPLAY "FILE STATUS EABONA = " FSE

0052.00 STOP RUN

0053.00 END-IF.

0054.00 END DECLARATIVES.

0055.00 PRIMA SECTION.

0056.00 PARAG1.

0057.00 OPEN I-O FABONT EABONA

0058.00 MOVE 1 TO SF03

0059.00 PERFORM PREL THRU PREL-EX UNTIL SF03 = 0

0060.00 CLOSE FABONT EABONA

0061.00 STOP RUN.

0062.00 PREL.
0063.00 * ====== STERGERE SUBFISIER =====

0064.00 MOVE INDON TO IN62 OF RSFLAC-O-INDIC

0065.00 WRITE SUBFILE ART-E FORMAT IS "RSFLAC"

0066.00 INDIC ARE RSFLAC-O-INDIC

0067.00 * ====== CITIRE PRIMA INREGISTRARE DIN FABONT =====

0068.00 MOVE 1 TO SF

0069.00 MOVE 0 TO NR

0070.00 READ FABONT FIRST AT END MOVE 0 TO SF

0071.00 END-READ

0072.00 * ====== SE INCARCA SUBFISIERUL PANA LA SFARSITUL LUI FABONT ==

0073.00 PERFORM INCARC UNTIL SF = 0

0074.00 IF NR = 0

0075.00 DISPLAY "FISIER FABONT VID"

0076.00 GO TO PREL-EX

0077.00 END-IF

0078.00 * ====== AFISARE SUBFISIER INCARCAT ======

0079.00 MOVE INDOF TO IN62 OF RSFLAC-O-INDIC

0080.00 WRITE SUBFILE ART-E FORMAT IS "RSFLAC"

0081.00 INDIC ARE RSFLAC-O-INDIC

0082.00 * ===== CITESTE ECRANUL =====

0083.00 PERFORM CIT-SB

0084.00 * ===== ACTUALIZARE FABONT =====

0085.00 PERFORM ACTUALIZARE.

0086.00 PREL-EX.

0087.00 EXIT.

0088.00 * ===== INCARCARE FUBFISIER =====

0089.00 * AVANSAM CHEIA RELATIVA NR

0090.00 * MUTAM CAMPURILE DIN FABONT IN RSFLA

0091.00 * SCRIEM RSFLA

0092.00 * CITIM URMATORUL ARTICOL DIN FABONT

0093.00 INCARC.
0094.00 ADD 1 TO NR

0095.00 INITIALIZE RSFLA

0096.00 MOVE NRTEL OF ART-A TO NRTEL OF RSFLA

0097.00 MOVE RETEA OF ART-A TO RETEA OF RSFLA

0098.00 MOVE CODAB OF ART-A TO CODAB OF RSFLA

0099.00 MOVE NUME OF ART-A TO NUME OF RSFLA

0100.00 MOVE ADRESA OF ART-A TO ADRESA OF RSFLA

0101.00 WRITE SUBFILE ART-E FORMAT IS "RSFLA"

0102.00 READ FABONT NEXT AT END MOVE 0 TO SF

0103.00 END-READ.

0104.00 * ===== CITIRE INREG DE CONTROL =====

0105.00 * TESTARE F3 SAU F12

0106.00 CIT-SB.

0107.00 READ SUBFILE EABONA FORMAT IS "RSFLAC"

0108.00 INDIC ARE RSFLAC-I-INDIC

0109.00 IF IN03 OF RSFLAC-I-INDIC = INDON OR

0110.00 IN12 OF RSFLAC-I-INDIC = INDON

0111.00 MOVE 0 TO SF03

0112.00 GO TO PREL-EX

0113.00 END-IF.

0114.00 * ===== ACTUALIZARE FABONT =====

0115.00 * SE CITESTE IN SUBFISIEL PRIMUL ARTICOL CU MODIFICARI

0116.00 * SE PRELUCREAZA PANA SE TERMINA TOATE MODIFICARILE

0117.00 ACTUALIZARE.

0118.00 MOVE 1 TO SF

0119.00 MOVE 0 TO NR

0120.00 PERFORM CIT-SUB

0121.00 PERFORM PREL-ACT UNTIL SF = 0.

0122.00 * ===== CITIRE SUBFISIER =====

0123.00 * ARTICOL CU MODIFICARI

0124.00 CIT-SUB.
0125.00 ADD 1 TO NR

0126.00 READ SUBFILE EABONA NEXT MODIFIED FORMAT IS "RSFLA"

0127.00 AT END MOVE 0 TO SF

0128.00 END-READ.

0129.00 * ===== PRELUCRARE ACTUALIZARI =====

0130.00 * CU CHEIA NRTEL DE PE ECRAN SE CITESTE FABONT

0131.00 * SE MUTA CAMPURILE DE PE ECRAN IN FABONT

0132.00 * SE RESCRIE FABONT

0133.00 * SE CITESTE URMATORUL SUBFISIER CU MODIFICARI

0134.00 PREL-ACT.

0135.00 MOVE NRTEL OF RSFLA TO NRTEL OF ART-A

0136.00 READ FABONT INVALID KEY

0137.00 DISPLAY "NR TELEFON LIPSA " NRTEL OF ART-A

0138.00 MOVE 0 TO SF03

0139.00 GO TO PREL-EX

0140.00 END-READ

0141.00 MOVE NRTEL OF RSFLA TO NRTEL OF ART-A

0142.00 MOVE RETEA OF RSFLA TO RETEA OF ART-A

0143.00 MOVE CODAB OF RSFLA TO CODAB OF ART-A

0144.00 MOVE NUME OF RSFLA TO NUME OF ART-A

0145.00 MOVE ADRESA OF RSFLA TO ADRESA OF ART-A

0146.00 REWRITE ART-A INVALID KEY

0147.00 DISPLAY "EROARE LA RESCRIERE" NRTEL OF ART-A

0148.00 MOVE 0 TO SF03

0149.00 GO TO PREL-EX

0150.00 END-REWRITE

0151.00 PERFORM CIT-SUB.

Potrebbero piacerti anche