' +JJJJ ?\>m0M='+l> /+l   d']6@5L&]655]6L:5 & "L}"BB5L&]66 77777777777JJJJx 77L? L7877777777 776i 7 7867 7`77 777777`x =(`(8`5775I7`B` 76`7`>J><;VU<)?<`8'x0|<&HhHh 8 8 8 8V&` aI꽌ɪVɭ&Y:&<&Y:&;: 꽌ɪ\8`&&꽌ɪɖ'*&%&,E'зЮ꽌ɪФ`+*xS&x'8*3Ixix&& 8 9: :' 9: :& :x)*++`FG8`0($ p,&"_*]6` L/5553L3  !"#$%&'()*+,-./0123456789:;<=>?80^݌Hh < <݌ < < h < < < <`HJ>݌h Hh݌`HIHHHHhHH݌hHhHh݌H6 (G FG HZXj 80x D9$xxH` >( Z>h Z>L=.xxH >hh@(LH>9L>HH/Hh/ H?-З( 8(& 8$8 H` *8HNx`* >x$50x*$50xL9JJJJ`HHjf5 >h $50x`HA>VD;;P >(ED Z> ?$0x8x D9- 8DD# H8`?E Vˆʎ55L $ 5 55555 &a*5`*5` "L&5_*b*JL%u**Lz%`** $  Q(lXJ̥KlV $  Q(lV eօ3L e3L &%R*L &%Q*L d' "L4% N'e*)n*5 5 &`@-e*f*f* 5 "L# "5f*`L %.* *t*Q*L$ %L&*L` "O**P**u** d' "L% N'e*)n*o*o*n* &8ɍ` ^&f\*555L& ^&NR* & "R*ΩL&)\*Z* ʽ LH*v 3h`0h8` " ['L & N'С55 &5`*A*@` +5L^6L6 i:5`  \* ?*0 '\* '  Q( ^&\*lZl^?*c*q)H c*h`f*5h*5j*555@O*AP*`u*@`@5&`Q*R*`E 'Ls' ' ' @DAE@u*`8` %@ @A@`@`**@*A`M5 ) "L&`8@AW*c*@8@-@HAȑ@hHȑ@ȑ@hHȑ@Ȋ@c*h8&ȑ@Hȑ@Ah@L'Hȑ@ȑ@* htphso`hMhL`9V*8U*897T*6S*67`INILOASAVRUCHIDELETLOCUNLOCCLOSREAEXEWRITPOSITIOOPEAPPENRENAMCATALOMONOMOPRINMAXFILEFINBSAVBLOABRUVERIF!pppp p p p p`" t""#x"p0p@p@@@p@!y q q p@  LANGUAGE NOT AVAILABLRANGE ERROWRITE PROTECTEEND OF DATFILE NOT FOUNVOLUME MISMATCI/O ERRODISK FULFILE LOCKESYNTAX ERRONO BUFFERS AVAILABLFILE TYPE MISMATCPROGRAM TOO LARGNOT DIRECT COMMANč$3>L[dmxծӠ734@~3!+,W,o,*--,,9,-.-~3~3,,,,~3~3,,,,~3_*3 j.5 *H*H`Lc3 (+L3 +55555 1^3_* )3J Q*L_3Ls3443 D23455545554 70 / 7 :/354545455454555535L^/5-5I5555 55` / 4/ 2-5! / 08555454 70L3 (+50+5B5C3 2 70L35 *H*H`Lg3L{3505 *H*H` 3 ,5L3 3 1 ,H 1hBL, 0 BH [1 1h`Lo3 35 ,L3 3 1B , 1L,H 0hB@ 55 [1L133 (+34) 34 70L3 3L3 (+ 055L- (+34L{33454445 70 ^/* / 3B0 HȱBh -355 -8 /L38 25` +5 /3 /. /. 3 E7D B. /. /. 0]34S0J4 4) 3 4D4E B. 4  /. 02L3 Ν3 3`HD٤33DEEhiHLG.h ` /5B5-` /5B-` + X05I33383 33DH /4 E03744Ȍ7 X040 7 J7L35B5C`,5p` / R0-55`50` K/ R0-55`575755` 4/ K/ /( 55L/BȱBL/58` D2BH5BH :/ 75Bȭ5Bhh55 R0B5m55ȱB5m55` /LR0557755`*7*75LR0 E0(33 48`433 R0` E033LR0*7*7`777 555I7575757577** 7757`7 L35555f /55555555 ^/`855 i /B58` 41L 15ȱB5 /5555 /5`3 D23ȑB55B5 / 7 55`5555555555 5555`555`55BC55`5555`L3 /5B5C355 0Q340"B4 3` 02۰Ϭ33B438`3i#`3ЗLw35!50>5555`53 /3m3 3 3733i35 3583 /35ЉLw35`H /5h 25L/~43 533`55555555J5m55m5jn5n5n555m5555m555`"L? 585H ~.(3` d ֠z#8  U8UL 8  U8XrL 8XtL EL A L A L A L AL AL 8  |E8  E8  NF8LL 8LL 8LL 8LL 8LL 8LL 8LL 8LL 8LL 8LL 8  L8  O8  2R8  R8UzL 8  |U@Ld@L @Ld@L @L @L @L @L @L @L @L @L @L @L @L @L @Ld@L @L @L @L @L @L @L @L AL AL AL A@pL @rL @tL @vLd@{L @}L @Ld@L @Ld@Ld@Ld@L @Ld@Ld@Ld@L @L @Ld@Ld@L @L @Ld@L @L @Ld{[;=E4LdE9LdE>LdECLdEHL EJL ELL ENLdESLdEXLdE]L E_LdEdLdEiL EkLdEpLdEuLdEzL NY record(s). ?  c C G NB $` 7R@ B  LG@ INIT JUNK,D1 :@  C > B T 2C > B ] cLc @@ `P$pX%E ~  /P( Before your report program is INITIALLY run, the sort program (SORT.BAS) MUST be run first. > L?mThereafter, the sort program must be run only if you wish the file to be sorted differently or if you have f? L @)added, deleted, or updated Ao drive #1 =  L > and typing >  qC  LD>RUN SORT.BAS,D1 4>  hC  L>- or by rebooting ReportWriter and taking the X>  qC  L>P >  hC  L> option. >  L> **** REMEMBER **** >  L[?d aved in drive <  A ^L=. =  LB=A sorting program ( .=  qC  L_=SORT.BAS V=  hC  L=0) has also been saved on your application disk. s=  L>PYou may run your report program by inserting your application disk int L:<7Check your diskette in drive 1 and restart the program. <  Lc C LX<Press Q<  qC  Ls<RETURN l<  hC  L< to continue <   ]D _C  [D L<` ;C > B T DC > zC T VC  L =0Your report program has now been s:  6B dE )C   1 dEL7 VC   VC  B > C T C > C TLc;Please wait - Loading program E;  DC > zC T D L;RUN ;  yD  VC   B L;IThere must be a Menu design file on drive 1 before the program can start. ; L:OPEN 9  yD L:,D1 :  D L4:READ .:  yD  '  D  D L`:CLOSE Z:  C > B TL; C > B T D D n A B $L; C   C  B > B T C > B TL:Application program :  yD L: not found - 8  '  |A  D L9CLOSE 9  C > B TL9 C > B T C   C  B > B T C > B TL{9 Screen file n9  D L9 not found - retry 9  6B dE )C   1 dEL7L9.T D 5 9  {D 7z: D L9CLOSE 9  D e of your screen file for this application 7  B CA 'B A C RA   D DLQ8 C  D  A D 5 P8 4E L 789 _C   D L8CLOSE 8  D L8OPEN 8  D L8.S,D1 8  D L8READ 8  D L8.S data file on drive 2, 6  LM7-place that data file diskette in drive 2 now. 7  L7O(If your data file is on the application diskette, just ignore drive 2 for now) ^7  H< VC   B L7AP:2 7  B L'8?Please enter the nam B  B rLL6=Now remove the Reporwriter disk from drive 1 and store it in 6  Lh6 a safe place. Z6  B rL6:Take your application diskette and insert it into drive 1. 6  L7HIf your application uses a separate diskette for a  C L5Press  5  qC  L-5RETURN &5  hC  LS5 to continue, or A5  qC  Ln5Ctrl-E g5  hC  L5 to go back to menu 5   ]D B  [D  A C  [D 4E L _C  [D L5 VC   B L5AP:1d 5  CLOSE RPT.TMP 3   B  D L74RUN SORT.BAS,D1 '4  VC   B LZ4AP:1c T4  B  C > B TL4HThis option runs a data entry/update program which you must already have z4  L4%created on your application diskette. 4rogram will automatically be called when Sort is done. 2  H< VC   VC  B > C T C > C TL3"Please wait - Loading Sort program j3  D L3OPEN RPT.TMP,D1 3  D L3 WRITE RPT.TMP 3  D  7A   D L 4 yD L2 not found - retry 2  6B dE )C   1 dEL2. VC   B rL29Before your report code can be run, you must run the Sort P2  L2Gprogram even though you may not elect to change the order of your data. 2  L23CYour Report p D L 1CLOSE 1  D L'1OPEN !1  yD L<1,D1 81  D LV1READ P1  yD  '  D  D L1CLOSE |1  C > B TL;2 C > B T D D n A B $L;2 C   C  B > B T C > B TL1 Report file 1  6B dE )C   1 dEL2. C  B > B T C > B TLu0 B T D  L0 C > B T C   C  B > B T C > B TL/ Screen file /  D L/ not found - retry / n diskette, just ignore drive 2 for now) -  H< VC   B LI.AP:2 D.  B L.:Please enter the name of your screen file for this Report ].  B CA D A C RA   D DL. D 5 .  A C  D 4E L 7/ D L/our application diskette and insert it into drive 1. ,  L-HIf your application uses a separate diskette for a data file on drive 2, >-  L--place that data file diskette in drive 2 now. -  L$.O(If your data file is on the applicatio go back to menu +   ]D B  [D  A C  [D 4E L _C  [D L, VC   B Lj,AP:1b d,  B  B rL,=Now remove the Reporwriter disk from drive 1 and store it in ,  L, a safe place. ,  B rL0-:Take yThis option runs a report program which you must already have created *  Lm+on your application diskette. O+  C L+Press +  qC  L+RETURN +  hC  L+ to continue, or +  qC  L+Ctrl-E +  hC  L , toA   D  ` B A 7a* D L:*WRITE MENU.STK,R1 (*  A   D  B A` C > B TLc B D 3B CA C D 3B A 6B RA   C  D L*L* * D D qD` VC   B L*AP:1 *  B  B > B T C > B TLA+E.STK,L5 (  D L+)WRITE MENU.STK,R )  A 3B ^ A   D Lf)WRITE MENU.STK,R1 T)  A   D  ` D L)READ MENU.STK,R )  A 3B ^ '  ,E  *E  A 6B A A D L)WRITE MENU.STK,R1 )  '  VC   MC  qC L((Program (  D LP( not found on drive 1. 9(  H< C   C > C T B > B T p*L L( D 5 ( ` B > D  n c ]B i B Q C > D  n c ]B i B Q D ` A 3B A D L)OPEN MENU* B  L'CLOSE  '  VC   LcL0' D 5 /' L 7( DC > zC T D Lc'CLOSE ]'  VC   VC  B > C T C > C TL'Please wait - Loading program '  DC > zC T _C   D L'RUN '  D L',D1 it %   qDL&CL&c oD 5 &  A oD 5 & 4E L 7& VC   VC  B > C T C > C TL&Please wait - Initializing disk s&  B  L& INITHELLO,D1 &  B  L&DELETEHELLO,D1 &  L C > B TL DD A (L *L A B $L )L VC  Ld%6This will destroy all the data on the disk in drive 1. -%  L%*Place disk to be formatted in drive 1 and u%  L%type 'C' to confirm or %  qC  L%RETURN %  hC  L% to exDL,' B   D L&$OPEN RPT.TMP,D1 $  D LH$ WRITE RPT.TMP :$  A \ A E  A \ A DD   D L$ CLOSE RPT.TMP $  L$.R A \ A E $  SD A \ A DD  QD  DL,' C > B TL$ A \ A \ A D oD L# A A 1 dE 6B n A $L># C  L "LB# A \ A E A# L$Lb# A \ A D a#  A A \ A DD A 6B n A (4E L$L# A \ A D # L# A \ A DD % %!%&&*B4 A \ A D sAL" 1 dE A .D B (L3" A .D ZB B  A .D B  A A .D B (4E Ln" A .D B  A .D B $L" C L" L" A D "  "  D (L" "  C   p* 6B n A B dE A .D c EB   A ]B A  B > D  n c ]B i B Q C > D  n c ]B i B Q qC   D  hC   1 dE A .D B $L " A .D B ( pA C  B > B T C > B T sAL! B dE A .D c EB   B > C T C > C T A \ A D  B A VC   QB  B > A D  C T C > A D  C T A D  6B dE A 9D   A \ A D D 6B  SD C  QD L ]B A  B > D  n c ]B i B Q C > D  n c ]B i B Q D  L\! D  u 6B D  DL L E 5   SD E  B E  QD    SD A \ A D QD  o 1 dE 1 kE D LtCLOSE MENU.SCR e  C > B T 7 D LREAD MENU.STK,R1   '  D  D  AL B A D  C > B T A B L )L A \ A D  o  1 dE ' A D  o  ' A 0D  o  A .D B &LT B dE A .D c EB   ' A \ A D  o  '  "E  ' A \ A D  o  ' A \ A E  o  ' A \ A FD  o  A \ A DCLOSE   D L+OPEN MENU.STK,L5,D1   LE C > B T 7; D LdOPEN MENU.SCR,D1 S  D L READ MENU.SCR x  B kE C   ' A E  o  ' A ;D  o  A 9D B $L 6B dE A 9D   '   L aLz D gA  6B 4  / A D gA  6B 4   F4E Lu D gA  6B 4  u B  D  DL D gA  6B 4 D  D 1 NE`L ..........  E 5 E  E 5 E  E B  D LPR#3   VC   79 D LBB A ^A B LLs` D  B $` D DL, + D 6B NE D   LMALRZ D gA  6B 4 K / A D gA  6B 4 P F4E L D gA  6B 4  B  D  DL D gA  6B 4 D  D 1 NE` D  B $` D DL  D 6B NE D   _C @A  L  Ls FA  C > A A c ]B QLB @ L +A B $L +A B (Lw ^A B L +A B (Ls A OA &L FA  C > A A c fB Q EB A A ?B $LL  DL EB A D  D D 5 eD  D eD  A A  C > A A c ]B Q  gD B  eD   n (A +A B $ A +A oB $4E  A A ?B $4E Lq C  DL +A B  A +A C 4E LM A ?B $L EB A A ?B $LL  DL EB A D  D ^A B L D   B A n A c ]B L< C D [A ;C > B T @L ^A B L D   B A u 6B   %D @A   B  Le d D EB A D   B A n A c ]B   %D @A   B    gD B  eD   n (AL3 FA  C > 6B A T B  L  D EB A F q,$` L( L5 LD 8 XL XLR XQHPH RPhPhQ8 XL.0'L+ LfLLLLL ꥪLYԨé uX3ELuX C > B T A > B T ;C D A 0B $ A A NB $4E L ,-` Leh8PhHQH`hbihciHHb\ȱb]`ߚl hhHHHH`L⥠`ʆ  hdheHdHHHH08  X Xhdhe + eHdHHHeHdH`  `% 0 L0`,wyywxzzx,Hyw wȄffȪ yw fh0`h&Hwyxzwy wy h Lh` ` ` ` 憅` ` ᥠQP` Lh 8e`LԩLcغh8uhHvH` L L L~ 憅 L ʊ8$!  W$Li)$` LY L   hPhQP 8ePQiHHš`hh PȱPʘHH Z ,խwqq膸 J즸 , hhlP,q`h8uhv] :  ڢ hgʆbcb KLf/q ߠ :۩q` S0 L,Hh*Mȱڦhwx%ȱH J 5BwУ8 ewwx𴰺 抦5?wtsʆwx8dedЕБt Z Z ,խvqq ", ȹ,ȹ ,W,qewix8 ZeCBw U  yUUwyVxz`ЗПwyxz`ywzx`GH o8 UpVUVƠ UVUʆoph3]eФk ЮU 4Г U 5,wЅƩѤ wU! hē唐\tsʆbc83o񁪥pTopȆbcĂbUVdf0Ѓe8oph0L8 MLh8HH`BUUȥViлh8HH`З{y SՠUEowyywxzzxwIy:w \`hH,Hops8otpf,k8UlV*U$f&łkUŁdbUȥcUUŭSVŮKsłEUŁ< UV0ЅUŕȱU喰!0UUdUV0+UiUVmVn̢͊wUV0ЦyyUUݤ.QP$  e LWHhL:5~    eȱeLaL LRwwxȆwxwHw Jhw`w5U,w`,hbhcbwȱbxcȘHH`wȄ ep`0CBe]Q=b`LicbbbE0`Ġ``MMLeڢD ! SL3LH h%LddЉ`?0 HH chh ޥ Yަ`н  eE   堰>Ffee0  &ߢEX$ƫv` ꥪLYDcbbwyȱbxz`ݥܦL+3UV UwȱUx`wUȥxU`Ncbbȱb`cbbȥb`cbbȱb8塅堅PEncbbȱbe HH`0S,,hdehUhVhhHHU hehHehUU HHk`UiȱUiuкe& & &eeHHqUȥqUeFdO݅܆`ycbbȱbƫ8pM0UȥUU +뺠ЧUV욥VHUHthhЁ HHf ㈱ۺQi e 纼 +뺊i  e HH`iiiHH`(bcbebbePE1b]  0  j=i<<=kbޙץ,,stHʈcbhH ʈpoophMm X RQtPsh`bhH                                         IN$"Y"DD%2:1120&-XIN$"N"57006-bDD%1:1120-(12);"Please make sure your data disk is in drive ";DR$;"."::"Press ";(15);"RETURN";(14);" to continue. ";:A$:A$(13)5800-27403):54806,(12);(0):(4);"CATALOG,D1":PO%(37)2,PO%:"Press ";(15);"RETURN";(14);" to continue. ";:A$:A$(13)ĺ" ":5610,-D(12);"Is your data on a separate disk from your report (y/n) ? ";:XX%(1403)3:YY%1:L%1:400:800:470 +T216,0:(7):FG%1:54100+^JP%25520+h(12):"Please put ReportWriter into drive 1.":::"Press ";:(15);:"RETURN";:(14);:" to continue. ";:AN$:AN$:(0)+5560+777,JP%:43186,5:(0):(4);"BRUNMENU.BAS,D1",216,0:(7%0*"5460#*,JP%2FG%5435*6(12);"Please put your application disk into drive ";JP%::"Press ";(15);"RETURN";(14);" to continue. ";:A$:A$(13)5430*;(12):(0):11:30);"Saving Sort Program ..."+@(4);"SAVE SORT.BAS,D";JP%:5:AN$:(0):KQ%15440!)5160')@)UL%0:T$(SK)"A"ı)5:1403,0:"Do you wish to ignore differences":"between upper and lower case when sorting (y/n) ?:";:L%1:XX%51:YY%6:400:800:4260:UL%(IN$"Y"):IN$"Y"IN$"N"5320)*FG$;"RUN MENU.BAS,D1"W(::"Menu program not found- returning to basic":D$;"CLOSE":](h((5180(-:D$;"RUN ";RN$;",D1")<216,0:(12):"Please put your application disk into drive 1.":::"Press ";(15);"RETURN";(14);" to continue.";:AN$J:'R880RL:F$(J)(IN$,I9,R8):SLSL1:SNSN1:SNSL1:D$;"READ ";SF$;"0.D,R";SN:R$:IN$R$:(IN$,1)(124)IN$" "(IN$,2)'8IN$(IN$SS$,80):F$(J)F$(J)(IN$,L%(J)(80RL)):RLL%(J)(80RL):I9RL1:4800'(13);D$;"CLOSE":5080(DN$,3,2):& RNIK1:SL(RSRN80):OS(RSRN)(80SL):SNSL1:(13);D$;"READ ";SF$;"0.D,R";SN:R$:IN$R$:(IN$,1)(124)IN$" "(IN$,2)&IN$(IN$SS$,80):RLOS:I9RL1:J0SK:RLL%(J)804820&L%L%(J):RLRLL%:F$(J)(IN$,I9,L%):I9I9L%'E";SF$;".TMP":%+%OPT$"":IN$""ı%KK1(IN$):(IN$,KK,1)"a"(IN$,KK,1)"z"OPT$OPT$(((IN$,KK,1))32):4360%OPT$OPT$(IN$,KK,1)%KK:%AE$"e"AE$"E"OPT$(IN$,2)(IN$,3,2)(IN$,2): &OPT$(IN$,2)(IN$,2)(I)15:I:RSRS15(NFFF)*$IRT39011104$1110h$,SP%(MP%)TP%(MP%1)KY$(MP%)LM$:PT%(MP%)0:%@(0):D$;"OPEN";SF$;".TMP,L";(KLLN1):D$;"READ";SF$;".TMP,R";SP%(MP%):XX$:L%L%(SK):KY$(MP%)(XX$,1,L%):PT%(MP%)((XX$,L%(SK)1)):D$;"CLOS);" to continue, ";(15);"Cntl-E";(14);" to end program";^#dAA$:AA$(13)AA$(5)3940s#xAA$(13)5040#(13):216,0:3800$D$;"READ ";SF$;".X,R2":NR$:D$;"READ ";SF$;".X,R3":NR$:NF(NR$):D$;"CLOSE ";SF$;".X":NFFFāIFF1NF:L%(I"X%:Y%:L%(I):T$(I):RSRSL%(I):I:D$;"CLOSE ";SF$;".S"H"3880"(0):D$;"OPEN ";SF$;".X,L5,D";DR$:D$;"READ ";SF$;".X,R1":NR$:NR(NR$):4000:#((12):(12);"Please put your data diskette is in drive ";DR$::"Press ";(15);"RETURN";(14;"RETURN";(14);" to continue, ";(15);"Cntl-E";(14);" to end program";l!AA$:AA$(13)AA$(5)3600!$AA$(13)5040!8216,0:(13):1060:!LFF:RS5:L%(0)5:I1FF:PR$(I)"":AA$""!tAA$:AA$(13)3740!PR$(I)PR$(I)AA$:3700=(I1); 4 :I:. (13);D$;"CLOSE":3540j D$;"OPEN ";SF$;".S,D1":RS0:D$;"READ ";SF$;".S":3660H! :"Your screen file does not appear to be in drive 1.":"Please check that your application program diskette is in the drive."::"Press ";(15)%(X)):XX$:X:D$;"CLOSE ";SF$;".TMP": (13);D$;"OPEN ";SF$;".IDX,D";DR$:D$;"WRITE ";SF$;".IDX":X1JJ:(PT%(X)):X:D$: 2:(15);"keyboard entered fields";(14)::I1FF2:36,5:1403,5:I;" - ";PR$(I);:IFFĹ36,38:1403,38:I1;" - ";PR$1403,22:IK;:4640:3 :(F$(1),1)(127)3080^ D$;"WRITE ";SF$;".IDX":(IK):D$:IK D$;"WRITE ";SF$;".IDX":(127):D$;"CLOSE":5120 '0 D$;"OPEN";SF$;".TMP,L";(KLLN1):X1JJ:D$;"WRITE ";SF$;".TMP,R";(II1)RT%X:XX$KY$(X)(PT"N"ĺ(7);:2860#T IN$"Y"5120h LN((NR)):216,0:(12);:8:36,5:1403,5:"Records input :";:36,22LN:1403,22LN:" of ";NR:D$;"OPEN ";SF$;"0.D,L81,D";DR$:D$;"OPEN ";SF$;".IDX,D";DR$:2995 3000 216,0:2720 IK1NR:8:36,22:d, you can use":" the same order as before. If you do not use the old order,":" the records will be printed in no particular order.":, 9:36,5:1403,5:"Do you wish to use the old order (y/n) ? ";:XX%47:YY%9:L%1:400:800:IN$"Y"IN$%2DR$"1"İ5800. (13);D$;"CLOSE":2920 D$;"OPEN ";SF$;".IDX,D";DR$:D$;"READ ";SF$;".IDX":XX$:D$;"CLOSE":(12):::" If you have not added or deleted any records or changed" " any sort fields since the last time you sorte ";SF$;".IDX":(PT%(MP%)):D$:SP%(MP%)SP%(MP%)1:4140:Itd :D$;"WRITE ";SF$;".IDX":(127):D$;"CLOSE":2675n (0):(4);"DELETE";SF$;".TMP,D";DR$s 216,0:Y%14:NT%1Y%14 Y%:36,5:1403,5:"Sorting complete":I11500::5120 DD1NT%:MP%I:SP%(MP%)TP%(MP%):4140:I: :D$;"CLOSE":D$;"OPEN ";SF$;".IDX,D";DR$:(0):I1NR:MIN$LM$:12:1403,22:I;:J1NT%:UP%ĭKY$(J)MIN$MIN$KY$(J):MP%J UP%ĭKY$(J)MIN$MIN$KY$(J):MP%J J:MIN$(127)2660; :D$;"WRITE:4640:(F$(1),1)(127)2180CIN$F$(SK):OPT$IN$:UL%İ4260:_T$(SK)"D"İ4580:2320 KY$(JJ)OPT$:PT%(JJ)IK:JJ$ JJJJ1:TP%(II1)TP%(II)JJ:160:NT%1İ3240:2660` 3100:II:12:50):12:36,5:1403,5:"merging element:";:) Iion :";:UP%ĺ(15);"Ascending";??UP%ĺ(15);"Descending";@(14):8:36,5:1403,5:"Records input :";:36,22LN:1403,22LN:" of ";NR:10:36,5:1403,5:"Sort exchanges :";:II1NT%:JJ1RT%IKIK1:IKNR23408:36,22:1403,22:IK;ogram";+AA$:AA$(13)AA$(5)2020G216,0:AA$(13)5120X (13):1900  216,0:LN((NR)):(12);:25);"**** CODEWRITER SORT UTILITY ****":(147):(Y$,4):36,5:1403,5:4:"Sorting by ";(15);PR$(SK);(14):6:36,5:1403,5:"Direct(13):D$;"OPEN";SF$;"0.D,L81,D";DR$:D$;"READ ";SF$;"0.D,R1":IN$:2080nER(222):ER5ER6ER8ij216,0::(12):"Please put your data disk into drive 1."::"Press ";(15);"RETURN";(14);" to continue, ";(15);"Cntl-E";(14);" to end pr(SK)"#"T$(SK)"$":TY%KL16LEL%(SK)7:NT%((LENR)((0).9))1:RT%(NRNT%.999999):KY$(RT%),PT%(RT%),TP%(NT%1),SP%(NT%):IK0:TP%(1)1:EX1:(13):D$;"CLOSE":NT%11900X(13):D$;"CLOSE":D$;"OPEN";SF$;".TMP,L";(LNKL1)l1960K12)h5:36,0:"Sort ";(15);"a";(14);"scending or ";(15);"d";(14);"escending:":XX%30:YY%5:L%1:400:800::UP%(IN$"A"):(UP%)IN$"D"1640(12):11:1403,33:36,33:"Please wait...":LM$"":UP%LM$(127)LN((NR)):KLL%(SK):TY%T$:T$(SK)"D"1620,5:36,0:1403,0:"What date format do you use: ";(15);"A";(14);"merican or ";(15);"E";(14);"uropean ? ";:XX%53:YY%5:L%1:400:800:AE$IN$:AE$"A"AE$"E"ĺ(7);:1580TT$(SK)"$"T$(SK)"#"T$(SK)"D"İ5280^(29:YY%6:L%1:400:800:IN$"Y"IN$"N"ĺ(7);:1400JIN$"N"2720g(12):3320:PO%(37)2PO%:36,0:1403,0:"Sort by which field ( 1 - ";FF;" ) ? ";:XX%(1403)3:YY%PO%:L%2:400:800:SK(IN$):SK1SKFFĺ(7);:1480(12)What ";(15);SF$;(14);" report number do you want ? ";:XX%(1403)7:YY%4:L%7:400:800:RN%(IN$):IN$"CATALOG"İ5600:1120RN%1ĺ(7);:1140RN$SF$".R"(RN%):(12)8x(12):6:36,0:1403,0:"Do you wish to sort (y/n) ? ";:XX%8XX%33:YY%4:L%25:400:800:SF$IN$:SF$""SF$(27)ĺ(7);:1080dBIN$"CATALOG"İ5600:1060xLIRT390:3480:VDR$"1"ī5700:`(12):6:"Type ";(15);"CATALOG";(14);" to see files currently on disk in drive 1."t4:36,0:1403,0:""OPEN RPT.TMP,D1":D$;"READ RPT.TMP":SF$,RN$:D$;"CLOSE":D$;"DELETE RPT.TMP":RN$SF$".R"(RN$,1):216,0:IRT420:3480216,0$(12):::"What is your screen file name ? ":6:"Type ";(15);"CATALOG";(14);" to see files currently on disk. "E))32):860# HIN$IN$(I1$,ZZ,1)+ \ZZ1 pO D$(4):D$;"PR#3":(12) 4:36,0:1403,0:"What drive will your data disk be in (1/2) ? ";:XX%46:YY%4:L%1:400:DR$IN$:DR$"1"DR$"2"ĺ(7);:920 OD0:(13);D$;"CLOSE":1040yD$; 0II13680 DII32420, XJL%660Z lYY%:1403,XX%J3:JJ1:J1IN$"":660m IN$(IN$,J1) IN$IN$II$:II$;:JJ1:420  (IN$)0880 4I1$IN$:IN$"":ZZ1(I1$):(I1$,ZZ,1)"a"(I1$,ZZ,1)"z"IN$IN$(((I1$,ZZ,1* YY%:1403,XX%J2:II$:II(II$(0))O (II27II5)J1IN$(27):680f II8II127560s J1420 JJ1:J1IN$"":540 IN$(IN$,J1) W%0550 !(30);(32XX%J2);(31YY%);" ";:415 &YY%:1403,XX%J2:" ";:420PT%(I)TE%:10:36,22:1403,22:EX:EXEX1:IS:SSGP:S0221U hK:GP(GP2):200d W%0419 (30);(32XX%1);(31YY%);(0);:IN$"":J1 (30);(32XX%J2);(31YY%);(0);:II$:II(II$(0)):440 YY%:1403,XX%1:(0);:IN$"":J1GP0ı# K1JJGP:SK:IKGP1 TY%240T UP%ĭ(KY$(S))(KY$(I))360x UP%ĭ(KY$(S))(KY$(I))360 280 UP%ĭKY$(S)KY$(I)360 (UP%)ĭKY$(S)KY$(I)360> TE$KY$(S):KY$(S)KY$(I):KY$(I)TE$:TE%PT%(S):PT%(S)PT%(I):%"JP%(777):JP%1JP%25405W%(1271):SP$" ":SP$SP$SP$SP$SP$:F$(101),PR$(101),L%(101),T$(101),TY$(101):90012:36,5:1403,5:"Sorting block : ";II;:36,22((II)):1403,22((II)):" of ";NT%:GP(JJ2):              ;l(4);"RUN SORT.BAS,D1"4;216,0:(7):62050;"Report ";RN$;" created ":I11000:IY:9D(777):(4);"DELETE ";RN$:(4);"SAVE";RN$h:DD262054:b(12);"Please make sure REPORTWRITER is in drive 1."::"Press ";(15);"RETURN";(14);" to continue. ";:A$:A$(13)62050:f63000;g(0)(12);"Please put your Data Disk into drive ";DR$j9*˺::"Press ";(15);"RETURN";(14);" to continue. ";94˾A$:A$(13)520059>˫1921390D(777)95(0):(4);"OPEN RPTNAME,D";D:(4);"READRPTNAME":RN$:(4);"CLOSE"':8(12):(0):11:30)ding Sort program"28 Ⱥ(0):D$;"RUN SORT.BAS,D1"8ȹ216,0:(7);(7);(12);"Please put the disk containing SORT.BAS into drive ";DR$::"Press RETURN to continue. "8ȾA$:A$(13)512308(ȫ511908hɺ(12);:8 ˲ ______ GET GLOBALS ______19%˺57Ǻ:D$"BRUNMENU.BAS,D1"(7ǥ512207ǭDD%2DR$"1"ĺ(12);"Please put your application disk into drive 1."::"Press ";(15);"RETURN";(14);" to continue. ";7ǭDD%2DR$"1"ľA$:A$(13)520058Ⱥ(12):12:36,23:1403,23:"Please wait- Loa(13)511406ǥ51154f6Ǻ(13);D$;"CLOSE":D$;"OPEN MENU.BAS,D1":D$;"READ MENU.BAS":IN$:511556ER(222):ER13Ĺ216,0:511606ǹ216,0:(7);(7);:511206Ǻ(12):12:36,23:1403,23:"Please wait- Loading Menu program"7ǹ43157,2:43186,%1:30:50:A$IN$25ǭA$"r"A$"x"A$"m"51100D5Ǻ(7);:51060V5ǭA$"x"51560i5ǭA$"m"511905Ǻ(12):5:1403,5:"Please put your REPORTWRITER disk in drive 1 now."5Ǣ24:1403,1:"Press ";(15);"RETURN";(14);" to continue "; 6ǾA$:A$e run first."^4jǢ17:36,5:1403,5:"Please enter the letter corresponding to your selection"4tǢ24:36,0:1403,0:"Run a ";(15);"r";(14);"eport, e";(15);"x";(14);"it to Basic, or go to the ReportWriter ";(15);"m";(14);"enu. ";5~YY%24:XX%62:Leport, if you have one,"W3BǺ"or you can return to the REPORTWRITER main menu, or you"3LǺ"can leave the program environment and exit to Basic."3VǺ:5);"If you choose to run another Report, you will be sent" 4`Ǻ"to the Sort program since it must bN$("00"(YY),2)2]2Nò ********* link to main menu program ************************2Pú(12);:12:36,9:1403,9:"Returning to main menu ...";:D$;"BRUN MENU.BAS,D1"28Ǻ(12);69);"AP:4"3=Ǣ5:36,5:1403,5:"You can now either run another RY:YYTM$123:36,0:1403,0:40);i1XX1XX12Ģ23:1403,0:36,0:(7);"Month out of range.":490001YY1YYDT%(XX)((ZZ4)(ZZ4))Ģ23:1403,0:36,0:(7);"Day out of range.":490001IN$("00"(ZZ),2)1IN$IN$("00"(XX),2)2IN$I$"":49130#0IN$(IN$,(IN$)1)<0JJ1:J3J6JJ1u00J9J8:YY%:36,XX%J2:1403,XX%J2:IN$(IN$,5)~0:J$;0DIN$IN$J$:JJ1:J3J6JJ10X490200bXX((IN$,2)):YY((IN$,3,2)):ZZ((IN$,2))1lAE$"e"AE$"E"TMXX:XXY36,XX%1:1403,XX%1:"../../..";1/rJ1:IN$""G/J$:JJ(J$(0))h/(JJ48JJ57)JJ3249200/JJ13JJ5JJ2749085/JJ8JJ12749120/49030/IN$""IN$"000000":/¿(IN$)649030/̿49250/࿭J149020 0迭(IN$)1INz #     õӠ5ԮӠ' ծӠ?ծҠ ΠԮӠ ñӠòӠBóӠ?ôӠ*32II34100 II32II3484/ JL%340] ,YY%:1403,XX%J3:JJ1:J1IN$"":340p @IN$(IN$,J1) TIN$IN$II$:II$;:JJ1 ^W%0100 c84 h |  (IN$)0ı* I1$IN$:IN$"":ZZ1(I1$):(I1$,ZZ,1)"A"(I1$,ZZI(II$(0))2 x(II27II5)J1IN$(27):360I II8II127240V J1100q JJ1:J1IN$"":220 IN$(IN$,J1) W%0230 (30);(32XX%J2);(31YY%);" ";:84 YY%:1403,XX%J2:" ";:100 II13360 W%0ĭIIj W%(1271)6203( *** REPORT.BAS ***9<GPW%099yR(30);(32XX%1);(31YY%);(0);:IN$"":J1T(30);(32XX%J2);(31YY%);(0);:II$:II(II$(0)):120cYY%:1403,XX%1:(0);:IN$"":J1 dYY%:1403,XX%J2:II$:I      膢 ȱ " <67 L  8ij v vo>8 2J2);(0);:II$:II(II$(0)):200K YY%:1403,XX%1:(0);:IN$"":J1v YY%:1403,XX%J2:II$:II(II$(0)) (II27II5)J1IN$(27):440 II8II127320 J1180 JJ1:J1IN$"":300 IN$(IN$,J1) ,W%0310) -@ W%(1271)' *** SC2.BAS ***L(NU$(80):RL0:D$(4):D$;"PR#3"m<Y$"":I180:Y$Y$(95):IPSP$"":I179:SP$SP$" ":Id7540:3840xW%0179(30);(32XX%1);(31YY%);(0);:IN$"":J1$ (30);(32XX%                    tched '(' or ')' ***":: ("*** illegal character ***": 1.BAS ***<::"Press ";(15);"RETURN";(14);" to continue ";FAA$:AA$(13)70KPW%099R(30);(32XX%1);(31YY%);(0);:IN$"":J1 T(30);(32XX%J2);(0);:I-"*** you must enter something ***":f"*** invalid or missing ";SR$;" field number ***":"*** all referenced ke fields must be dollar or numeric ***":"*** referenced ";SR$;" fields must be previously defined ***": "*** misma SU%SU%1:SELF UPDATINGO$A$"VAL(F$("((SU%NF),1)"))":R1$"SU":p8A$"": *** error found ***L21:36,0:1403,0:EX$:PO1PO1`22:36,PO1:1403,PO1:"^":23:36,0:1403,0tEF3780,3800,3820,3840,3860,3880(7):602:36400 T$(KK%)"D"T$(KK%)"A"EF3:3640T4 R1$"VAL(F$("(A$,J2,ND)"))"ZH q\ KK%NCEF4:3640p KK%NC3500 PC%23600 EF4:3640 R1$"CE("(A$,J2,ND)")"  KK%NGEF4:3640 R1$"GL("(A$,J2,ND)")"35400 A$""R1$"SU"ı=D J2A$R1$(A$,JND2):3180_X A$(A$,J1)R1$(A$,JND2)ul POPO(R1$)ND2 2920 J P10EF5:3640  P1P11:2920: sr$="(" P1P11:P10EF5:3640: sr$=")" 2920 KK%NFEF3280 SR$")"3300E SR$"<"SR$">"SR$"="SR$Q$EF6:3640 SR$(A$,J,2):(SR$"KE"SR$"PC"SR$"GT"SR$"SU")3220 KK%((A$,J2)):KK%1EF2:3640 ND((KK%)) SR$"KE"İ3340:3120 SR$"PC"İ3420:3120 SR$"GT"İF$;".PCF":EX$:2880:PC$(I)A$% Ia D$;"READ";SF$;".PCF":IN$:FC%(IN$):PC%0:D$;"CLOSE"| 216,0:D$:F1%11320  , @ D$:SU0:P10:EF0:J0:PO0:A$EX$T A$""EF1:3640h JJ1(A$):POPO1:SR$(A$,J,1)| SR$"("ive ";Dr< "Press ";:(15);:"Return";:(14);:" to continue, ";:(15);:"Ctrl-E";:(14);:" to end program"}P 216,0d AA$:AA$(13)ĺ(13):2500x AA$(5)AA$(27)2660 :D$;"CLOSE":(12): NC02780 I1NC:D$;"READ";S2560F (12):"Please put your application disk into drive 1.":60 (0):D$;"CLOSE":D$;"OPEN";SF$;".PCF,D";D:PC%2:SU%0:2720 (12);:8:1403,0:"Error - PCF file not found"( "Please check that the correct screen file diskette is in drof range *** - ":600 22:1403,0:36,0:2200i$ 23:36,0:1403,0:"Is the above correct (y/n) ? ";8 XX%30:YY%23:L%1:80:420L IN$"y"IN$"n"ĺ(7);:2340` IN$"n"1760t 1740 PC%0:NCNC1:660   2580 D2ĺ(7);:21202PT$(NC)"#":IN$"d"PT$(NC)"$"20:36,0:1403,0:"What is the maximum length of this field (3-15) ? ";XX%51:YY%20:L%2:80:420:LN%(IN$):PL%(NC)LN%LN%2LN%16234022:36,0:1403,0(7);"*** length out "pc";NC$;" description:";< XX%(NC$)17:YY%15:L%25:80c4PD$(NC)IN$:IN$""IN$(27)2080H17:36,0:1403,0:"Is this field dollar ";(15);"d";(14);" or numeric ";(15);"n";(14);" ? ";\XX%39:YY%17:L%1:80:420 pIN$"d"IN$"n"e that this is a valid statement (y/n) ? ";LXX%53:YY%11:L%1:80:420pIN$"y"IN$"n"ĺ(7);:1940IN$"n"17602880:A$""1760PC$(NC)A$:13:36,0:1403,0:"Enter a brief (25 chrs. or less) description of this field:" :60:3840!CH$"d"İ6000:38409$CH$"m"İ640:3840`8CH$"l"İ7160:(12);:6740:3840LCH$"h"İ8060:(12);:6740:3840`CH$"x"ĺ(7);:3840t8860:IN$"y"ĺ(12):6740:3840(12);:12:36,25:1403,25:"Please wa   X%OF2500E (SB$(WT%Y%1),X%1,1)(32)2500W4 X%X%1:2500]H c\ sp X%12500 (SB$(WT%Y%1),X%1,1)(32)2500 X%X%1:2500   24:36,0:1403,0:SP$; IN$CH$:500:CH$IN$ CH$"e"İ391 h 2500|  1 X%X%10:X%OFX%OF; 2500A G X X%OF2500j X%X%1:2500p v0 D Y%PL%Y%BOT%Y%Y%1:2500X WB%BOT%2500l 2380:2500   Y%1Y%Y%1:2500 WT%12500 2440:2500B11CHB CH132800(( CH929808< CH213060HP CH103140Xd CH113240gx CH82900w CH323340 CH1273440 3540   X%1:Y%PL%Y%BOT%Y%Y%1:2500 WB%BOT%İ2380 2500, @ T X%1X%X%8 .L WT%WT%1:WB%WB%1:CRCR1:6740:4` :t b WT%WT%1:WB%WB%1:CRCR1:6740:h n  23:36,37:1403,37:NU$(X%);:36,45:1403,45:NU$(Y%WT%1); Y%:1403,X%1:(0); CH$:B(16384):B1272540  CH(CH$):B211\X%XO%860Ip(SB$(Y%WT%1),X%,LN%)(SP$,LN%)X%X%1:2140R860X^Y%:36,X%1:1403,X%1:FD$;:6920X%2IN$"":2300IN$(SB$(Y%WT%1),X%1)SB$(Y%WT%1)IN$(FD$,LN%)(SB$(Y%WT%1),LN%X%) $ Y%Y%1:860l2440:860"(JY%:36,X%1:1403,X%1:FO$;^XO%X%:X%X%10tX%OF1X%OF1X%XO%860(SB$(Y%WT%1),X%,LN%)(SP$,LN%)X%X%1:2000860  4Y%:36,X%1:1403,X%1:FO$;HXO%X%:X%0 /Y%:36,X%1:1403,X%1:FO$;PYO%Y%:CR0:Y%WT%11860eY%WT%111820Y%YO%CR:Y%PL%860Y%YO%:J1CR:2380:J:860(SB$(Y%WT%2),X%,LN%)(SP$,LN%)18800Y%1Y%Y%1:1760D2440:1760 XY%1403,X%1:FO$;2YO%Y%:CR0:Y%WT%1BOT%860JY%WT%1BOT%1580cY%YO%CR:Y%1860Y%YO%:J1CR:2440:J:860,(SB$(Y%WT%),X%,LN%)(SP$,LN%)1640@Y%PL%Y%Y%1:1520T2380:1520hY%PL%Y%Y%1:860|2380:86N<(SB$(Y%WT%1),X%LN%,1)" "ĢY%:36,X%1:1403,X%1:" ";:X%X%1:860ePX%2LN%1OF860dXNX%LN%OFLN%1:(SB$(WT%Y%1),XN,LN%)(SP$,LN%)1420xXN:860Y%:36,X%1:1403,X%1:FO$;:X%XN:860Y%:36,X%1:10U(SB$(Y%WT%1),X%1,1)" "ĢY%:36,X%LN%2:1403,X%LN%2:" ";:X%X%1:860gX%LN%1860XNX%LN%11:(SB$(WT%Y%1),XN,LN%)(SP$,LN%)1260XN:860Y%:36,X%1:1403,X%1:FO$;:X%XN:860(X%LN%1OF86036,45:1403,45:NU$(Y%WT%1);AY%:36,X%1:1403,X%1:(0);\A(16384):A128920rAA128:16368,0A81160A211320A101480A111720A91960$A1321008A5A272240L920`tX%186),X%,LN%)* FR$FD$:FO$(SP$,LN%):6300b 4"Use the cursor keys, ";(15);"tab";(14);" and "; H(15);"RETURN";(14);". press ";(15);"Ctrl-E";(14);" to stop."; \Y%:36,X%1:1403,X%1:(15);:FR$;:(14);p23:36,37:1403,37:NU$(X%);:(Y%WT%1)100X%/ I1CT%:XY%XY%(I)7606 I (7);"Position the cursor at the start of the field and press ";:(15);:"m";:(14); I11200:I:24:36,0:1403,0:SP$;: TP$TP$(I):FDFD(I):LN%LN%(I):DPDP(I) FD$(SB$(Y%WT%10180 164  ! 3 (IN$)0580 I1$IN$:IN$"":ZZ1(I1$):(I1$,ZZ,1)"A"(I1$,ZZ,1)"Z"IN$IN$(((I1$,ZZ,1))32):560 IN$IN$(I1$,ZZ,1) 0ZZ D X l 24:36,0:1403,0:SP$;:24:36,0:1403,0 XY%(30);(32XX%J2);(31YY%);" ";:164K 6YY%:1403,XX%J2:" ";:180Z @II13440v TII32II34ĭW%0180 ^II32II34164 hJL%420 |YY%:1403,XX%J3:JJ1:J1IN$"":420 IN$(IN$,J1) IN$IN$II$:II$;:JJ1 W%XX%60:YY%24:L%1:160:500A)IN$"y"IN$"n"ĺ(7);:5740T)IN$"y"İ6500f)TP$TY$:6920l)r)x)) " - press ";:(15);:"Return";:(14);:" to continue ";) AA$:AA$(13)5920)424:36,0:1403,0:SP$;:)H)\)*pIN$"":5680*(IN$(SB$(Y%WT%1),X%1)k(0SB$(Y%WT%1)IN$(FD$,PL%(FD))(SB$(Y%WT%1),PL%(FD)X%)(DTT$"$"DP2:6580:5820(X24:36,0:1403,0:SP$;(l24:36,0:1403,0:"Do you want numeric field formatting on this field (y/n) ? ";)*";(7);:5900S'FD$(FD):LFPL%(FD)(FD$)2:LF0FD$(FD$DT$,PL%(FD)):5560s'FD$("pc"FD$DT$,PL%(FD))'TT$PT$(FD):TT$"a"TT$"A"TT$"."'LF05620'FD$(FD$,(FD$)1)TT$'Y%:36,X%1:1403,X%1:FD$;:LN%(FD$) (X%2&,FD1FDNC42400&@PL%(FD)OFX%15480&T24:36,0:1403,0:SP$;:24:36,0:1403,0:"*** field too long ***";(7);:5900&h(SB$(Y%WT%1),X%,PL%(FD))(SP$,PL%(FD))5520'|24:36,0:1403,0:SP$;:24:36,0:1403,0:"*** fields conflict **"ĺ(7);:5180 %xIN$"y"5280R%Y%:36,X%1:1403,X%1:(SP$,(TX$));:4960z%TP$TX$:FD0:LN%(TX$):6920:9240%X%2IN$"":5340%IN$(SB$(Y%WT%1),X%1)%SB$(Y%WT%1)IN$(TX$,(TX$))(SB$(Y%WT%1),(TX$)X%)%%&* - press ";:(15);:"Return";:(14);:" to continue ";(7);X$AA$:AA$(13)5120y$5260: erase and try again$(24:36,0:1403,0:SP$;$<24:36,0:1403,0:"Is this correct (y/n) ? ";$PXX%25:YY%24:L%1:160:500%dIN$"y"IN$"n;:(15);:"Cntl-E";:(14);:" to go back to menu";y#Y%:36,X%1:1403,X%1:(0);:YY%Y%:XX%X%:L%TL%:160:TX$IN$#TX$(27)(TX$)0ı#(TX$,1)" "5160#24:36,0:1403,0:SP$;:24:36,0:1403,0>$"*** Do not start with a space **"n"ĺ(7);:4780%"IN$"y"İ65009"TP$TY$:6920:?"E"$"8TL%OFX%1:IX%OF:(SB$(WT%Y%1),I,1)" "TL%IX%:4960"LI"`24:36,0:1403,0:SP$;:24:36,0:1403,0"t"Enter ";TL%;" character";:TL%1ĺ"s or less; ";4#" or "FD$,LN%)(SB$(Y%WT%1),LN%X%)5!\T$(FD)"#"4760P!pT$(FD)"$"DP2:6580Z!4860v!24:36,0:1403,0:SP$;!24:36,0:1403,0:"Do you want numeric field formatting on this field (y/n) ? ";!XX%60:YY%24:L%1:160:500"IN$"y"IN$FD$(FD$DT$,L%(FD)):4560; FD$("ke"FD$DT$,L%(FD))K LF04620h TT$"A"TT$"a"TT$"." FD$(FD$,(FD$)1)TT$: Y%:36,X%1:1403,X%1:FD$;:LN%L%(FD) X%2IN$"":4680 4IN$(SB$(Y%WT%1),X%1) !HSB$(Y%WT%1)IN$();:5900;X(SB$(Y%WT%1),X%,L%(FD))(SP$,L%(FD))4480l24:36,0:1403,0:SP$;:24:36,0:1403,0:"*** fields conflict ***";(7);:5900FD$(FD):LFL%(FD)(FD$)2TT$T$(FD):TT$"d"TT$"D"FD$FD$("../../..",8(FD$)):4620 LF0(14);:" to continue ";3AA$:AA$(13)4280U24:36,0:1403,0:SP$;:4000[avFD1FDNF4240T$(FD)"d"T$(FD)"D"L%(FD)80L%(FD)OFX%14440D24:36,0:1403,0:SP$;:24:36,0:1403,0:"*** field too long ***";(7,TY$"list"İ7160:(12):6740:40008@TY$"t"4920XTFD((TY$,3)):TY$(TY$,2)thTY$"ke"TY$"d":4360|TY$"pc"TY$"c":542024:36,0:1403,0:SP$;24:36,0:1403,0:(7);"*** undefined field *** - press ";:(15);:"Return";:(15);:"ke";(NF);:(14);]NC0ĺ", ";(15);"pc1";(14);" - ";(15);"pc";(NC);(14);", ";(15);"t";(14);"ext, ";(15);"list";(14);" or ";(15);"Ctrl-E";(14);" to stop) ";XX%(1403)1:YY%24:L%4:160:500:TY$IN$TY$(27)ı&(14);"elp, or e";(15);"x";(14);"it SC:R11 ";8<2500>PDdnxDP1:(SB$(Y%WT%1),X%,1)" "400024:36,0:1403,0:"*** this space is in use ***";(7);:590024:36,0:1403,0"Enter field (";:(15);:"ke1";:(14);:" - ";it - Loading program"C(4);"BLOAD CHAIN,A520,D1":520"SC3.BAS"IO24:36,0:1403,0:(15);"e";(14);"nter a field, ";(15);"d";(14);"elete a field, ";(15);"m";(14);"ove a field, ";.((15);"l";(14);"ist fields, ";(15);"h"; The following options are available to help you format:":9 (15);:"e";:(14);:"nter :"::" The enter option allows you to put a keyboard-entered,": "program-calculated, or text field onto your screen starting":"at the position you lefteen is to allow you";16);"SC:R11a"d8"to specify the format of one ";OF1;" by ";BOT%;" record."s8LR181808"When the report is printed, the record will be duplicated "8LR;" times across the page as you requested earlier."8=9" 7BBPL%:BOT%PL%BBBOT%:WB%BOT%P7I1BB:I:36,OF:1403,OF:(124);:In7BB1:36,0:1403,0:DD$;7,23:36,0:1403,0:(Y$,32);"col: ";NU$(X%);" row: ";NU$(Y%WT%1);(Y$,32);7@7T7h#8|(12);" The purpose of the format scr60:500+6dIN$"y"IN$"n"ĺ(7);:7740=6xIN$"n"7560x6OFOF1:DD$"":I1OF:DD$DD$(95):I:DD$DD$(124)6SG$"":I1OF:SG$SG$(95):I6SB$(BOT%)6(12);:PL%22:WT%1:WB%PL%:X%1:Y%1:CT%06J1BOT%:SB$(J)(SP$,OF):J%characters wide."_519:36,0:1403,0:" How many lines long is each record (1-56) ? ";5XX%50:YY%19:L%2:160:500:BOT%(IN$)5(BOT%1BOT%56ĺ(7);:76805<21:36,0:1403,0:" Is this correct (y/n) ? ";6PXX%30:YY%21:L%1:1 "(I),2):I'4(12);69);"SC:R10"148700}416:36,0:1403,0:" How many records across the page (1-16) ? ";4XX%48:YY%16:L%2:160:500:LR(IN$)4LR1LR16ĺ(7);:76005OF(80LR)::1);" This makes one record ";OF;" C%0I1$"pc"I1$:I2$"pc"I2$63I1$;" - ";PD$(I);f3INC%Ĺ36,38:1403,38:I2$;" - ";PD$(I1);o3:I324:36,0:1403,0:"Press ";:(15);:"Return";:(14);:" to continue ";3$AA$:AA$(13)7460383L3`4tI180:NU$(I)("1)(2 PC%0I1$"ke"I1$:I2$"ke"I2$?24I1$;" - ";PR$(I);n2HINFĹ36,38:1403,38:I2$;" - ";PR$(I1);w2\:I2pNC%NC:PC%1NC%NC%12NC%174402:(15);:"Program calculated fields":(14);2I1NC%2:I1$(I):I2$(I1)3P%(I):FD(I1)FD(I):LN%(I1)LN%(I))1lIR1XY%(I1)XY%:TP$(I1)TP$:DP(I1)DP1X%(I1)X%:Y%(I1)Y%WT%1:FD(I1)FD:LN%(I1)LN%1CT%CT%11111(12):(15);:"Keyboard entered fields":(14);2 I1NF2:I1$(I):I2$(I023:36,0:1403,0:(Y$,32);"col: ";NU$(X%);" row: ";NU$(Y%WT%1);(Y$,32);U0[0a00XY%(Y%WT%1)100X%:CT%0I0:70400ICT%1100XY%XY%(I)70400DXY%(I1)XY%(I):TP$(I1)TP$(I):DP(I1)DP(I)"1XX%(I1)X%(I):Y%(I1)Y":6660,/IN$(SB$(Y%WT%1),X%LN%DP2)/SB$(Y%WT%1)IN$(127)(SB$(Y%WT%1),X%LN%DP):Y%:36,X%1:1403,X%1:FD$;//,/@/TIWT%BBWT%1/hIWT%1:36,0:1403,0/|SB$(I);/(124);:I/BB1:36,0:1403,0:DD$;Oigits to the right of the decimal point (0-";LN$;") ? ";:XX%58(LN$):YY%24:L%2:160:500:DP(IN$).DP0DPLN%ĺ(7);:6520.DP06680.NL%LN%DP1:NL%0DF$"":6620.DF$(FD$,NL%)/FD$DF$(127)(FD$,DP):X%LN%DP21IN$"(J1):DP(J)DP(J1)T-X%(J)X%(J1):Y%(J)Y%(J1):FD(J)FD(J1):LN%(J)LN%(J1):J-XY%(J)0:TP$(J)"":X%(J)0:Y%(J)0:FD(J)0:LN%(J)0:DP(J)0-CT%CT%1-(-<-P-d24:36,0:1403,0:SP$;:LN$(LN%1)h.x24:36,0:1403,0:"How many d%,LN%(I));:24:36,0:1403,0:SP$;:X,`Y%:36,X%1:1403,X%1:(SP$,LN%(I));:6300:^,td,{,X%2IN$"":6340,IN$(SB$(Y%WT%1),X%1),SB$(Y%WT%1)IN$(SP$,LN%(I))(SB$(Y%WT%1),LN%(I)X%)-JICT%:XY%(J)XY%(J1):TP$(J)TP$X%1:1403,X%1:(15);:(SB$(Y%WT%1),X%,LN%(I));:(14);+24:36,0:1403,0:"Are you sure you want to delete it (y/n) ? ";+$XX%44:YY%24:L%1:160:500+8IN$"y"IN$"n"ĺ(7);:6160$,LIN$"n"ĢY%:36,X%1:1403,X%1:(SB$(Y%WT%1),X24:36,0:1403,0:SP$;:24:36,0:1403,0C*XY%(Y%WT%1)100X%P*I1CT%e*XY%XY%(I)6140l*I*(7);"Position the cursor at the start of the field and press ";:(15);:"d";:(14);*I11200:I:24:36,0:1403,0:SP$;:<+Y%:36,                    TX$(160)HT$ZZ:!ish to change your format (y/n) ? ";26);"SC:R13";G#XX%43:YY%24:24:36,42:1403,42:L%1:160:500:IN$"y"IN$"n"ĺ(7);:9140G#G#G$G$(TX$)0ıG,$T1$TX$:TX$"":ZZ1(T1$):(T1$,ZZ,1)(32)TX$TX$(T1$,ZZ,1):9300 H@$TX$#SB$(I);:KLRĺ" ";!Fd#K::IxFx#24:36,0:1403,0:"Do you wish to see your format again (y/n) ? ";23);"SC:R13";F#24:36,45:1403,45:XX%46:YY%24:L%1:160:500:IN$"y"IN$"n"ĺ(7);:9080F#IN$"y"90003G#24:36,0:1403,0:"Do you w at"JE"" the format, if you are not satisfied with it, you will be"E"" able to return to the format screen and change it."E#24:"Press ";(15);"RETURN";(14);" to continue ";E#AA$:AA$(13)8980E(#(12):I1BOT%E<#K1LRFP"( a space between records left to right is automatically provided. ) ND`"TDt"ZD"yD"(12);69);"SC:R12":::D"" You will be given an opportunity to see your format"E"" duplicated across the page. When you are done lookingsked how many times the record will be duplicated across"C8""the page and how many lines long each record will be."::" Remember to allow one space at the top or bottom of the"HDL""format if you want a space between records above other records.": You will now be given the opportunity to specify the"B""format of one record. When the report program runs,the":"format will be duplicated both horizontally and vertically"9C$""as many times as will fit on a page or screen. Now you will":"be an your format is totally completed, use this option to":"leave the format screen and continue with the process of report":A!"specification."A!24:"Press ";(15);"RETURN";(14);" to continue. ";A!A$:A$(13)8620A!A!A!:B!(5):"eld":"descriptions. This option is also available during the"f@H!"enter phase by typing 'list'.":@\!(15);:"h";:(14);:"elp :"::" This option will give you these pages of explanation.":{Ap!"e";:(15);:"x";:(14);:"it :"::" Whep over it."::"When the field is correctly positioned, press 'Ctrl-E.'"? !24:"Press ";(15);"RETURN";(14);" to continue. ";? !A$:A$(13)8480?@4!(12):(15);:"l";:(14);:"ist :"::" This option allows you to list the 'ke' and 'pc' fipress 'm'. This field will be":"highlited and you will be able to use the tab, cursor keys"> "and return key to move the field anywhere on the screen":"where it will fit. If you run into another field from above"H? "or below, your field will jum before it will occur so that accidental":"deletion is avoided.":= (15);"m";(14);"ove :"::" The move option allows you to move any field on the":"format screen. To do this, place the cursor over the first"]> "character in the field and (12):(15);:"d";:(14);:"elete :"::" The delete option allows you to delete any field on the":"format screen. To do this, place the cursor over the first"C= "character in the field and press 'd'. You will be asked to":"confirm the deleteinted.":;X " If you choose to enter text, the maximum length of your text":"will be displayed, and you will be allowed to type directly":"on the format screen.";l 24:"Press ";(15);"RETURN";(14);" to continue. ";; A$:A$(13)8320< your cursor.":0 :" If you choose to enter a 'ke' or a 'pc' and you wish to see":"the prompts, type 'list'. To enter a field, type its number." ;D "If a field will not fit in the desired location, a message":"explaning the situation will be pr0ĺ", pc1-pc";LC$;X4", 'list', or ";:(15);:"Ctrl-E";:(14);:" to end) ? ";HYY%10:XX%(1403)3:L%4:80:420:E$"bad field":IN$(27)2380\IN$"list"İ820:2020pFT$(IN$,2):KK%((IN$,3)):(FT$"ke"FT$"pc")KK%12320(12);69);"SC:R18":::CA%0:" Your summary may contain totals, averages, minima,":" and/or maxima of any or all dollar and numeric fields."1880 10:36,0:1403,0:(15);:TS$;:(14);:" for which field (ke1-ke";LF$; NC0:MN$;:19:36,0:1403,0:MX$;:21:36,0:1403,0:GL$;:l24:36,0:1403,0:"Do you wish to do the summary specification again (y/n) ? ";XX%59:YY%24:L%1:80:420:IN$"y"IN$"n"ĺ(7);:1900IN$"y"1300SM%SM%CA%:2440190024:36,0:1403,0:(7);IN$;" already included in ";TS$;" - Press ";:(15);:"Return";:(14);:" to continue ";0A$:A$(13)1840D24:36,0:1403,0:SP$;:9X13:36,0:1403,0:TT$;:15:36,0:1403,0:AV$;:17:36,0:1403,1:CA%1:MN$MN$" "IN$:1880:1600H|MN$TS$MN$TS$" NONE":1880bTS$"Maximum":MX$TS$|2060:IN$(27)1760MX%(KK%)1İ1820:1700MX%(KK%)1:CA%1:MX$MX$" "IN$:1880:1700MX$TS$MX$TS$" NONE":1880(NG0)OV%S$"Average":AV$TS$.2060:IN$(27)1560KAV%(KK%)1İ1820:1500~AV%(KK%)1:CA%1:AV$AV$" "IN$:1880:1500AV$TS$AV$TS$" NONE":1880,TS$"Minimum":MN$TS$@2060:IN$(27)1660TMN%(KK%)1İ1820:1600%hMN%(KK%)%(I)0:MN%(I)0:MX%(I)0:IUPAV$"":MN$"":MX$"":GL$"":NG0āI1NG:GL%(I)0:ImdTS$"Total":TT$TS$x2060:IN$(27)1460TT%(KK%)1İ1820:1400TT%(KK%)1:CA%1:TT$TT$" "IN$:1880:1400TT$TS$TT$TS$" NONE":1880T,AV%(NFNC),MN%(NFNC),MX%(NFNC)(12);69);"SC:R18":::CA%0:" Your summary may contain totals, averages, minima,":" and/or maxima of any or all dollar and numeric fields."(LF$(NF):LC$(NC):LG$(NG)<I1NFNC:TT%(I)0:AVI):I2$(I1)>`I1$"gt"I1$:I2$"gt"I2$:I1$;" - ";GD$(I);mtINGĹ36,38:1403,38:I2$;" - ";GD$(I1);v:I24:36,0:1403,0:"Press ";:(15);:"Return";:(14);:" to continue ";AA$:AA$(13)1200!TT%(NFNC):"Program calculated fields":(14);GI1NC2:I1$(I):I2$(I1)xI1$"pc"I1$:I2$"pc"I2$:I1$;" - ";PD$(I);INCĹ36,38:1403,38:I2$;" - ";PD$(I1);:I$NG111808:(15);:"Grand total fields":(14); LI1NG2:I1$(%İ1280 6980  ) 4(12);X H(15);:"Keyboard entered fields":(14);z \I1NF2:I1$(I):I2$(I1) pI1$"ke"I1$:I2$"ke"I2$:I1$;" - ";PR$(I); INFĹ36,38:1403,38:I2$;" - ";PR$(I1); :I NC11060%:(15);(I1$,ZZ,1)(34)QQ XZZ:% l< D$(4):D$;"PR#3"q QF1: INITIALIZE TO STATE OF DISALLOWING QUOTES DT%(12):I112:DT%(I)31:I DT%(2)29:DT%(4)30:DT%(6)30:DT%(9)30:DT%(11)30:6260:2760 TS$"Grand total":GL$TS$ SM%OVZZ,1)"A"(I1$,ZZ,1)"Z"IN$IN$(((I1$,ZZ,1))32):480U IN$IN$(I1$,ZZ,1)_ ZZ:e y Q0:(IN$)0ı I1$IN$:IN$"":ZZ1(I1$):Q(I1$,ZZ,1)"a"(I1$,ZZ,1)"z"IN$IN$(((I1$,ZZ,1))32):580 0IN$IN$(I1$,ZZ,1) DQF)II39ĭW%01003 II32(II34QF)II3984B JL%340p ,YY%:1403,XX%J3:JJ1:J1IN$"":340 @IN$(IN$,J1) TIN$IN$II$:II$;:JJ1 ^W%0100 c84 h |  (IN$)0ı= I1$IN$:IN$"":ZZ1(I1$):(I1$,(II$(0))/ x(II27II5)J1IN$(27):360F II8II127240S J1100n JJ1:J1IN$"":220 IN$(IN$,J1) W%0225 (30);(32XX%J2);(31YY%);" ";:84 YY%:1403,XX%J2:" ";:100 II13360 II32(II344= W%(1271)6400( *** SC3.BAS ***6<DPW%099vR(30);(32XX%1);(31YY%);(0);:IN$"":J1T(30);(32XX%J2);(31YY%);(0);:II$:II(II$(0)):120cYY%:1403,XX%1:(0);:IN$"":J1 dYY%:1403,XX%J2:II$:II)):3980:VN$(NN(K))QA$:K)'(A%03920_'<K1A%:QQ$"va"(NA(K)):3980:VA$(NA(K))QA$:Kn'PD%03960'dK1D%:QQ$"vd"(ND(K)):3980:VD$(ND(K))QA$:K'x(20:36,0:1403,0:"Enter the question you want to be asked to set ";QQ$:22:36,in all sections of this report."g&9:36,0:1403,0:" Do you want an overall summary (y/n) ? ";&XX%45:YY%9:L%1:80:420:IN$"y"IN$"n"ĺ(7);:3720&OV%0:IN$"y"OV%1&740&&&N%03880'K1N%:QQ$"vn"(NN(K"":NA(J)0:J9% D%0āJ1D%:VD$(ND(J))"":ND(J)0:JC% 2960K%SCQ%$W%8%LOV%0:NS1OV%PS(1):PS(1)0:SM%0:3780%`(12);69);"SC:R17"::: &t" An overall summary is a summary of all records":" accepted for output 11$ PS(SC)0:IN$"s"IN$"b"PS(SC)1:SM%1$ 22:36,0:1403,0:"Is the above correct (y/n) ? ";:XX%30:YY%22:L%1:80:420:IN$"y"IN$"n"ĺ(7);:3480$ IN$"y"3600$ N%0āJ1N%:VN$(NN(J))"":NN(J)0:J% A%0āJ1A%:VA$(NA(J))0S#H 20:36,0:1403,0:"Do you want ";(15);"r";(14);"ecords printed, a ";(15);#R "s";(14);"ummary printed, or ";(15);"b";(14);"oth ?";#\ XX%59:YY%20:L%1:80:420:IN$"r"IN$"s"IN$"b"ĺ(7);:3400$p PF(SC)0:IN$"r"IN$"b"PF(SC)(7);:3180" IN$"n"2960/" A$"-1":3380" 18:36,0:1403,0:"Are you sure that this is a valid expression (y/n) ? ";" XX%54:YY%18:L%1:80:420" IN$"y"IN$"n"ĺ(7);:3280" IN$"n"2960" 4120:A$""3520#4 CR$(SC)A$:384;":"::"accept if :";`!0 XX%13:YY%16:L%50:QF0:80:QF1:520:EX$IN$:IN$""IN$(27)3120!D IN$"LIST"PC%2:820:2980!X IN$"ALL"3280!l 18:36,0:1403,0:"Are you sure (y/n) ? ";! XX%22:YY%18:L%1:80:420 " IN$"y"IN$"n"ĺ8/24/58@) OR ke1>";Q$;"m";Q$:"accept if : list *** to list field descriptions ***"  "accept if : all *** to accept all records ***"::"specify the conditions under which a record ";! "will be accepted for section ";SClculated ";{ "vn1 - variable numeric":"gt3 - grand total ";:"va3 - variable alpha-numeric" Q$;"text";Q$;" - string constant ";:"vd1 - variable date"::"examples:"a "accept if : NOT((pc1"time a report is run. Variable date 1 (vd1) is predefined as":"'What is today's date ?'"u>{>>0>D(12);69);"SC:R20"::" A report number is a whole number larger than 0"7?X" which may be up to three die report an overall summary may be"="included. An overall summary is a summary of all records accepted":"in all sections.":>" Variable numerics, alphanumerics, and dates can be used in":"the summary specifications. The user will set thei"balances.":<" At the end of each section, a summary of that section":"may be printed. A summary contains totals, averages, minima, and/or"#="maxima of all or selected numeric fields in the selected records."::" At the end of the entir|;|" Your report may have different sections. A section":"is a group of records that meet some standards that you"<"set. You may, for example, have a section for accounts with":"negative balances, and a section for accounts with positive":0:1403,0:(0);:YY%2:XX%1:L%79:80:HD$IN$:HD$""HD$(27)6620a:24:36,0:1403,0:SP$;:24:36,0:1403,0:"Are the headings correct (y/n) ? ";:XX%34:YY%24:L%1:80:420:IN$"y"IN$"n"ĺ(7);:6660:,IN$"n"6480:@:T;h403,09xI1BB:K1LR19SB$(I);:KRĺ" ";=9K::I924:36,0:1403,0:"Enter the title and heading, following each by ";:(15);:"Return";:(14);91:36,9:1403,9:(0);:YY%1:XX%10:L%54:80:PH$IN$:PH$""PH$(27)6600E:2:36,as column headings. Remember to center everything.":24:"Press ";:(15);:"Return";:(14);:" to continue ";8(AA$:AA$(13)64408<BB20:BBBOT%BBBOT%8P(12);:"01/01/84";56);"sect. 10 pg. 12":9dI18:"----------";:I:4:36,0:17500LN;"DATA ";Q$;(TP$(I),LE%1);Q$:LNLN2KI:17500LN;"DATA 0 , 0"c0CN0:CA0:CD0:CT0D" 35000 PRINT CHR$(12)"XI1100lVN$(I)""2060CTCT1:CNI35000CT80;"PRINT CHR$(12):PRINT ";Q$;VN$(I);Q$35002CT80;"XX%="NS0J1:1700hJ1NSG|175002(IJ2);"DATA";PF(J);",";PS(J)NJ_LN2(IJ2){I1CT%:FD(I)0182017500LN;"DATA";I;",";:LNLN2(TP$(I))60ĺ"1,";Q$;TP$(I);Q$:1820LE%(TP$(I))2:"2,";Q$;(TP$(I),LE%);Q$-1650510I;"RETURN"I'I1CT%Q175002(I1);"DATA";X%(I);",";Y%(I)XIHD$(HD$SP$,79):PH$" "(PH$SP$,55)175002(I1);"DATA ";Q$;(HD$,40);Q$,175002I;"DATA ";Q$;(HD$,41);Q$@175002(I2);"DATA ";Q$;PH$;Q$T6005;"ON SC -";KNL%;"GOSUB";-LL%11320<J1LL%1Z6500(NL%KJ1)10;",";aJ|(6500(NL%KLL%1)10<LL%0ĺ10NL%6010;"RETURN"PLL%0ĺ10NL%6000;"RETURN"dNS01480xI0NS1650010I;"ME%=";CR$(I1) THEN ";10I6010710I6005;"ON SC -";KI;"GOSUB";EK11120R$J1K1n86500(IKJ1)10;",";uLJ`6500((I1)K1)10tILL%0134010I6000;"IF SC <";KNL%1;"OR SC >";KNL%LL%;"THEN";10(I1)600010I45(I1)8000;"RETURN".HNC0I1:920:\I1NCcp10(I1)28000;"CE(";I;") =";PC$(I)jI10(I1)28000;"RETURN"K8:NL%NSK:LL%NSKNL%:KKK:I0NL%01160I0NL%110I6000;"IF SC <";KI1;"OR SC >";K(I1);""D"7400"DA$=F$(";FD(I);"):GOSUB 37000 :";R" FD$(";I;", R ) = DA$":800l"FD$(";I;", R ) = ";TP$(I)"d"ĺ"RIGHT$(SP$+F$(";FD(I);"),";LN%(I);")":800 TP$(I)"c"ĺ"RIGHT$(SP$+LEFT$(STR$(CE(";FD(I);")),";LN%(I);"),";LN%(I);")" IFD(I)0ĺ"REM":800$0DP(I)0660MD"FW=";LN%(I);":DP=";DP(I);":DO$= ";tXTP$(I)"d"ĺ"F$(";FD(I);")";:640lTP$(I)"c"ĺ"STR$(CE(";FD(I);"))";":GOSUB 36000 : FD$(";I;", R ) = DO$":800TP$(I)"d"740T$(FD(I))"d"T$(FD(I))DS***"G" 150 MY =";BOT%;": REM *** NUMBER OF LINES PER RECORD ***"W"4000 REM"" 152 DD%=";DD%;":REM *** 2=DATA ON SEPARATE DISK/ 1=SAME DISK ***"" 155 AE$ = ";Q$;AE$;Q$;" : REM *** DATE FORMAT ***"I1CT%80005(I1);*** OFFSET BETWEEN CORRESP. FIELDS ***"d|" 130 CT% =";CT%;": REM *** NUMBER OR PRINT FIELDS ***"" 135 NF =";FC%;": REM *** NUMBER OF FIELDS ***"" 140 NC =";NC;": REM *** NUMBER OF PC'S ***"" 145 NG=";NG;":REM *** NUMBER OF GLOBAL FIELR$"1"D2DD%1DR$"1"4D2DD%2DR$"2"j," 110 PD$ = ";Q$;PD$;Q$:" 112 TL$ = ";Q$;TL$;Q$@" 115 DR$ =";(34);DR$;(34);": REM *** DATA FILE DRIVE *** T" 120 LR =";LR;": REM *** RECORDS PER LINE ***"'h" 125 OF =";OF1;": REM XX%+J-2);CHR$(31+YY%);CHR$(0);:GETII$:II=ASC(II$+CHR$(0))" "37 ?CHR$(30);CHR$(32+XX%+J-2);CHR$(31+YY%);";Q$;" ";Q$;":GOTO31" " 100 NS =";NS;": REM *** NUMBER OF SECTIONS ***" " 105 SF$ = ";Q$;SF$;Q$;" : REM *** BASE FILE NAME ***"D1D 279H "49020PRINTCHR$(30);CHR$(32+XX%+J-2);CHR$(31+YY%);CHR$(0);" "49135PRINTCHR$(30);CHR$(32+XX%+J-2);CHR$(31+YY%);";Q$;".";Q$;";:GOTO49020" "30 ?CHR$(30);CHR$(32+XX%-1);CHR$(31+YY%);CHR$(0);:IN$=";Q$;Q$;":J=1": "31 ?CHR$(30);CHR$(32+KE 1403,XX%+J-2:GETII$:II=ASC(II$+CHR$(0))"x "37 VTABYY%:POKE36,XX%+J-2:POKE1403,XX%+J-2:PRINT";Q$;" ";Q$;";:GOTO31" "49020VTABYY%:POKE36,XX%+J-2:POKE1403,XX%+J-2" "49135VTABYY%:POKE36,XX%+J-2:POKE1403,XX%+J-2:PRINT";Q$;".";Q$;";:GOTO49020"D:D$;"DELETE";RN$:D$;"OPEN";RN$;",D";D:D$e (12):12:36,25:1403,25:"Generating Report ";RN$ (0):D$;"WRITE";RN$ "NEW" "POKE 43186,5" W%0273 "30 VTAB YY%:POKE 1403,XX%-1:?CHR$(0);:IN$=";Q$;Q$;":J=1"+ "31 VTAB YY%:PODD%2:100 0DD%1 <1009 P(7):(7):216,0:120X dRN$NM$:D$(4):D$;"PR#3"e xD2180 (12)::"Please put your application disk in drive 1.":::"Press ";(15);"RETURN";(14);" to continue. ";:AN$:AN$:(0), D$;"OPEN";RN$;",D";2);Q$;"; GN(";I;")"'(0MX%(I)04520R(DSMSM1:SM15(SM15)BA11000:5140(X11000SM80;"PRINT";Q$;"OVERALL MAXIMUM ";(lINFĺPR$(I);:LE(PR$(I))(INFĺPD$(INF);:LE(PD$(INF))((SP$,PMLE2);Q$;"; GX(";I;")")AV%(I)0464NF);:LE(PD$(INF)):'(SP$,PMLE6);Q$;"; GT(";I;")"M'MN%(I)04400x'SMSM1:SM15(SM15)BA11000:5140'11000SM80;"PRINT";Q$;"OVERALL MINIMUM ";'INFĺPR$(I);:LE(PR$(I))'INFĺPD$(INF);:LE(PD$(INF))((SP$,PMLE" 11005 PRINT CHR$(32):PRINT";Q$;"OVERALL SUMMARY ";Q$U&" 11008 PRINT CHR$(32)"d&,I1NFNCw&@TT%(I)04280&TSMSM1:SM15(SM15)BA11000:5140&h11000SM80;"PRINT";Q$;"GRAND TOTAL ";&|INFĺPR$(I);:LE(PR$(I))'INFĺPD$(II%xSM514000@%"3005 IF O$=";Q$;"p";Q$;"THEN GOSUB 9000"q%2510SM2;"PRINT CHR$(32):PRINT STR$(CS);";%Q$;" RECORDS PROCESSED";Q$%2520SM2;"RETURN"%SM0:OV%ĺ"11000 REM ":4900%" 11000 GOSUB 9000 : REM *** NEW PAGE ***"8&(SP$,PMLE2);Q$;"; MX(";I;")"2$AV%(I)03940\$SMSM1:SM15(SM15)BA2500:5140$2500SM2;"PRINT";Q$;"AVERAGE ";$(INFĺPR$(I);:LE(PR$(I))$<INFĺPD$(INF);:LE(PD$(INF))$P(SP$,PMLE2);Q$;"; TT(";I;")/(CS+(CS=0))"%d$(I))+#LINFĺPD$(INF);:LE(PD$(INF))P#`(SP$,PMLE2);Q$;"; MN(";I;")"c#tMX%(I)03820#SMSM1:SM15(SM15)BA2500:5140#2500SM2;"PRINT";Q$;"MAXIMUM ";#INFĺPR$(I);:LE(PR$(I))#INFĺPD$(INF);:LE(PD$(INF))$;"PRINT";Q$;"TOTAL ";6" INFĺPR$(I);:LE(PR$(I))\" INFĺPD$(INF);:LE(PD$(INF))" (SP$,PMLE4);Q$;"; TT(";I;")"" MN%(I)03700"SMSM1:SM15(SM15)BA2500:5140"$2500SM2;"PRINT";Q$;"MINIMUM ";#8INFĺPR$(I);:LE(PRF SC<>1 OR PF(1) THEN GOSUB 9000:GOTO 2500"B! "2498 GOSUB 9100"i!4 "2500 LP=0:PRINT";Q$;"SECTION #";!H Q$;";SC;";Q$;" SUMMARY";Q$!\ " 2505 PRINT CHR$(32)"!p I1NFNC! TT%(I)03580! SMSM1:SM15(SM15)BA2500:5140" 2500SM2 MN(";I;") < GN(";I;") ";; X "THEN GN(";I;") = MN(";I;")"N l MX%(I)03260Z SMSM1 2000SM2;"IF MX(";I;") > GX(";I;") "; "THEN GX(";I;") = MX(";I;")" I SM%4040 SM0 "2490 IF NOT PS(SC) THEN RETURN"+! "2495 LP=-1:I 4010SM80;"RETURN" SM0_ " 2000 CO = CO + CS":"2002 IF CS=0 THEN RETURN":OV%3280s SM5:I1NFNC TT%(I)0AV%(I)03100 SMSM1 2000SM2;"GT(";I;") = GT(";I;") + TT(";I;")" MN%(I)031800 SMSM1 D 2000SM2;"IFAL(F$(";I;"))"( INFĺ"CE(";INF;")"; MX%(I)02940G SMSM1^ 4000SM80;"IF ";| INFĺ"VAL(F$(";I;"))";, INFĺ"CE(";INF;")";@ " > MX(";I;") THEN MX(";I;") = ";T INFĺ"VAL(F$(";I;"))"h INFĺ"CE(";INF;")"| I00SM80;"TT(";I;") = TT(";I;") + ";A INFĺ"VAL(F$(";I;"))"[( INFĺ"CE(";INF;")"n< MN%(I)02780zP SMSM1d 4000SM80;"IF ";x INFĺ"VAL(F$(";I;"))"; INFĺ"CE(";INF;")"; " < MN(";I;") THEN MN(";I;") = "; INFĺ"VA;")"'` CD0ĺ" 197 DIM VD$(";CD;")"Gt SM1:PM0:(SM%OV%)2960V I1NFNC TT%(I)0AV%(I)0MN%(I)0MX%(I)02940 INFLE(PR$(I)):LEPMPMLE INFLE(PD$(INF)):LEPMPMLE TT%(I)0AV%(I)02620 SMSM1$ 40X%=";(VD$(I))2;":YY%=2";.":GOSUB 49000"}35005CT80;" IF IN$ = ";Q$;"000000";Q$;" THEN?CHR$(7);:GOTO";35000CT8035006CT80;"VD$(";I;") = IN$" I$ 35010CT80;"RETURN"8 CN0ĺ" 195 DIM VN(";CN;")"L CA0ĺ" 196 DIM VA$(";C"XX%=";(VA$(I))2;":YY%=2";J\":L%=";20;":GOSUB 30 : VA$(";I;") = IN$"p35004CT80;"IF IN$ = ";Q$;Q$;" THEN ?CHR$(7);:GOTO ";35000CT80VD$(I)""2320CTCT1:CDI35000CT80;"PRINT CHR$(12):PRINT ";Q$;VD$(I);Q$35002CT80;"X;(VN$(I))2;":YY%=2";H":L%=";20;":GOSUB 30 : VN(";I;") = VAL(IN$)"35004CT80;"IF IN$ = ";Q$;Q$;" THEN ?CHR$(7);:GOTO ";35000CT80 VA$(I)""2180 CTCT1:CAI435000CT80;"PRINT CHR$(12):PRINT ";Q$;VA$(I);Q$;";"H35002CT80;ng constants *****3TS%(25): SECTION CRITERIONSP$"":DD$"":Z$"":TS$"":I179:SP$SP$" ":DD$DD$"-":Z$Z$"0":TS$TS$"*":ISS$"":QQ179:SS$SS$" ":QQ+ ***** initialize variables *****,I112:DT%(I)31:I2-FLG%0:QQ4HH1:HP56HH: *** height for screen,printer ***Y WD80: *** printer width *** F$(NF),L%(NF),X%(CT%),Y%(CT%),FD$(CT%,LR2),PF(NS),PS(NS),CE(NC),GL(NG),DT%(12) SS%NFNC:TT(SS%),MN(SS%),MX(SS%),GT(SS%),GN(SS%),GX(SS%) ***** stri1(I1$):(I1$,ZZ,1)"A"(I1$,ZZ,1)"Z"IN$IN$(((I1$,ZZ,1))32):53e 4IN$IN$(I1$,ZZ,1)m 5ZZs 6 7 _______________________________________________ PW%(1271):D$(4)::D$;"PR#3" c ***** numeric constants *****5 HS2IN$(IN$,J1) &II1344+ 'II32319 (JL%43f )YY%:1403,XX%J3:JJ1:J1IN$"":43y *IN$(IN$,J1) +IN$IN$II$:II$;:JJ1:31 , 1 __________ CONVERT TO LOWER CASE ______________ 2(IN$)054M 3I1$IN$:IN$"":ZZAN$(13)17U (12):(0):12:36,25:1403,25:"Creating Report ";RN$;" "[ c 80  __________ KEYBOARD INPUT SUBROUTINE __________ (II27II5)J1IN$(27):44 !II8II12738 "J131 #JJ1:J1IN$"":37 $20,63000:"NOMONICO":"RUN 62000":(4);"CLOSE"V (0):(4);"MONICO":(4);"PR#3"{ (0):(4);"EXEC ";RN$;",D";D: (7):216,0:2 (12):"Please put your ";DK$;" disk into drive 1."::"Press ";(15);"RETURN";(14);" to continue.";:AN$:63D(4);"PR#3":(0):12:36,25:1403,25:"Creating Report ";RN$OD23iDK$"application":17r16(0):(4);"OPEN RPTNAME,D";D:(4);"WRITE RPTNAME":RN$:(4);"CLOSE" 777,D:(0):(4);"APPEND";RN$;",D";D:(4);"WRITE";RN$0       !!! ! ! ! ! !!!!!!!!!""" " " " " """""""""     ";(14);" to continue. ";:AN$:AN$.0l5780g0v(12):11:25);"Please wait - loading program ..."0(0):D$;"BLOAD CHAIN,A520,D1":520"SC5.BAS"0(7):(7):216,0:5720) ? ";.A$:A$"Y"A$"Y"A$"n"A$"N"45 /A$"Y"A$"y"";Q$;" ";Q$;"+STR$(PC),2)"]/" 9120 PRINT PS$":" 9125 IF LP THEN 9135":"9130 PRINT HD$"s/,"9135 PRINT DD$"/@"9140 RETURN"/O(4);"CLOSE"/TD25740#0X(12):"Please put your ReportWriter disk into drive 1.":::"Press ";(15);"RETURN1."9100 HC=0:RC=0:RETURN":(4);"CLOSE":5455S."160 HH=3:REM HEADER HEIGHT"q."9100 PC=PC+1:HC=0:RC=0"."9105 PS$=DY$+PH$"."9110 IF SC<=NS THEN PS$=PS$+";/Q$;"SECT. ";Q$;"+RIGHT$(";Q$;" ";Q$;"+STR$(SC),2)+";Q$;" PG. ";Q$;"+RIGHT$(Q$;"Press ";Q$;";:PRINT CHR$(15);:?";Q$;"Return";Q$;";:PRINT CHR$(14);:?";Q$;" to continue ";Q$;";"-<BA10SM6;"GETAA$:IF AA$<>CHR$(13) THEN";BA10SM6-PBA10SM8;"PRINT CHR$(12);:GOSUB 9100"-d-xPG%5300."160 HH=0:REM HEADER HEIGHT";"DA$ = F$(";I;") : GOSUB 37500 : F$(";I;") = DA$"?,LNLN10F,IW,LN;"RETURN"a,5240,__________ 'PRESS RETURN TO CONTINUE' __________ ,BA10SM2;"IF O$=";Q$;"p";Q$;" THEN";BA10SM10c-(BA10SM4;"VTAB 24:POKE36,0:POKE1403,0:?";(32):PRINT STR$(CO);";6+Q$;" RECORDS PROCESSED";Q$t+$11020SM80;"PRINT CHR$(32):PRINT";Q$;"END OF REPORT";Q$+811025SM80;"IF O$=";Q$;"p";Q$;" THEN PRINT CHR$(12);"+L11030SM80;"RETURN"+`LN12000+tI1NF+T$(I)"D"50602,LN00-*pSMSM1:SM15(SM15)BA11000:5140^*11000SM80;"PRINT";Q$;GD$(I);:LE(GD$(I))u*LEPM17LEPM17*(SP$,PMLE18);Q$;"; GL(";I;")"*I*SM514860*"11505 IF O$=";Q$;"p";Q$;" THEN GOSUB 9000"+11010SM80;"PRINT CHR$0,)SMSM1:SM15(SM15)BA11000:5140T)11000SM80;"PRINT";Q$;"AVERAGE ";u)INFĺPR$(I);:LE(PR$(I)))INFĺPD$(INF);:LE(PD$(INF))) (SP$,PMLE10);Q$;"; GT(";I;")/(CO+(CO=0))") I)4NG04820)HI1NG*\GL%(I)048 printing subroutine ******************9XLN1MY:FL0FbI1CT%flY%(I)LNFLFL1:PT%(FL)ImvIPS$"":FL0PS$(32):7095I1R1:S$""J1FL(X%(PT%(J))(S$)1)1QQ$"":7070QQ$(SP$,X%(PT%(J))(S$)1)S$ ***************** end of section routine ************************* ************* accumulate section totals ***************************n ******* subroutine to check for meeting selection criteria ****p'W ********************36,0:1403,0:"Press ";(15);"RETURN";(14);" to continue ";UNAA$:AA$(13)590`X(12)b6:36,0:1403,0:"Do you wish to run this report again ? ";lXX%39:YY%6:L%1:30:50:IN$"y"IN$"n"ĺ(7);:610vIN$"y"Ĭ51000C ds,R1:RCRC19-507: loop back for next record].R1İ7000: output leftovers/FLG%1:2000: end of section and summary0PC0::D$;"CLOSE";SF$;".IDX":SC5LP1:11000: overall summary:O$"p"ĺ:D$;"PR#3":600<D24: for comparison66000: check selection criteriaDME%557rCSCS1:4000: update totals, max, min!PF(SC)557: no records output for this section&8000: set up output-array(RR1:RLR557+7000: output the recorSC)FLG%118000;(0):D$;"OPEN";SF$;".IDX,D";DR$UD$;"READ";SF$;".IDX"IK$:IK(IK$):D$:(IK$,1)(127)558RCRPPF(SC)İ9000: new page40000: get next record 28000: calculate pc's 12000: convert datesAA$(13)ĺ(12):480051000: end a216,0:PC0:O$"p"ĺ:D$;"PR#1":(9)"80N"(12);:TS%(1)PC0:500PF(1)İ9100 ************** main loop ********************FLG%0:SC1NS:R1:(TS%(SC))560 PS(SC)PF((0):491SD$"OPEN";SF$;"0.D,L81,D";DR$:D$;"READ ";SF$;"0.D,R1":R$:D$:496~"Insert data file disk in drive ";DR$"press ";(15);"RETURN";(14);" to continue, ";(15);"Cntl-E";(14);" to end program";AA$:AA$(5)AA$(13)493:"Set printer to top of form and press ";(15);"RETURN";(14);" ";_AA$:AA$(13)472(12);:O$"p"ĺ"printing report...":485::"To begin the report listing, press ";(15);"RETURN";(14);" ";AA$:AA$(13)477(12) e up your forms properly."X5:36,0:1403,0:"Would you like a test page (y/n) ? ";XX%36:YY%5:L%1:30:50:TP$IN$:TP$"y"TP$"n"ĺ(7);:452TP$"y"İ10000: *** test page ***(12):"Your report is now ready to be printed."F$IN$&O$"p"O$"s"ĺ(7);:4026O$"s"425WHTHP: *** if printer ***O$"s"DV3:HTHS: *** if screen ***RP(HTMY):RP0RP1O$"s"476(12);:"At this point, you may print a test page that will":"help you lin22I5:IP30`FLG%1:346+|FLG%400p(12):(7):"No sections selected !":FLG%0:QQ1600:QQ:340{(12)1:36,0:1403,0:"Would you like your report sent to the screen ";"or the printer (s/p) ? ";:XX%70:YY%1:L%1:30:50:O4);" to exit ) : ";9[XX%35:YY%4:L%2:30:IN$""380]\OO(IN$):OONSOO1ĺ" ":346]TS%(OO)1ĺ(7):1:"*** Section ";OO;" already selected ***":QQ1600:QQ:1:SS$:346^(0):TS%(OO)1:II2:I:IP:"Section : ";(15);OO;(14) _Iport sections (y/n) ? ";6VXX%49:YY%3:L%1:30:50VWO$IN$:O$"y"O$"n"340~XO$"y"āQQ1NS:TS%(QQ)1:QQ:400Y(12):I5:IP1Z3:"Enter the section number(s) you wish to include in this ":"report (1-";NS;" or ";(15);"RETURN";(100: *** read screen & global file ***mELP0:CO0:SC1:OD0:Z1SS%:GT(Z)0:GX(Z)1E32:GN(Z)1E32:ZH35000: *** get vn, va, & vd info ***JDA$VD$(1):37000:DY$DA$T(12):NS1TS%(1)1:400U(0):3:"Do you wish to see all re1NS:TS%(QQ)0:QQ: INITIALISE SECTION SELECTIONi.DT%(2)28:DT%(4)30:DT%(6)30:DT%(9)30:DT%(11)30/(12);:7:36,(39(TL$)2):1403,(39(TL$)2):(15);TL$;(14);:10:36,0:1403,0:PD$617000: *** initialize report format ***(@190.SNSL1:D$;"READ";SF$;"0.D,R";SN:R$:IN$R$U.(IN$,1)(124)IN$" "(IN$,2).IN$(IN$SP$,80):F$(J)F$(J)(IN$,L%(J)(80RL)).œRLL%(J)(80RL):I9RL1:40070.g ******************* date input routine *********************"/hYY%:SL1:D$;"READ";SF$;"0.D,R";SN:R$:IN$R$O-\(IN$,1)(124)IN$" "(IN$,2)r-^IN$(R$SP$,80):RLOS:I9RL1-rJ0NF:RLL%(J)8040090-|RLRLL%(J):F$(J)(IN$,I9,L%(J)):I9I9L%(J)-J-D$:-F$(J)(IN$,I9,80RL):SLSL1:SNSN1/son formatting ****************U,|AE$"a"AE$"A"DA$(DA$,2)(DA$,2)(DA$,3,2),AE$"e"AE$"E"DA$(DA$,2)(DA$,3,2)(DA$,2),,? *********** input field assignment *************,@RNIK1:SL(RSRN80):OS(RSRN)(80SL))-TSN)+R+ **************** date field output formatting ********************+AE$"a"AE$"A"DA$(DA$,3,2)"/"(DA$,2)"/"(DA$,2)+AE$"e"AE$"E"DA$(DA$,2)"/"(DA$,3,2)"/"(DA$,2)+,{ **************** date field compari ***** numeric field formatting *****V*DO$(((DO$)(10DP).5)(10DP)):L(DO$)f*DP036080*J1L:(DO$,J,1)"."36030*J*LJDP36080*ȌJL36060*ҌDO$DO$"."(Z$,DP):36080*܌DO$DO$(Z$,DP(LJ))+DO$(SP$DO$,FW(13)19280)KK216,0:192122)PK50000: endj)ZKI1NG:D$;"READ";SF$;".GLB,R";I:GL$:GL(I)(GL$)})`KI:D$;"CLOSE")dK325)e ***** numeric field formatting *****)_m ********************* calculate pc's ***********************%* $;".GLB,R1":D$:19290A(K(7):(12):"Global file not found."k((K"Insert data file disk in drive and"(2K"press ";(15);"RETURN";(14);" to continue, ";(15);"Cntl-E";(14);" to end program";(