RAPGEN

 

Quick Reference

 

 

English version 01/10-1992 (20.20)


 


   This quick reference will shortly descripe all functions in RAPGEN.

 

   Some of these functions are optional used to interface our other products:

 

        DATAMASTER                   ‑ File creation/maintenan­ce

        IQ                           ‑ File inquery program

        JOBQUEUE                     ‑ Danish jobqueue for STAR

        ACCOUNTING reports           ‑ Complex accounting reports

 

   Other functions will normally be for internal use only but will be included here as for completeness. Functions marked with NO‑pre as manual reference are not released but may be of interest for the reader. If a function is marked with version no. (18.17) you must have at least this RAPGEN version to use it. The version no. can be found in statement 1 REM of DMS.RAP.

 

   The purpose of this quick reference is not to descripe all details rather to give a complete crossreference to the user manual and installa­tion manual.

 

Manuals: 1‑10,11,12,13,14,15,16       ‑ English user manual

         101‑104                      ‑ English release info, user/install.  

         i1‑12,13,14                  ‑ English installation manual

         Iq                           ‑ English IQ manual  

         Acc                          ‑ Danish accounting reports manual

 

0. Main selector.

    1   Define new report

    2   Define selections

    3   Define sorting and totalling

    4   Define calculations

    5   Delete report

    6   Define new letter

    7   Amendments to a report/letter

    8   Print of definitions

    9   Start and generate report

   10   Copy report

   11   Documentation

   12   Edit selections

   13   Edit sorting and totalling

   14   Edit calculations

   15   Standard program parameters

   16

   17

   22

   23

   24

   cr.

   #

   F/TOF

   HEAD

   K/KEY/KEYS

   R

   STOP

   SYSTEM

   Q

   PC

   PCCLEAN

   PCSYS

   14,7 or 14.7

   14,  or 14.

   DRN

   TAM

   REPS

   S

 

1. Define new report

   a. Report number

      7

      cr.

 

   b. File shortname:

      DK

      DK,W

      DK,2

      DK,A

   b1.Password

      xxxx

 

   c. Report name (for selector)

      xxxx

      @

 

   d. Lines on form (CR=72)

      cr.

      66

      72,5

 

   e. Report heading

      xxxx

      cr.

      N

 

   f. Print zero fields

      Y

      N

 

   g. Printer (CR=$LPT, 1=..., 2=...)

 

      cr

      1/2/3/4/5

      $RPL7

      001080072;$RPL2

 

 

   h. User name

      cr

      xxxx

      ExxxxE

 

   i. TAMOS selector coordinates

 

 

   j. Line no.x, Fieldno.

      15

      H15

      LE#15

      HLE#15

      le#15

      N15

      N

      D

      P50

      +10

      ‑10

      Txxxx

      @L

      H@15

      END

      cr.

      LINE(ZEILE/LINIE)

      HLP

         a. File shortname or cr:

            LE

            LE07

            space

            00

      Free field - name.

         xxxx

 

      Free field - format.

         4,

         ‑4,

         9,2

         ,9,2

         ,6,

         ,8,

         10

 

 

 

