home *** CD-ROM | disk | FTP | other *** search
/ Piper's Pit BBS/FTP: ibm 0010 - 0019 / ibm0010-0019 / ibm0010.tar / ibm0010 / CLIPB52.ZIP / ZINKY.ZIP / REPORTS.PRG < prev    next >
Encoding:
Text File  |  1990-04-30  |  5.6 KB  |  227 lines

  1. ************************************
  2. *        REPORTS.PRG               *
  3. *     MODULE OF SAMPLE.PRG         *
  4. ************************************
  5.  
  6. CLEAR
  7. DO WHILE .T.
  8.   SET COLOR TO gr+/b,n/w
  9.  
  10.   @ 0,0,24,79 BOX boxframe  
  11.  
  12. *Place boxframe characters in
  13. *box defined by x,y locations
  14. *0,0 and 24, 29.
  15.  
  16.   @5,5  SAY  DATE()  &&Display date at location 5,5.
  17.   @5,67 SAY  TIME()  &&Display time at location 5,67.
  18.  
  19.   DO Makedbf         && Checking For Indexes
  20.  
  21.   @7,20,19,60 BOX boxfram2  &&box for second frame
  22.   @11,25 to 11,55           &&and display it.
  23.   @8,31 SAY  "REPORTS"
  24.   SET WRAP ON
  25.   main_in = 0         &&Establish variable main_in.
  26.   SET MESSAGE TO 21 CENTER
  27.   @12,30 PROMPT " ONE "
  28.   @13,30 PROMPT " ALL "
  29.   @14,30 PROMPT " QUIT"
  30.   MENU TO main_in
  31.   IF LASTKEY()=27
  32.     CLEAR
  33.     RETURN
  34.   ENDIF
  35.   SAVE SCREEN TO scr2
  36.   DO CASE
  37.     CASE main_in = 1
  38.       @ 15,29 TO 18,40
  39.       @ 16,30 PROMPT 'SCREEN '
  40.       @ 17,30 PROMPT 'PRINTER'
  41.       MENU TO m_where
  42.       IF LASTKEY()=27
  43.         CLEAR
  44.         RETURN
  45.       ENDIF
  46.       CLEAR
  47.       @ 5,10 TO 9,50
  48.       m_artist=SPACE(40)
  49.       m_title=SPACE(40)
  50.       @ 6,15 SAY 'ENTER ARTIST:'GET  m_artist;          
  51.         PICTURE'@S15!'
  52.       @ 7,15 SAY 'ENTER TITLE :'GET m_title;            
  53.         PICTURE'@S15!'
  54.       READ
  55.       IF LASTKEY()=27
  56.         CLEAR
  57.         RETURN
  58.       ENDIF
  59.       SEEK m_artist + m_title
  60.       IF EOF()
  61.         ?? CHR(7)
  62.         @ 20,15 SAY 'CANNOT FIND'
  63.         INKEY(0)
  64.         LOOP
  65.       ELSE
  66.       IF m_where = 2
  67.         DO Printopt
  68.       ENDIF
  69.         CLEAR
  70.         row=5
  71.         col=10
  72.         @ row,col SAY 'ARTIST:'+artist
  73.         @ row+1,col SAY 'TITLE:'+title
  74.         @ row+2,col SAY 'CONDITION:'+condition
  75.         @ row+3,col SAY 'REMARK:' +remarks
  76.         @ row+4,col SAY 'MEMO:'
  77.         @ row+5,col say memo
  78.         INKEY(0)
  79.         IF m_where == 2
  80.           EJECT
  81.         ENDIF
  82.       ENDIF
  83.       SET DEVICE TO SCREEN
  84.       SET PRINTER TO
  85.       RESTORE SCREEN FROM scr2
  86.     CASE main_in = 2
  87.       SET DEVICE TO SCREEN
  88.       @ 15,29 TO 18,40
  89.       @ 16,30 PROMPT 'SCREEN '
  90.       @ 17,30 PROMPT 'PRINTER'
  91.       MENU TO m_where
  92.       IF LASTKEY()=27
  93.         CLEAR
  94.         RETURN
  95.       ENDIF
  96.       IF m_where = 2
  97.         DO Printopt
  98.       ENDIF
  99.       CLEAR
  100.       GO TOP
  101.       row=3
  102.       @ row,15 SAY 'ENTIRE COLLECTION'
  103.       row=row+2
  104.       @ row,5 SAY REPLICATE("=",65)
  105.       row=row+1
  106.       DO WHILE .NOT. EOF()
  107.         @ row,5 SAY artist
  108.         @ row,40 SAY title
  109.         row=row+1
  110.         @ row,5 SAY condition
  111.         @ row+1,5 SAY memo
  112.         row=row+2
  113.         IF m_where = 1
  114.           IF row > 18
  115.             WAIT
  116.             CLEAR SCREEN
  117.             row=3
  118.             @ row,15 SAY 'ENTIRE COLLECTION'
  119.             row=row+2
  120.             @ row,5 SAY REPLICATE("=",65)
  121.             row=row+1
  122.           ENDIF
  123.         ELSE
  124.           IF row>54
  125.             EJECT
  126.             row=5
  127.             @ row,15 SAY 'ENTIRE COLLECTION'
  128.             row=row+2
  129.             @ row,5 SAY REPLICATE("=",65)
  130.             row=row+1
  131.           ENDIF
  132.         ENDIF
  133.         SKIP
  134.       ENDDO
  135.     WAIT
  136.  
  137.     SET DEVICE TO SCREEN
  138.     SET PRINTER TO
  139.     CASE main_in = 3
  140.       CLEAR SCREEN
  141.       RETURN
  142.   ENDCASE
  143. ENDDO
  144.  
  145. *************************
  146. *Printopt  Procedure    *
  147. * 4/28/90               *
  148. *************************
  149. PROCEDURE Printopt
  150. PUBLIC m_compres,prtr1, mt_comp, m_outfile
  151. @ 16,15 SAY '┌───<< Printer Selection >>─────┐  '
  152. @ 17,15 SAY '│ HP LaserJet series II         │██'
  153. @ 18,15 SAY '│ EPSON dot matrix printer      │██'
  154. @ 19,15 SAY '│ Other output device           │██'
  155. @ 20,15 SAY '│ Output to file                │██'
  156. @ 21,15 SAY '└───────────────────────────────┘██'
  157. @ 21,15 SAY '  █████████████████████████████████'
  158. @ 17,17 PROMPT 'HP LaserJet series II   '
  159. @ 18,17 PROMPT 'EPSON dot matrix printer'
  160. @ 19,17 PROMPT 'Other output device     '
  161. @ 20,17 PROMPT 'Output to file          '
  162. MENU TO mprint
  163. IF LASTKEY()==27
  164.   CLEAR
  165.   RETURN
  166. ENDIF
  167.  
  168. DO CASE
  169.   CASE mprint==1
  170.     SET DEVICE TO PRINT
  171.     @0,0 SAY chr(27)+chr(40)+chr(115) ;
  172.             +chr(49)+chr(54)+chr(46) ;
  173.             +chr(54)+chr(54)+chr(72)
  174.   CASE mprint==2
  175.     SET DEVICE TO PRINT
  176.     @0,0 SAY chr(15)
  177.   CASE mprint==3
  178.     STORE ;
  179.     '027 015 000 000 000 000 000 000 000 000 000 000';
  180.     TO prtr1
  181.     mt_comp=prtr1
  182.     m_compres=''
  183.     CLEAR
  184.     @ 3,9 SAY;                                          
  185.     '▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓'
  186.     @ 4,9 SAY; 
  187.     '▓▓ You will be allowed to enter your own   ▓▓▓'
  188.     @ 5,9 SAY;
  189.     '▓▓ printer ESCAPE CODES and save them to   ██▓'
  190.     @ 6,9 SAY;
  191.     '▓▓ a special file that will be called each ██▓'
  192.     @ 7,9 SAY;
  193.     '▓▓ time you select choice 3                ██▓'
  194.     @ 8,9 SAY;
  195.     '▓▓ Enter the CHR() CODES in multiples of 3 ██▓'
  196.     @ 9,9 SAY;
  197.     '▓▓ as shown in the example:                ██▓'
  198.     @ 10,9 SAY;
  199.     '▓▓▓▓█████████████████████████████████████████▓'
  200.     @ 11,9 SAY;
  201.     '▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓'
  202.     @ 14,1 GET prtr1 PICTURE;
  203.     '999 999 999 999 999 999 999 999 999 999 999 999'
  204.     READ
  205.     IF LASTKEY()==27
  206.       CLEAR
  207.       RETURN
  208.     ENDIF
  209.     FOR i = 1 TO 48 STEP 4
  210.       STORE m_compres+CHR(VAL(SUBSTR(mt_comp,i,3)));
  211.       TO m_compres
  212.     NEXT
  213.     SET DEVICE TO PRINT
  214.     @ 0,0 SAY m_compres
  215.     SET DEVICE TO SCREEN
  216.   CASE mprint==4
  217.     m_outfile=SPACE(12)
  218.     @ 20,8 SAY 'ENTER OUTFILE NAME' GET m_outfile;      
  219.     PICTURE '!!!!!!!!!!!!'
  220.     READ
  221.     SET PRINTER TO &m_outfile
  222.     SET DEVICE TO PRINT
  223.   ENDCASE
  224. RETURN
  225.  
  226.  
  227.