000100 Identification Division. 000200 Program-Id. OVN152 000300 Environment Division. 000400 Input-Output Section. 000500 File-Control. 000600 Select ARTFIL Assign to ARTDD 000700 Organization is Sequential 000800 Access Is Sequential 000900 File Status is Artfil-Status 001000 . 001100 Select LISTFIL Assign to LISTDD 001200 Organization is Sequential 001300 Access Is Sequential 001400 . 001500 Data Division. 001600 File Section. 001700 FD ARTFIL Recording Mode f 001800 Record Contains 80. 001900 01 Artfil-Post. 002000 05 Artfil-Nr Pic X(05). 002100 05 Pic X(01). 002200 05 Artfil-Namn Pic X(25). 002300 05 Pic X(01). 002400 05 Artfil-Typ Pic X(01). 002500 05 Pic X(01). 002600 05 Artfil-Lp1 Pic X(02). 002700 05 Artfil-Kv1 Pic 9(06). 002800 05 Artfil-Lp2 Pic X(02). 002900 05 Artfil-Kv2 Pic 9(06). 003000 05 Artfil-Lp3 Pic X(02). 003100 05 Artfil-Kv3 Pic 9(06). 003200 05 Pic X(22). 003300 003400 FD LISTFIL Recording Mode f 003500 Record Contains 120. 003600 01 List-Rad Pic X(120). 003700 003800 003900 Working-Storage Section. 004000 01 Raknare-och-Annat. 004100 05 Radnummer Pic 99 Value 0. 004200 88 Radstart Value 0. 004300 88 Radmax Value 25. 004400 05 Sidnr Pic 99 Value 0. 004500 88 ListStart Value 0. 004600 05 Gammal-Grupp Pic 9 Value 0. 004700 05 Ny-Grupp Pic 9. 004800 004900 01 Summor. 005000 05 Artfil-Radsumma Pic 9(06) Value 0. 005100 05 Artfil-Kv1-Summa Pic 9(06) Value 0. 005200 05 Artfil-Kv2-Summa Pic 9(06) Value 0. 005300 05 Artfil-Kv3-Summa Pic 9(06) Value 0. 005400 05 Artfil-Kv1-Total Pic 9(06) Value 0. 005500 05 Artfil-Kv2-Total Pic 9(06) Value 0. 005600 05 Artfil-Kv3-Total Pic 9(06) Value 0. 005700 005800 01 Artfil-Meddelande. 005900 05 Pic X(35) Value 'ARTFIL gick ej att öppna, status: '. 006000 05 Artfil-Status Pic X(02) Value Space. 006100 88 Artfil-Openfel Value '01' thru '99'. 006200 006300 01 Villkor Pic 9 Value 0. 006400 88 Klar Value 1. 006500 006600 01 List-Separator. 006700 05 Pic X(120) Value All '_'. 006800 006900 01 List-Blankrad. 007000 05 Pic X(120) Value All Space. 007100 007200 01 List-Rubrik. 007300 05 Pic X(65) Value 'Utskrift av Artikelregister'. 007400 05 Pic X(07) Value 'Sidnr:'. 007500 05 List-Sidnr Pic Z(02). 007600 007700 01 List-Summa. 007800 05 Pic X(38) Value 'Totalsummor'. 007900 05 List-Kv1-Summa Pic Z(06). 008000 05 Pic X(05) Value Space. 008100 05 List-Kv2-Summa Pic Z(06). 008200 05 Pic X(05) Value Space. 008300 05 List-Kv3-Summa Pic Z(06). 008400 008500 01 List-Slutrad. 008600 05 Pic X(120) Value 'Slut på utskrift'. 008700 008800 01 List-ArtikelRubrik. 008900 05 Pic X(06) Value 'Artnr'. 009000 05 Pic X(26) Value 'Artnamn'. 009100 05 Pic X(02) Value Space. 009200 05 Pic X(04) Value 'Lp1'. 009300 05 Pic X(07) Value 'Antal'. 009400 05 Pic X(04) Value 'Lp2'. 009500 05 Pic X(07) Value 'Antal'. 009600 05 Pic X(04) Value 'Lp3'. 009700 05 Pic X(07) Value 'Antal'. 009800 05 Pic X(05) Value 'Summa'. 009900 010000 01 List-ArtikelRad. 010100 05 Artfil-Nr Pic X(05). 010200 05 Pic X(01) Value Space. 010300 05 Artfil-Namn Pic X(25). 010400 05 Pic X(01) Value Space. 010500 05 Artfil-Typ Pic X(01). 010600 05 Pic X(01) Value Space. 010700 05 Artfil-Lp1 Pic X(02). 010800 05 Pic X(02) Value Space. 010900 05 Artfil-Kv1 Pic Z(06). 011000 05 Pic X(01) Value Space. 011100 05 Artfil-Lp2 Pic X(02). 011200 05 Pic X(02) Value Space. 011300 05 Artfil-Kv2 Pic Z(06). 011400 05 Pic X(01) Value Space. 011500 05 Artfil-Lp3 Pic X(02). 011600 05 Pic X(02) Value Space. 011700 05 Artfil-Kv3 Pic Z(06). 011800 05 Pic X(01) Value Space. 011900 05 Artfil-Summa Pic Z(06). 012000 012100 Procedure Division. 012200 Perform Initiera 012300 Perform Until Klar 012400 Read ARTFIL 012500 At End 012600 Set KLAR to True 012700 Not At End 012800 Perform Skrivut 012900 End-Read 013000 End-Perform 013100 Perform Skriv-List-Summa 013200 Perform Skriv-List-Slutrad 013300 Perform Avsluta 013400 GoBack 013500 . 013600 Initiera. 013700 Open Input ARTFIL 013800 If Artfil-Openfel 013900 Move 99 to Return-Code 014000 Display Artfil-Meddelande 014100 Stop Run 014200 Else 014300 Display 'OPEN av ARTFIL ok...' 014400 Open Output LISTFIL 014500 Display 'OPEN av LISTFIL ok...' 014600 End-If 014700 . 014800 Skrivut. 014900 Move Artfil-Nr in Artfil-Post(1:1) to Ny-Grupp 015000 Perform Kontrollera-Brytning 015100 Move Corr Artfil-Post 015200 to List-ArtikelRad 015300 Perform Summeringar 015400 015500 Write List-Rad 015600 from List-ArtikelRad 015700 Add 1 to Radnummer 015800 Move Ny-Grupp to Gammal-Grupp 015900 . 016000 Kontrollera-Brytning. 016100 Evaluate True 016200 When Liststart 016300 Perform Skriv-List-Rubrik 016400 Perform Skriv-Artikel-Rubrik 016500 When Gammal-Grupp Not Equal Ny-Grupp 016600 Perform Skriv-List-Summa 016700 Perform Skriv-Artikel-Rubrik 016800 When Radmax 016900 Perform Skriv-List-Rubrik 017000 Perform Skriv-Artikel-Rubrik 017100 Set Radstart to True 017200 End-Evaluate 017300 . 017400 Summeringar. 017500 Add Artfil-Kv1 in Artfil-Post to 017600 Artfil-Kv1-Summa Artfil-RadSumma 017700 Artfil-Kv1-Total 017800 Add Artfil-Kv2 in Artfil-Post to 017900 Artfil-Kv2-Summa Artfil-RadSumma 018000 Artfil-Kv2-Total 018100 Add Artfil-Kv3 in Artfil-Post to 018200 Artfil-Kv3-Summa Artfil-RadSumma 018300 Artfil-Kv3-Total 018400 Move Artfil-Radsumma to Artfil-Summa 018500 Move Zero to Artfil-Radsumma 018600 . 018700 Skriv-Artikel-Rubrik. 018800 Write List-Rad 018900 from List-Blankrad 019000 Write List-Rad 019100 from List-ArtikelRubrik 019200 Write List-Rad 019300 from List-Separator 019400 . 019500 Skriv-List-Rubrik. 019600 Add 1 to Sidnr 019700 Move Sidnr to List-Sidnr 019800 019900 Write List-Rad 020000 from List-Rubrik 020100 . 020200 Skriv-List-Slutrad. 020300 Write List-Rad 020400 from List-Separator 020500 Write List-Rad 020600 from List-Slutrad 020700 . 020800 Skriv-List-Summa. 020900 Move Artfil-Kv1-Summa to List-Kv1-Summa 021000 Move Artfil-Kv2-Summa to List-Kv2-Summa 021100 Move Artfil-Kv3-Summa to List-Kv3-Summa 021200 Write List-Rad 021300 from List-Separator 021400 Write List-Rad 021500 from List-Summa 021600 Move 0 to Artfil-Kv1-Summa 021700 Artfil-Kv2-Summa 021800 Artfil-Kv3-Summa 021900 If Klar 022000 Move Artfil-Kv1-Total to List-Kv1-Summa 022100 Move Artfil-Kv2-Total to List-Kv2-Summa 022200 Move Artfil-Kv3-Total to List-Kv3-Summa 022300 Write List-Rad 022400 from List-Separator 022500 Write List-Rad 022600 from List-Summa 022700 End-If 022800 . 022900 Avsluta. 023000 Close ARTFIL 023100 Display 'CLOSE av ARTFIL ok...' 023200 Close ARTFIL 023300 Display 'CLOSE av LISTFIL ok...' 023400 Display 'Programmet avslutar...' 023500 .