2  Define selections

   a. Report number.

      7

 

   b. Fieldno.

      15

      #15+LE#3

      #5(2,3)

      QUICK

 

      VALID(#21,"1,3,17")

      HLP

 

   c. Minimum value

      7

      cr.

      =7

      >7, <7, >=7 ,<=7 , <>7

      #5+LE#3

      "xxx"

      xxx

      15

      #D1

 

   d. Maximum value

 

3  Define sorting and totalling

   a. Report number.

      7

 

   b. Sorting (Y/N)

      N

      Y

      T

      D

 

   c. Totals in an extra initial pass

      N

      Y

 

 

   d. Total level: Fieldno. (subtotals)

      15

      HLP

      END

 

   e. Sort‑key:    Fieldno.

      15

      LE#5

      HLP

      END

      NEW(NEU/NY)

 

   f. From char no.

      cr.

      2

 

   g. To char no.

      cr.

      4

 

   h. Total level (Y/N)

      N

      Y

 

   i. Total name

      xxxx

      cr.

      # xxxx

 

   j. Form feed (Y/N)

      N

      Y

 

   k. Calculate totals before print

      N

      Y

 

   l. Fields to be totalled: Fieldno.

      15

      LE#5

      ‑15

              

      2%

      3%

      4%

      HLP

      END

 

   m. Split totals into groups

      N

      Y

      2

 

   n. Group fieldno.

      15

      LE#5

      #15(3,4)

      U15

      HLP

 

 

 

   o. Number of codes in the group

      100

 

 

 

   p. Group name.

      xxxx

 

4  Define calculations

   a. Report number.

      7

 

   b. Calculation:

      HLP

      END

 

   c. Line OK (Y/N/I)

      Y

      cr.

      N

      I

      10

      END

 

   Fields.

      #15

      #15(2,3)

      LE#15

      le#15

      #DD

      #PD

      #D1

      #DA1

      #PP

      #SC

      #OK

      #LEVEL

      #GROUP(#GRUPPE/#GRUPPE)

 

   Numeric calculations.

      #20=100

      #20=#3+#4

      #20=#3‑#4

      #20=#3*#4

      #20=#3/#4

      #20=#3­#4

      #20=#3%#4

      #20=(#3+#4)*#5

      LET (10‑20=0)

 

   Alphanumeric calculations (text).

      #10="AAA",S9$

      #10=#20 USING "## "

      #20=#10

 

      LET (10‑20=0)

      @X=@L

 

 

 

 

 

   Conditional calculations.

      #20=0

      IF #6=2 LET #20=1

      IF #6 <  >  <=  >=  <>

      IF #6>1 IF #6<7 ...

      IF #6=1 LET #20=1

      IF #6=7 LET #20=1

      IF VALID(#6,"1,7")...

      IF #10="AA" ...

      IF #6 LET #20=1

      IF NOT #6 LET #20=1

      IF #6=1 READ (LE)

 

   Remarks.

      REM This is a text

      #15=100 /* good line

 

 

 

   Rounding functions.

      #20= FNR (#15)

      #20= FNH (#15)

      #20= INT (#15)

      RUND (5)

      RUND (‑25)

 

   Miscellaneous arithmetic functions.

      #20= ABS (#15)

      #20= FRA (#15)

      #20= SGN (#15)

      #20= SQR (#15)

      #20= NOT (#15)

      #20= LEN (#10)

 

   Date functions.

 

 

      #20= FND(#15)

 

      #20= FNY(#15)

      #20= FNO(#15)

      #20= FNA(#15)‑FNA(#14)

      #20= FNB(FNA(#15)+10)

      #20= FNC(FNA(#15)+10)

      #20= FNU(#15)

      #20= FNV(#15)

      #20= WEEK(#15)

      #15= WEEK(#20)

      #20= WORKD(#14,#15)

      #20= FNE(#15)‑FNE(#PD)

      #20= FNF(#15)‑FNF(#PD)

 

   LET command.

      #20=#21+10

      IF #20=1 LET #21=100

      LET (20,47,30‑32=0)

      LET (#20‑25=1)

      LET (#20,25=#30,35)

      LET (#20‑25=LE#1‑10)

      LET (LE#1‑10=le#1‑10)

      LET (LE#1,3,VA#7=#1,KU#1,3)

      LET (20‑30+=1)

      LET (20‑30=40‑45,+46‑50)

      LET (#6-9=0)     ON #5

      LET (#6-9=#40)  ON #5

      LET (#6-9+=1)   ON #5

      LET (#6-9+=#40) ON #5

      LET (#40=#6-9)  ON #5

      LET (#40=#5-9)  ON #5-1

      LET (#6-9=#40)  ON #5<=X

      LET (#6-9=#40)  ON #5=7,17,5

      LET (#6-9=#40)  ON #5=A,B,C

      LET (#6-9=#1,2) ON #5

 

  Flow control.

      FIRST (ZUERST/FØRST)

      LAST  (ZULETZT/SIDST)

      AFTER (NACH/EFTER)

      PRINT

 

 

      NORMAL

 

      WHEN(WANN/NÅR)

 

 

      IF ... GOTO A

      A: #20=1

      GOSUB A

      RETURN

      ACCOUNT(REGNSKAB)

      TRANS

      CALCA

      CALCB

      CALCC

 

   Reading files.

      READ (LE)

      READ (LE.02) 1

      READ (LE02) 1

      READ (le)

      READH(LE)

 

      READR(LE),#15

      READX(LE),#15

      START(LE)

      END  (LE) 1,".",P

      NEXT (LE)

      REPEAT(LE)

 

   File connections.

      READ (LE)

      READ (le)

      READ (LE),#1

      READ (LE),#1,#2

      READ (LE),T2$

      READ (LE) 1

      READ (LE) 1,2

      READ (LE) 1,2,P

      READ (LE) 1P,2

      READ (LE) 1(3,4),2

      READ (LE) "00",1

      READ (LE) 2,NP

      READ (LE) RP

      READ (LE) 2D

      READ (LE) 2Z

      READ (LE) 1,S

 

   File updating.

      UPDATE (1)

      UPDATE (#D1)

      NOPAS  ()

      REWRITE(LE)

      INSERT (LE)

      DELETE (LE)

      WRITE  (LE)

 

   Miscellaneous file functions.

      DIM (LE)

      OPEN  ("DK","3/OLD")

      MERGE (DK,"3/OLD")

      #10= FILENAME ("DK")

 

   File construction.

      LET (AA=#1,7,10-20)

      LET (07/AA=#1,7,10-20),2000

      LET (AA=#1,7,10-20),-2000

      LET (AA=#1-3,KU#5-9,GR#5)

      LET (AA=#1K,2-3,4D,6)

      LET (AA=#1,7,10-20;1,2;2,1)

      LET (AA=#1,7,10-20;1,2,P)

      LET (AA=#1,7,10-20;1;2,NP)

      LET (AA=)

 

   Start and execution control.

      CHAIN (3)

      INDEX (2)

      INDEX (1,"111","222")

      KEYS  ()

      KEYS  (1)

      KEYS  (0,"AAA")

      #20=  KEYS()

      LTOT  (1)

      MTOT  (1)

      MESS  ("I AM READY",1)

      NODATA()

      PRIO  (1)

      SORTWORK (5)

      SORTWORK (‑5)

 

   Miscellaneous subfunctions.

      #10= CCODE (#6,"LE06")

      #10= CHECK (#11)

      #10= CHEX  (#11,"01020304")

      #10= EDIT (1234,"&‑&X&&")

      #20= FIND ("XX",#1,#2)

      #10= LOWER (#11)

      #10= UPPER (#11)

      #10= SMAA  (#11)

      #10= NAME  (#11)

      #20= NUMBER(#11)

      #20= NUMS  (#11)

      #10= PACK  (#11)

      #10= PHONE (#11)

      #10= RATE  (#20,#11,#21,#22)

      #10= SOGE  (#11,9)

      #10= SPOFF (#11)

      #10= UNPACK(#11)

      #20= VALCH (#10,"AA,BB")

      #20= VALID (#21,"1,3,5‑10")

      #20= VALIX (#21,"1,3,7",99)

      ZERO (30,40)

 

   PRINT command and control.

      PRINT (L=5‑7)

      PRINT (L=5,+1,7)

      PRINT (H=1,3)

      PRINT (H=:10,1‑4)

      PRINT (H= )

      PRINT (N=3,:1,1‑4)

      PRINT (T=10)

      PRINT (D=+2,7)

      PRINT

      PRINT (5‑7)

      PRINTER (2,"$LPT")

      PRINTER (2)

      PRINTER (2,"1‑3","5","5")

      PRINT (>1,5‑7,>2,8‑9)

      PRINT (L=>1,5‑7,>2,8‑9)

      COPIES (1)

      COPIES (1,"S",5)

      POUT ("@Q;")

 

   Export/import functions.

      EXPORT ("1‑10","A")

      EXPORT ("1-10","7/A",80)

      EXPORT ("1-10","7/A",-1)

      EXPORT ("1-10","A",,00000)

      EXPORT ("1-10","A",,11111)

      EXPORT ("1-10","A",,11122,1)

      EXPORT ("1-10","A",,11123,2)

      EXPORT ("1-10","A",,11124)

      EXPORT ("1-5","A",,,,"++;, ,")

      PCOUT  ("1‑10","C:/FILE")

      PXOUT  ("1‑10","C:/FILE")

      PLCOUT ("1‑10","A")

      TAPEOUT("1‑10","A")

      EXPOX  ("1‑10","A")

      PZOUT  ("C:/FILE")

      IMPORT ("1‑10","0/A")

      IMPORT ("1-2,+3,&7,=8,"A")

      IMPORT ("1-10","A",80,111)

      IMPOCONT ("1-10")

      IMPOTHIS ("1-10")

      IMPONEXT ("1-10")

      PCIN   ("1‑10","C:/FILE")

      TEST   ("1‑10","$LPT")

 

   Program size reduction functions.

      SIZE ()

      SIZE (32)

      SIZE (32,1)

      SIZE (32,2)

      NOPRT()

      NOIX ()

 

 

 

 

   Program optimize functions.

      SPEED ()

      SPEED (-PRT,NOIX)

      (READ,XREAD)

      (VARUSE,MIN,DIM,GLOBAL)

      (16,SAVED)

      (GOSUB,FN,TOTAL,NOHARD,

       RELATIVE,PROGUSE)

      (PRT,CONTROL)

      (NOTEXT,NOPRT,NOIX)

 

   IQ-subfunctions.

      MESS("Here I am.")

      INPUT("Function:","Text")

      LINK(10)

 

   Basic variables.

      R4

      P2

      P8

      X

      S9$

      T2$

      T9$

      T3

      R$

      R1$

      R2$

      Y0

      Y1(1)

      Y1(4)

      Y1(6)

 

   Exact line numbers.

      ¬500 DIM W$(100)

 

   LOAD function

      LOAD CHECK

      LOAD CHEX

      LOAD ARB

      LOAD NAME

      LOAD PHONE

 

6  Define new letter

7  Amendments to a report/letter

   a. Report number.

      17

 

   b. LINE,POS:

      15

      15,40

      HLP

         a. File shortname or cr:

            LE

            LE07

            space

            00

      POS

      PRINT

      F

 

 

      PRINTER

          a. PRINTER NO.

 

          b. START POS.

          c. END POSITION

          d. LINES ON FORM

      MASK/RASTER/RASTER

      MODE

          a. MODE:

      IL/LI/INS

      DL/LD/DEL

      LINE/ZEILE/LINIE

          a. PRINT ZERO FIELDS

 

          b. NEW PAGE LINES

          c. HEADING LINES

          d. PRINT LINES

          e. TOTAL LINES

          f. DETAIL LINES

      FORMAT

      PUT

      GET

      END

      SPR

      FILE

      NAME/NAME/NAVN

      USER/USER/BRUGER

 

   c. Line itself

      text #10 ...

      #DD

      #PD

      #PP

      #KA

      #SN

      #SY

      #TI

      #NO

      #SC

      #2   ¬ text

      text ¬¬#24

      #2   ¬ texta ¬> textb

      @Ltext@l

 

   d. Lamp keys (rast‑tasten, LKY)

      R1

 

8  Print of definitions

 

   a. Report number.

      7

      1‑5,15,7

 

   b. Print field overview.

      N

      Y

      S

      D

      N,$RPL0

      N,

      N;001177072,$RPL0

 

 

9  Start and generate report

   a. Report number.

      7

      5-10,15

      -1-99

      -5-15,17!

 

   b. Password     

 

 

   c. Username

 

   d. Todays date

 

   e. As of date

 

   f. Start from

      xxxx

      cr.

      2:xxxx

      SORT

      (AAA)

      (1101,1501‑33

 

 

   f1. Start from lineno.

 

   g. Stop at

      xxxx

      cr.

      01,1702

 

   g1. Stop at lineno.

 

   h. DATA 1‑7

         Naming:

 

     

 

   i. Lowest total level to be printed

      1

      9

     

 

   j. Filenumber

 

 

   k. Start (Y/N/S/P/Q)

      S

      P

      Y

      1‑99

      N

      Q

      Q75

      Q,HOLD,P=10,J=5

 

   l. Testprint (Y/N)

      N

      Y

      P

      0‑9

      $RPL0

      Pxxxx

      $PC / $LOTUS

 

Functions during screen run:

   a. PRESS CR.FOR NEW PAGE:

      END

      PRT

      4711

 

   b. Lamp keys (rast‑tasten, LKY)

      R1

      R2

 

      R3

 

10  Copy report

   a. Report number.

      7

      XX,7

 

   b. To report number

      8

      AA,8

      XX,8

 

      108

      10,8

 

11 Documentation

   ALL

   INP

12 Edit selections

13 Edit sorting and totalling

14 Edit calculations

16 Keys start/stop definitions

Commands:

   10

   0

   END

   SPR

   INS

      a.No of lines to insert before..

   DEL

      a.No of lines to delete from..

   PRT

   GET

      a.Get from report no.

        7

        0/DMT10xx

      b.From line no.

      c.To line no.

   HLP

   MOD

 

16 Keys start/stop definitions

   4711-4715,1101,1705

   1101,2:AAAA

   47/111101

 

 

Create the layout for a list

Which records should be printed

Sorting order, subtotals, grouptotals

Workfields, file reading, functions 

Remove complete definition

Create a layout,one record/page

Amend layout,fields/lines to print

Descripe one or more reports

Go, generate program

Copy to other no/system/extern

Free text for your convenience

As 2, full screen editor

As 3, full screen editor

As 4, full screen editor

OPTION,IQ only,amend SAVEd program parameters

Edit KEYS range definition (multiple START/STOP)

OPTION, Accounting definition  

INTERN, Get seletions from file

INTERN, Get sorting from file

INTERN, Get calc. from fil

Exit from RAPGEN

Exit to scope

Form feed on printer $LPT

INSTALL, default report heading

As 16, Edit KEYS range

OPTION, as 17, accounting      

INTERN, stop phantom ports

INTERN, set report system

OPTION: DMS jobqueue

Nixdorf RDAC transfer queue

Clean RDAC queue

Setup RDAC queue

Function 14,report 7

Function 14,last used

File definitions (RAP.DRN)

Insert in TAMOS selector

Create/amend report generator systems (DMREPORTS)

Start RAPGEN again, select another rapgen system

Create the layout for a list

 

Select this report number, must be free

Next free report number

 

 

Select this file as mainfile

Include writestatements (only if active), password

Select alternative read statements DMREAD.DK2

Alternative read statements DMREAD.DKA, password

 

Password if PSW is set in file definition

 

 

xxxx becomes the name of this report

The filename is taken as report name

May be changed later with NAME command-function 7.

 

Standard setting from RAP.SYS field 8.

66 is used as the page length

72 lines on form, 5 lines footer

May be changed later with PRINTER command-function 7

 

Use xxxx as heading

Use report name (c.) as heading

No headings at all, date/page/fieldnames suppressed

 

 

Zero values are printed as eg. 0.00

Supress zeroes, printed as blank

May be changed later with LINE command in function 7.

 

Only if RAP.SYS field 13>1

Standard printer $LPT

Printer 1‑5 as defined in RAP.SYS field 501-505

This printer is assigned the report

Printer $RPL2 with positions 1‑80, 72 lines

May also be given by function 9 - start report.

May be changed later by PRINTER command in function 7.

 

No protection of this report

Amendments only allowed if xxxx is given

E=ctrl.E, User name must also be entered by start

May be changed later by USER command in function 7.

 

Only if set in RAP.SYS, field 20=1

This function is old - use new TAMOS interface

 

Select field number 15

Manual heading for field no.15

Field 15 from the external file LE

Manual heading for this field

LE/le/Le/lE refers to different records of LE

Field 15 without heading

No heading at all for this line, no blank line

Backspace, delete last selected field

Move to position 10 on the line

Move 10 positions forwards

Move 10 positions backwards if no fields

Insert the text xxxx on the field line

Printer control code (@L=Elongated ON, @l=OFF)

Permanent change of field name

End and save the definition

End this line and start definition of new line

End owner file, start detail lines (READH)

Display file/field overview

 

Display the fields from this file

Wide display with optinal helptextes

Display file overview

Subfunctions if installed(DMS.RAPX.HLP)

 

Name and heading of the selected free field

#D1text is used to name start data #D1-#D7 fields.

(All free fields are 4%)

4 numeric digits ( 9999 )

4 numeric digits and sign ( -9999 )

9 digits, 2 decimals ( 999999999,99 )

9 digits, 2 decimals,sign,1000 points ( ‑999.999.999,99 )

6 digits date format ( 99.99.99 )

8 digits date format ( 1999.99.99 )

10 Alphanumeric characters ( AAAAAAAAAA )

Free field names/format may be changed in function 7 with the FORMAT command later, also alphanumeric fields.

 

Which records should be printed

 

Select this report number

 

 

Fieldno.

Simple calculation / fields from other file

Part of fields may be used (numeric or alpha)

Activate QUICK select for next line

(Read this field only, select, next record...)

Is 1 if #21 is one of the given values

Display file/field overview

 

 

Minimum value

No minimum value

Field should be equal to the value

great/less/unequal a value

Simple calculations may be given

Alphanumeric value

As "xxx"

Alphafields:Numeric value of the field is used

Criteria will be entered by start (#D1-#D7)

 

Same syntax as for minimum value

 

Order, subtotals, grouptotals

 

Select this report number

 

 

Order of the list according to a index

The list will be sorted, weigthed totals possible

TAMOS SORT routine, restricts field selection

TAMOS SORT descending

 

 

Normal, just one pass reading the file

Extra initial pass for weighted totals/calculations

 

 

 

Field no., subtotal when this field changes value

Display file/field overview

End total level/sorting definition

 

 

Field no., subtotal when this field changes value

Fields from other files may be used

Display file/field overview

End total level/sorting definition

New sortkey, same record will be printed twice (max.4)

 

 

From start of field

From character 2 in the field

 

 

To end of field

To character 4 in the field

 

 

No subtotal level occurs

Subtotal level when previus defined key changes

 

 

xxxx KEY will be printed in front of the total line

No print of text/key on the total line

Number xxxx KEY is printed

 

 

Just a couble of blank lines around the total

New page after printing the total

 

 

Normal, no tricky totals, just sum.

Calculation, eg.%, control by WHEN/AFTER/PRINT

 

 

This field will be totalled and may be printed/calculated upon

Fields from other files may be used

Last read value of this field may be printed

‑ Supression of the text 'GRANDE TOTAL'

Total array size will be reduced to 1/2,  6 digits precision

Total array size will be reduced to 2/3, 10 digits precision 

Total array reduction if 5% variables avaiable, 16 digits

Display file/field overview

End total fields definition

 

 

No grouping, end total definition

Group totals on all subtotal levels

Group totals but not for subtotal level 1.

 

 

Group totals based on this field in the range 0‑xxx

Fields from other files may be used

Part of fields may be used

Undefined group,xxx diff. values instead of range

Display file/field overview

 

 

 

 

The field should be in the range 0‑100

values <0 or >100 will be placed in group 0.

Undefined group: Max. 100 different values

 

 

Number xxxx Value will be printed on the total line

 

Fields, file reading, functions 

 

Select this report number

 

 

Display file/field overview

End calculation definition

 

 

Line ok.

Line ok.

Delete line

Insert new line before this one

Accept 10 lines from here and on

Accept 99 (all) lines from here

 

 

Field 15 from the main file

Part of field 15 from char. 2 to 3 (Numeric or alpha)

Field 15 from the external file LE

LE/le/Le/lE refers to different records of LE

Todays date from start input

As of date  from start input

#D1...#D7 numeric start data

#DA1...#DA7 same fields but alphanumeric

Pagenumber

Screennumber (SPC 6) of starting port

Status after read file (search), 0=ok.

Total level number

Total group number

 

 

Assigning a constant value

Addition

Subtraction

Multiplication

Division,if #4 is zero error #15 occurs!

Power

Percent,as #20=#3*100/#4 but #4 may be may be 0.

Brackets in any levels allowed

Zeroing a bunch of fields (or space out textfields)

 

 

Assigning a constant, fill up with blanks

Converting a numeric field to text

Converting a textfield to numeric

You may calculate on #20, not on #10

Spacing out bunch of fields

Setting printer control chars (@X,@Y,@Z,@x,@y,@z)

 

 

 

 

 

 

 

Remember to zero your workfields !!!!

#20 becomes 1 if #6 is 2

Less, greather, unequal

AND, #6 must be between 1 and 7

OR must be written in more lines

 

Or you may use the VALID subfunction

Alpha selections in qoutes pls.

Same as IF #6<>0 LET #20=1

Same as IF #6=0  LET #20=1

IF may be used with functions also

 

 

Plain remark for documentation

Comment directly on a line

Note: /* Cannot be used with:

         READ (LE) and automatic conn.

         FIRST/LAST/AFTER/NORMAL/PRINT commands

 

2 decimals up/down, 123.456 ==> 123.46

0 decimals up/down, 1234.56 ==> 1235

0 decimals down,    1234.56 ==> 1234

Change FNR rounding to up/down  5 pence

Change FNR rounding to down    25 pence

 

All BASIC functions may be used.

The positive value of #15

The decimal part,   1234.56 ==> 0.56

Sign, ‑1/0/1 if #15 <0,0,>0

Square root

Negation, 1 if #15=0, 0 else

Length of alphanumeric field.

 

Date (#15) must normally be given as DDMMYY.

From release 01/10‑92 the date may be

DDMMYY,YYMMDD or YYYYMMDD

DDMMYY ==> YYMMDD, YYMMDD ==> DDMMYY

YYYYMMDD ==> DDMMYY

DDMMYY/YYMMDD/YYYYMMDD==>YYYYMMDD

DDMMYY/YYDDMM/YYYYDDMM==>DDMMYY

Date difference in days

Add 10 days to a date, #20= DDMMYY

Add 10 days to a date, #20= YYYYMMDD

Weekday, 0=saturday,...,6=Friday

Week no. YYWW, 01 jan.==>week 1

Week no. YYWW, 01 jan.==>calender week

#15=start date DDMMYY in week #20=YYWW

Working days between #14 and #15 (DDMMYY only)

YY * 12 + MM, Date diff.in months

Date difference in days, 360 days/year

 

 

Simple calc. LET may be omitted

IF calc, LET must be given

Let function,zero the given fields / space out textfields

Setting fields to a constant

Setting fields equal other fields

Moving fields between files

Moving fields between records

Involving many files

Add 1 to all fields, ‑*/­ allowed

Moving some fields and adding other

IF #5=1    LET #6=0,           IF #5=2   LET #7=0...

IF #5=1    LET #6=#40,        IF #5=2   LET #7=0...

IF #5=1    LET #6=#6+1,      IF #5=2   LET #7=#7+1...

IF #5=1    LET #6=#6+#40,   IF #5=2   LET #7=#7+#40...

IF #5=1    LET #40=#6,        IF #5=2   LET #40=#7...

IF #5=0    LET #40=#6,        IF #5=1   LET #40=#7...

IF #5<=1  LET #6=#40,        IF #5<=2  LET #7=#40...

IF #5=7    LET #6=#40,        IF #5=17  LET #7=#40...

IF #5="A" LET #6=#40,        IF #5="B" LET #7=#40...

IF #5=1 LET #6=#1 & #7=#2, IF #5=2 LET #8=#1 & #9=#2

 

 

Next lines executed first only (5100)

Next lines executed last only (5150)

Next lines executed after select and during sorting (5300)

Next lines replaces print routine, (4700)

after selections and not during sort.

If no PRINT(...) follows ‑ no output.

Next lines executed before select, (5200)

both during sort pass 1 and print pass 2

Control calculation during:

Pass 1 (sort) and/or pass 2 (print)

Normal lines  and/or total lines

Jump to the statement labelled with A:

Assign a label to a statement (1 letter only, A-Z)

Execution of a subroutine defined as eg. A: #15=100

RETURN from such a routine

Activate accounting report system (2000)

Reserved for future use, name may be changed. (4300)

Reserved for future use, name may be changed. (4400)

Reserved for future use, name may be changed. (4500)

Reserved for futore use, name may be changed. (4600)

 

 

Read the external file LE, auto connection

Read LE using field 1 as key for index 2

As above

LE/le/lE/Le may be used as diff.records

Read LE, when key changes print head before lines

LINE(ZEILE/LINIE) in function 1

Read non‑indexed file using recordno.

Read file using relative recordno.(to mainfile)

Set range from/to for NEXT reading

Set end of range for NEXT if nessesary

Read next record from LE in range

(REPEAT/OM) do the NEXT again

 

 

If nothing specifyed:Automatic connection.

Alternative automatic connection

, indicates an alphanumeric key follows

Field 1 and 2 must be alphanumeric

The key may be builded in a work‑variable

Field 1 is used as key, may be numeric

Field 1 and 2

Key all packed

Just field 1 packed, field 2 unpacked

Field 1, char. 3 to 4, and field 2

The constant 00 followed by field 1

Field 2 and relative recordno. packed

Exact recordnumber packed

Date field 2 turned: 310392 ==> 920331

Zero supress, eg. "   12" used as key

Key will be padded with spaces

 

File must be installed with writing allowed.

Activates update, must be given

You may select update by start report

Avoid password by start report

Update a record in the file LE

Insert a new record in the file LE

Delete a record from the file LE

Update a record / insert if not read

 

 

Zero all fields for a file

Opens DK as 3/OLD for read only

Merged read of two files, FIRST calculation only

File name of DK, eg. 03/GF‑03000111

 

Building new files with RAPGEN.

Define new file AA, index field 1, 100 records.

Place the file on LU#7 with 2000 records.

Same LU as DMFILES, 2000 records, builded new each time

Definition of file AA with fields from more files

Field 1 as unique key, field 4 as key with duplicates allowed

Two keys, field 1 and 2 and opposite.

Key consisting of field 1 and 2 all packed.

Duplicate key values, packed relative recordno. included

Remove file and file definition.

 

 

Chain next rep.(LAST calculation)

Fix index for main file

and optional start/stop keys

Enable (AA) start/stop from file

With totals for each input line

Input file AAA fixed (DMS‑KEY‑AAA)

Returns calculation code 15 out of line 15/4711

Fix minimum total level to 1

Suppress all totals (from level 1)

Message and end program

Remove all #Dx start input fields

Run this report with low priority

Select DMSORTWORK05 for this run

Build  DMSORTWORK05 for this run

 

 

DATAMASTER validation text

Modulus 10 checkdigit

Modulus 11 checkdigit

Edit number in funny ways

Find text XX in alphafields 1 & 2

Lowercase, AbC ==> abc

Uppercase, aBc ==> ABC

Uplowcase, CH.HANSON==>Ch.Hanson

Last,christian name from name

Convert dirty number "01)31‑03‑54" to 1310354

Convert alpha number to numeric (inline calculation)

Pack field, equals CALL 60

Convert old danish phoneno. to new

COMET rate from table GF‑04000abc

Adress matchcode, Down Town 15==>DOWNTOWN_0015

Remove leading/trailing spaces

Unpack field, equals CALL 61

1 if #10="AA", 2 if "BB", 0 else

1 if #21 is one of the values

As valid,quicker using fixed table of 99 elements

OLD: Zero the workfields #30-40 (use LET instead)

 

 

Define print as line 5 to 7

Line 5, one blank line, line 7

Define heading as line 1 and 3

Skip to line 10 before heading

Switch off all headings

Newpage 3 lines before bottom

Define total print lines

READH heading print lines

Take over complete print control

Print NOW lines 5‑7

Open second printer (max 9)

Switch all output to printer 2

and define H=,L=,T= for this

Output to both printers

Set line spec to both printers

Close and reopen printer with 1 extra copy

And set print Suspended, paper code 5

Direct print, @Q=shift to NLQ, ;==>no linefeed

 

 

fields 1‑10 to CSV textfile DMS‑OUT‑A

formatted file 7/DMS-OUT-A with recordlength 80 bytes

contigous file 7/DMS-OUT-A with reclen=length of fields

Var.fieldlen, leading space, comma edit, floating sign -/_

Fix.fieldlen, leading zero, no edit, fix leading sign  -/+

...fix trailing sign 1/0 and produce print list of file

...sign in overpunched IBM format and print rec.layout

...sign 1/3, 1=negative, 3=positive

CSV params: All, Zero, ; Sepeate, No ", comma if ; in text

as EXPORT, to ERNA pc, $TRAN

as EXPORT, to ERNA pc, TEXTTRAN

as EXPORT, to PLC line, $DNTUR

as EXPORT, to EBCDIC TAPE, call 70

as EXPORT, include file definition header at start of file

Redirect print to ERNA‑TEXTTRAN direct on PC harddisc

fields 1‑10 from CSV file 0/A

Adding field 3 and reading dummy field 7

Cont.file A reclen 80, fixed fieldlen, nouse, set decimals

Continue with more fields from same record (many fields)

Repeat importing the same record (variable record layout)

Import next record (more records each item)

as IMPORT, from ERNA pc, $TRAN

Testprint in calculations

 

 

Remove all REM and /* textes (UNCOMMENT)

and save program with size 32 KB.

and deactivate EXPORT (DEALLO T/P)

and deactivate text (DEALLO P0,Q$)

Remove all print from the report

Remove index update routines

 

 

 

 

 

Activating optimizer with default parameters

Deactivate print optimize and activate no index update

Read statements reduction and external file read optimize

Variable optimizing to a minimum and globalizing

Saved size 16 KB optimized ,D,

Code minimizing functions

 

Print optimizing functions

Function removal for space reducement

 

 

Display message on messageline

Input Function:xxx, display text on messageline

Shift to IQ program no.10

 

 

Same as #OK

Next printline no.

Same as #LEVEL

X=0: first pass sorting, X=1: 2.pass printing

128 spaces (blanks)

512 chars alpha string, free for use

256 chars alpha string, free for use

4% numeric workfield  T3(0)...T3(10)

64  chars alpha string, used for keys

Start key for next read of main file

End key for reading main file

Accounting reports, start collect coloumn

Accounting definition field 4, calculation code

Accounting definition field 7, index code

Accounting definition field 9, free for special use

 

(Patching or very special requierements)

This line is generated as no.500

 

(OLD, now replaced by subfunctions)

NEW:CHECK() Checkdigit mod.10

NEW:CHEX()  Checkdigit mod.11

NEW:WORKD() Working days

NEW:NAME()  Christian/last name

NEW:PHONE() Danish phonenumbers

 

 

Amend layout,fields/lines print

 

Select this report number

 

 

Select this line no.

Select this line and position.

Display file/field overview

 

Display the fields from this file

Wide display with optinal helptextes

Display file overview

Subfunctions if installed(DMS.RAPX.HLP)

Set screen start position

Print the report layout on printer

Formfeed on printer

 

 

Define report printer

Printer as defined in RAP.SYS fields 501-505

or printer name, eg. $RPL0

Start print position for spooler

End print position for spooler

No. of lines pr.page

Turn position raster (!....,....!) on/off

Switch display mode of fields

0=number,1=none,2=name,3=format

Insert no.of lines before a line

Delete no.of lines from a line

Define report print line numbers

Y/N - Zero suppression

YS  = Fast screen print

Footer spacing, Default 3 lines.

Define report header, see also PRINT(H=

Define report lines, see also PRINT(L=

Define total print, see also PRINT(T=

READH statement lines, see also PRINT(D=

Change free field names and formats        

Put report layout to a textfile 0/DMS‑xxxx

Get part of report layout from a textfile

End function normally

End function without any updating

Change reports main file ‑ use carefully

Change report name

Change report username

 

 

text and fields may be mixed

Todays date

As of date

Page number

Mainfile shortname

System name (from RAP.SYS install or TAMOS if blank)

System no.  (from RAP.SYS)

Time

Report number

Screen no. of starting port

Place text  close to field 2, eg. NAME TEXT

Place field close to text, eg. DUE 100.00

Place texta close to field 2 but do not move textb

Switch printer control L (elongated) on for text

 

 

If on, automatic next line until END

 

Descripe one or more reports

 

 

Select this report number

Print these report definitions

 

 

Just report definition is printed

Also field overview is printed

Field variables (S$,S1,...) will be added

And DUMP of basic program if generated

Printer name may be given

Screen output if just comma is given

Printer open parameters may be given

 

 

Go

 

Select this report number

Start a bunch of reports with same parameters

Generate but do not start all reports not generated

Optimize but do not start all reports not optimized

 

Must be given if updating report (CARE/ACHT/ePAS PÅe)

Note:NOPAS() may be used to disable password

 

Must be given if ctrl.E is used around username

 

Heading and #DD calculation field

 

Heading and #PD calculation field

 

Start key value

Start key

Start from the beginning of the file

Use index 2

Use already present sortfile

Use KEYS() definition file

Use KEYS() routine without file

Note: INDEX() may be used to fix start/stop values

 

Accounting reports, start from definition line

 

Stop key value

Stop key, Note:Index number in start key only

Print all file

KEYS() values may be continued here

 

Accounting reports, stop at definition line

 

User defined fields #D1‑#D7 (#DA1‑#DA7)

Fields may be named with #D1text as fieldname

or the first lines in function 11‑documentation

Note: NODATA() may be used to disable all input

 

 

Print from this subtotallevel only

Suppress all print and printer open

Note: LTOT(1) may also be used.

 

Norwegian client file number only

Normally not used, only if filename 0/xxxxx?xxx

 

 

Start on screen, screen output

Start on screen, printer output

Start on phantom port (RAP.SYS field 7)

Start on this phantom port number

Abort start

Insert in TAMOS spoolqueue and/or DMS jobqueue

Insert in DMS jobqueue no. 75

insert in DMS jobqueue, HOLD position, prio.10, job 5

 

only if printer output

Start report

Testprint before start

Display printer overview (TAMOS assignment)

Select a printer from the overview

Select this printer

Select output to textfile xxxx

Select PC - RDAC transfer printer

 

 

 

End program

Letters only, print this letter on printer

Letters only, new start key

 

 

Display current key value on screen

Enter cr. for each main file record read

A new start key value may be entered

Display full line, no cut at position 80

 

Copy to other no/system/extern

 

Select this report number

Copy from external file 0/DMSREP.XX07

 

 

Copy to this report no.

Copy to external file 0/DMSREP.AA08

Copy to reduced file 0/DMSREP.XX08

(Must be passed thru calculations on destination)

Copy to subsystem 1, report 8 (DMREPORTS)

Copy to system 10, report 8 (CHSYSTEM)

 

Free text for your convenience

On very first line: replace all start-screen

Following lines are treated as standard input by start

As 2, full screen editor

As 3, full screen editor

As 4, full screen editor

 

 

Jump to line 10 (Use 10space to enter the value 10)

Jump to last line

End definition

End definition without update

Insert one or more lines

cr=do not insert any

Delete one or more lines

cr=do not delete any

Print definition

Get lines from other report

 

Get lines from this report no.

Get from this definition file (KEYS or DMT10xx file)

cr=from line 1

cr=until end

Display file/field overview, switch to minieditor

Return to fullscreen mode after HLP

 

 

One or more ranges og single keys

2: indicates hange of index

Calculation code 47, #20=KEYS() returns 47 to #20

 

Manual

 2.

 3.

 6.

 4. / 5.

 8.2

 7.

 7.3

 8.3

 9.

 8.1

16.3

16.4

16.5

16.6

Iq 7.2

14.13

Acc 2.1

16.7

16.7

16.7

 8.4.2

 8.4.6

 8.4.1

17.3

14.13

Acc 2.1

 8.4.4

 8.4.3

 8.4.5

12.2.4

12.6

12.8.1

103.1.1

 

17.4 

17.2 

17.1 

17.1.1

 2.

 2.2.1

 

 

 

 2.2.2

 

 4.11.14

 

 

 2.2.3

i13.6.7

 

 2.3.1

 

 

13.10

 2.3.2

i2.2.8

 

13.3.1.2

 7.5.9

 2.3.3

 

 

 

 

2.3.4 13.3.1.1

 

 

13.3.1

 2.3.5

i2.2.13

 

i2.2.27

 

 

 

 7.5.9

 2.3.6

 

 

 

13.10

 2.4

i2.2.20

17.2 101.3.3

 2.5

 2.5

 2.5.4

 2.5.10

 2.5.10

 5.18

 2.5.7

 2.5.8

 2.5.5

 2.5.3

 2.5.1

 2.5.2

 2.5.6

11.6

 2.5.9

 2.5

 2.5.13

 2.5.12

 5.2

 

 

 

 

i14.3

 2.6.1

 

 

 2.6.2

 

 

 

 

 

 

 

 

 7.5.4 13.10

 

 3.

 

 

 

 3.

 

 3.5

 

 3.9

 

14.51

 5.2

 

 

 

 

 3.3

 

 3.5

 3.4

 

 

 3.6  16.3

 

 

 

 6.

 

 

 

 6.1

 

 

NO‑pre

NO‑pre

 

 6.3

 

 6.3.2

 

 

 6.2

 6.2

 5.2

 

 

 6.1

 6.1.1

 

 5.2

 

 6.1.6

 

 6.1

 

 

 

 6.1

 

 

 

 6.1.1

 

 

 

 6.1.1

 

 

101.3.4.1

 

 6.1.1

 

 

 

 6.5

 

 

 

 6.6

 

 

 6.6.1

 6.6.2

 6.6.3

 6.6.3

17.

 5.2

 

 

 6.7

 

 6.7.1

 6.7.1

 

 6.7.2

 

 6.7.4

 6.7.4

 6.7.3

 5.2

 

 

 

 6.7.2

 

 

 

 

 

 6.7.2

 

 4. / 5.

 

 

 

 4.

 5.2

 

 

 4.9

 

 

 

 

 

 

 

 4.8

 

 4.6

 

 5.18

 4.8.1

 4.8.2

 4.8.3 16.3

 4.8.4 16.3

 4.8.5

 4.8.7

 4.8.6

 4.8.8

 4.8.9

 

 4.4

 

 

 

 

 4.5

 

 4.5

 

14.14

 

 4.7

 

 

 

 

14.14

11.7.3

 

 

 

 

 

 4.11.8

 

 

 4.11.9

 

 

 

14.51

 

 

 

 

 

 

 4.9

16.6.1

 

 

 

 

 4.10.1

 4.10.2

 4.11.4

14.38

14.38

 

 4.11

 4.11.1

 4.11.3

 4.11.5

 4.11.2

 4.11.6

 4.11.7

 

 

17.10

 

 4.10.3

17.10

17.10

17.10

 4.10.4

 4.10.5

17.10

 4.10.6

 4.10.7

14.53

14.53

14.54

NO

NO

 

14.14

 

 

 

 

 

 

 

 

 

 

 

14.15

14.15.1

14.15.2

14.15.2

14.15.3

14.15.4

14.15.6

14.15.8

14.15.9

14.15.8

 

 

 4.11.11

 4.11.11

 4.11.11

13.5

 

 

 4.11.11

 

 4.11.10

 

 

16.6.2

16.6.2

16.6.2

16.6.2

Acc 2.2.2

NO-pre

NO-pre

NO-pre

NO-pre

 

 5.

 5.15

 5.6

 

 5.7

 5.21

 

 5.13

 5.13

 5.20

101.3.5.1

 5.20

 5.20

 

 

 5.22

i14.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 4.11.14 15.

14.48    15.2

15.2

14.24    15.3

15.4

16.6

15.7

15.5

 

 

NO

14.28   15.17

14.18

14.9 

 

15.17

15.17

15.17.1

15.17.1

15.17.2

15.17.3

15.17.4

15.17.5

15.17.6

15.17.7

 

 

14.2

14.12

14.12

14.13

14.13.6.1

14.13.6.2

14.13.6.3

14.17 15.12

14.20

14.19

14.22

14.34

14.42 103.1.3

14.42 103.1.3

 

14.

14.1 104.4

14.3

14.4

14.6

14.10

14.16 104.4

14.49 104.4

14.40 104.4

14.21

14.26

14.27

14.29

14.31

14.37

14.41

14.43

14.47

14.50

14.51

14.52

14.55

 

13.

13.4.1.2

13.4.1.1.1

13.4.1.5

13.4.1.1.2

13.4.1.5

13.4.1.6

13.4.1.3

13.4.1.4

13.5

13.5.1

13.11.1

13.11.2

13.11.2

13.11.4

13.11.4

14.5 

14.5 

14.33

 

 

14.7

14.7.1

14.7.1.3

14.7.1.3

14.7.1.4

14.7.1.4

14.7.1.5

14.7.1.5

14.7.1.6

14.30

14.35

14.32

14.45

14.8 

14.36

14.11

14.11.1.1

14.11.1.4

14.11.2.1

14.11.2.2

14.11.2.3

14.30

14.46

 

 

14.39

14.39

14.39

14.39

14.25

14.23

 

 

 

 

17.6 

17.6

17.6

17.6

17.6

17.6

17.6

17.6

17.6

17.6

 

Iq 7.7

Iq 7.7.1

Iq 7.7.2

Iq 7.7.3

 

 

 4.8.6

 

 4.8.8

 4.11.10

 4.8.10

 4.8.10

 4.8.10

 4.8.10

 4.8.10

 

 

Acc 4.5

Acc 3.4

Acc 4.9.5

Acc 3.9

 

 

 4.11.13

 

 

 4.11.12.1

 4.11.12.2

 4.11.12.3

 4.11.12.4

14.31

 

 7.

 7.3

 

 

 

 

 7.5.1

 7.5.2

 5.2

 

 

 

 

i14.3

 7.5.6

 7.5.7

 7.5.8

 

 

 7.5.9

i2.2.27

 

 

 

 

 7.5.10

 

 

 7.5.12

 7.5.13

13.3.1

13.3.1.1

13.3.3

13.3.1.2

13.3.1.3

13.3.1.4

13.3.1.5

13.3.1.6

 7.5.14 13.10

13.10  104.3

13.10  104.3

 7.5.4

 

NO‑pre

13.10  104.3

13.10  104.3

 

 

 7.6

 7.6.1

 7.6.2

 7.6.3

 7.6.4

 7.6.5

 7.6.6

 7.6.7

 7.6.8

 7.6.9

13.7

13.7.1

13.7.2

11.6

 

 

13.10  104.3

 

 8.3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 9.

 

 

17.5 

17.5 

17.5 

 

15.3

14.24

 

 2.3.6

 

 9.1.1

 

 9.1.2

 

 9.1.3

 9.1.3

 9.1.3

 9.1.3.1

 9.1.3.2

14.13.5

14.13.5

14.12

 

Acc 2.3

 

 9.1.3

 9.1.3

 9.1.3

14.13.5

 

Acc 2.3

 

 9.1.4

 9.1.4

16.2

14.22

 

 9.1.6

 9.1.6

 9.1.6.1

14.17

 

 9.1.7

 

 

 9.1.8

 9.1.8

 9.1.8

 9.1.8

 9.1.8

 9.1.8

 9.1.8

jobq

jobq

 

 9.1.9

 9.1.9

 9.1.9

11.5

11.5

11.5

11.5

12.2.3

 

 

 

 

13.9

 

 

 

 9.4

 9.4

 

13.8

 

 8.1

 

 

13.10 104.2

 

 

 

13.10 104.2

17.8 

 

13.10 104.2

104.2

 

16.3

16.3

16.3 

16.4

16.5

16.6

14.13

16.2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14.13

14.13.2

14.13.2

14.9.2

 

Version

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(19.27)

(19.27)

(19.27)

(19.27)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(18.48)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(18.46)

 

 

(18.46)

(18.46)

(18.46)

 

 

(18.46)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(18.13)

(18.13)

(18.13)

(18.13)

(18.13)

(18.13)

(18.13)

(18.13)

(18.13)

(18.13)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(19.10)

(19.10)

(19.10)

(19.10)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(18.07)

(18.50)

 

(18.11)

 

 

 

 

 

 

 

 

 

 

 

(18.34)

 

 

 

 

 

(18.41)

 

(18.17)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(19.28)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(18.07)

(18.07)

(18.07)

(18.07)

(18.07)

(19.04)

(19.04)

(19.26)

 

 

 

 

 

 

 

 

 

 

(19.30)

 

(18.37)

 

 

 

(18.37)

 

 

 

 

 

 

 

 

 

 

(18.30)

(18.30)

(18.49)

(18.49)

(18.49)

(18.49)

 

 

 

 

(19.22)

(19.22)

(19.22)

(19.22)

(19.22)

(19.22)

(19.22)

(19.22)

(19.22)

(19.22)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(18.33)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(18.42)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(19.23)

(19.23)

(19.23)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(19.17)

 

 

 

 

 

 

(18.25)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(18.41)