home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1993 #2 / Image.iso / database / jobs20.zip / JOBREP.PRG < prev    next >
Text File  |  1993-06-01  |  22KB  |  956 lines

  1. *:*************************************************************************
  2. *:
  3. *:      Program: JOBREP.PRG
  4. *:
  5. *:       System: Job Search - Version 2.0
  6. *:       Author: R. J. Kovach
  7. *:
  8. *:*************************************************************************
  9. *:       Copyright (C) 1993, R.J. Kovach & Assoc.    ALL RIGHTS RESERVED
  10. *:*************************************************************************
  11. *:
  12. *:Procs & Fncts: REPORTS        Main report menu
  13. *:             : DIVORDER       Prints company data sorted by division
  14. *:             : COMPCONT       Prints companies, phone #s & key contacts
  15. *:             : TGTORDER       Prints list of target companies
  16. *:             : CPYSALES       Prints companies within a sales range
  17. *:             : COMPCHCE       Choose companies for printing (1 per page)
  18. *:             : INDCOMP        Choose individual company for printing
  19. *:             : PRNTDIV        Print complete company info (1 per page)
  20. *:             : SRCHCHCE       Choose search firms for printing
  21. *:             : SRCHLIST       Print search firms
  22. *:             : SRCHCONT       Print search firm contact list
  23. *:             : SRCHLABL       Print search firm labels
  24. *:             : PROSPECT       Print search firm job prospect list
  25. *:             : NETLIST        Print network list
  26. *:             : REFERENCE      Print reference list
  27. *:             : JBEXPEN        Print job hunting expenses
  28. *:             : PRINTWAIT      Pause to make sure printer is on line
  29. *:             : PRNTRESET      Reset printer
  30. *:             : PRNT10         Set printer to 10 CPI
  31. *:             : PRNT12         Set printer to 12 CPI
  32. *:             : PRNT17         Set printer to 17 CPI
  33. *:             : STOPRET        Returns to previous menu after pressing Esc
  34. *:             : STOP           Interrupt printing
  35. *:
  36. *:         Uses: COMPANY.DBF
  37. *:             : NETWORK.DBF
  38. *:             : EXECSRCH.DBF
  39. *:             : TEMPSRCH.DBF
  40. *:             : JOBEXPEN.DBF
  41. *:             : SIC.DBF
  42. *:
  43. *:   Memo Files: COMPANY.DBT
  44. *:             : NETWORK.DBT
  45. *:             : EXECSRCH.DBT
  46. *:             : TEMPSRCH.DBT
  47. *:
  48. *:      Indexes: DIVISION.NDX
  49. *:             : NETWORK.NDX
  50. *:             : EXECNAME.NDX
  51. *:             : TEMPNAME.NDX
  52. *:             : JOBEXPEN.NDX
  53. *:             : SICNO.NDX
  54. *:             : SIC.NDX
  55. *:
  56. *: Report Forms: COMPANY.FRM
  57. *:             : COMPANY2.FRM
  58. *:             : COMPMEMO.FRM
  59. *:             : EXECSRCH.FRM
  60. *:             : EXECCONT.FRM
  61. *:             : NETWORK.FRM
  62. *:             : REFERENC.FRM
  63. *:             : JOBEXPEN.FRM
  64. *:             : EXECSRCH.LBL
  65. *:
  66. *:       Set by: JOBS.PRG
  67. *:
  68. *: Documented: 4/23/93
  69. *: Revised:    6/01/93
  70. *:*************************************************************************
  71.  
  72.  
  73. ******************
  74. PROCEDURE register
  75. ******************
  76.  
  77. IF monidate <> CTOD('06/01/93')
  78.    IF DATE() > monidate + 21
  79.       DO registnow
  80.    ENDIF
  81. ENDIF
  82. CLEAR
  83. STORE ' ' TO enter
  84. TEXT
  85.                               JOBS, Release 2.0
  86.  
  87.         Copyright (c) 1993  R.J. Kovach & Assoc.  All Rights Reserved.
  88.  
  89.         This is an unlicensed copy of JOBS, to be used for evaluation
  90.         only.  Thanks for giving JOBS a try.
  91.  
  92.         This application is shareware.  You may use and evaluate it for
  93.         21 days, after which you must pay for it.
  94.  
  95.         The shareware registration fee for JOBS is $25.00.
  96.  
  97.         To register send a check, payable to R.J. Kovach & Associates,
  98.         for $25.00 to:
  99.  
  100.                           R.J. Kovach & Associates
  101.                               9 Canterbury Lane
  102.                               Lebanon, NJ 08833
  103.                             CompuServe 72315,1370
  104.  
  105.         I understand that I may evaluate JOBS for 21 days and that any
  106.         any other use requires purchase of a license.
  107.  
  108. ENDTEXT
  109. STORE 'YQ' TO msg
  110. @ 24,8 SAY 'Press "Y" to agree to the above or "Q" to quit now (Y/Q)? ' GET enter PICTURE '!'
  111. READ SAVE
  112. DO WHILE .NOT. enter $ msg
  113.    ?? CHR(7)
  114.    READ SAVE
  115. ENDDO
  116. IF enter = 'Q'
  117.    QUIT
  118. ENDIF
  119. RETURN
  120.  
  121.  
  122. *******************
  123. PROCEDURE registnow
  124. *******************
  125.  
  126. CLEAR
  127. STORE ' ' TO enter
  128. TEXT
  129.  
  130.  
  131.                               JOBS, Release 2.0
  132.  
  133.  
  134.  
  135.  
  136.  
  137.            Your 21 day trial period for evaluating JOBS has expired.
  138.  
  139.                           Please register JOBS now.
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146. ENDTEXT
  147. WAIT
  148. RETURN
  149.  
  150.  
  151. *****************
  152. PROCEDURE reports
  153. *****************
  154.  
  155. CLEAR
  156. SET TALK OFF
  157. CLEAR GETS
  158. * ON KEY DO stop
  159.  
  160. DO WHILE .T.
  161.    CLEAR
  162.    IF monitor = 'C'
  163.       SET COLOR TO &mcolor2
  164.    ENDIF
  165.    @3,8 TO 22,72
  166.    @1,25 TO 3,53 DOUBLE
  167.    IF monitor = 'C'
  168.       SET COLOR TO &mcolor3
  169.    ENDIF
  170.    @2,9 SAY DATE()
  171.    @2,57 SAY 'Printer = '
  172.    IF moniprnt = 'E'
  173.       @2,67 SAY 'Epson'
  174.    ELSE
  175.       IF moniprnt = 'L'
  176.          @2,67 SAY 'Laserjet'
  177.       ELSE
  178.          @2,67 SAY 'IBM'
  179.       ENDIF
  180.    ENDIF
  181.    IF monitor = 'C'
  182.       SET COLOR TO &mcolor2
  183.    ENDIF
  184.    @2,28 SAY 'R E P O R T S   M E N U'
  185.    IF monitor = 'C'
  186.       SET COLOR TO &mcolor
  187.    ENDIF
  188.    @ 5,15 SAY '1> Print Companies in Division Order'
  189.    @ 6,15 SAY '2> Print Company Key Contact List'
  190.    @ 7,15 SAY '3> Print Target Companies'
  191.    @ 8,15 SAY '4> Print Companies Within a Sales Range'
  192.    @ 9,15 SAY '5> Print Complete Company Information (1 per page)'
  193.    @11,15 SAY '6> Print Search Firm List'
  194.    @12,15 SAY '7> Print Search Firm Key Contact List'
  195.    @13,15 SAY '8> Print Search Firm List in Label Format'
  196.    @14,15 SAY '9> Print Search Firm Job Prospect List'
  197.    @16,15 SAY 'A> Print Network List'
  198.    @18,15 SAY 'B> Print Reference List'
  199.    @20,15 SAY 'C> Print Job Hunting Expenses'
  200.    IF monitor = 'C'
  201.       SET COLOR TO &mcolor5
  202.    ENDIF
  203.    @23,0 SAY ' '
  204.    WAIT '                         Pick a number or type Q to Quit  ' TO choice
  205.    IF monitor = 'C'
  206.       SET COLOR TO &mcolor
  207.    ENDIF
  208.  
  209.    DO CASE
  210.    CASE choice = '1'
  211.       DO divorder
  212.    CASE choice = '2'
  213.       DO compcont
  214.    CASE choice = '3'
  215.       DO tgtcomp
  216.    CASE choice = '4'
  217.       DO cpysales
  218.    CASE choice = '5'
  219.       DO compchce
  220.    CASE choice = '6'
  221.       DO srchchce
  222.       DO srchlist
  223.    CASE choice = '7'
  224.       DO srchchce
  225.       DO srchcont
  226.    CASE choice = '8'
  227.       DO srchchce
  228.       DO srchlabl
  229.    CASE choice = '9'
  230.       DO srchchce
  231.       DO prospect
  232.    CASE UPPER(choice) = 'A'
  233.       DO netlist
  234.    CASE UPPER(choice) = 'B'
  235.       DO reference
  236.    CASE UPPER(choice) = 'C'
  237.       DO jbexpense
  238.    CASE UPPER(choice) = 'Q'
  239.       ON KEY
  240.       RETURN TO MASTER
  241.  
  242.    ENDCASE choice
  243. ENDDO
  244.  
  245.  
  246. ******************
  247. PROCEDURE divorder
  248. ******************
  249.  
  250. DO printwait
  251. DO prnt17
  252. SELECT 1
  253. USE company INDEX division
  254. REPORT FORM company HEADING 'COMPANY DATA SORTED BY DIVISION' FOR division <> '  ' TO PRINT
  255. SET PRINT ON
  256. ?
  257. ? '        ***  Printed '+LTRIM(STR(RECCOUNT(),5,0))+' Records  ***'
  258. EJECT
  259. SET PRINT OFF
  260. DO prntreset
  261. RETURN
  262.  
  263.  
  264. ******************
  265. PROCEDURE compcont
  266. ******************
  267.  
  268. DO printwait
  269. DO prnt17
  270. SELECT 1
  271. USE company INDEX division
  272. REPORT FORM compcont HEADING 'Companies and Key Contacts' TO PRINT
  273. SET PRINT ON
  274. ?
  275. ? '        ***  Total Records = '+LTRIM(STR(RECCOUNT(),5,0))+'  ***'
  276. EJECT
  277. SET PRINT OFF
  278. DO prntreset
  279. RETURN
  280.  
  281.  
  282. *****************
  283. PROCEDURE tgtcomp
  284. *****************
  285.  
  286. CLEAR
  287. PRIVATE rcds, tgt
  288. STORE 0 TO rcds
  289. STORE ' ' TO tgt
  290. @ 10,10 SAY ' '
  291. ACCEPT '                Search TARGET field for ... ' TO tgt
  292. CLEAR
  293. DO printwait
  294. DO prnt12
  295. SELECT 1
  296. USE company INDEX division
  297. REPORT FORM company2 HEADING 'POTENTIAL TARGET COMPANIES' FOR target = tgt TO PRINT
  298. GO TOP
  299. DO WHILE .NOT. EOF()
  300.    IF target = tgt
  301.       rcds = rcds + 1
  302.    ENDIF
  303.    SKIP
  304.    LOOP
  305. ENDDO
  306. SET PRINT ON
  307. ?
  308. ? '        ***  Printed '+LTRIM(STR(rcds,5,0))+' of '+LTRIM(STR(RECCOUNT(),5,0))+' Records       ***'
  309. ? '        ***  Selection criteria: TARGET = '+tgt+'  ***'
  310. EJECT
  311. SET PRINT OFF
  312. DO prntreset
  313. RETURN
  314.  
  315.  
  316. ******************
  317. PROCEDURE cpysales
  318. ******************
  319.  
  320. CLEAR
  321. PRIVATE minsls, maxsls, rcds
  322. STORE 0 TO rcds
  323. @ 5,10 SAY ' '
  324. INPUT '          Minimum sales (in $ MM) ' TO minsls
  325. @ 7,10 SAY ' '
  326. INPUT '          Maximum sales (in $ MM) ' TO maxsls
  327. CLEAR
  328. DO printwait
  329. DO prnt17
  330. SELECT 1
  331. USE company INDEX division
  332. REPORT FORM company HEADING 'COMPANY DATA FOR SALES BETWEEN '+STR(minsls,4,1)+' AND '+STR(maxsls,4,1)+' MILLION' FOR sales >= minsls .AND. sales <= maxsls TO PRINT
  333. GO TOP
  334. DO WHILE .NOT. EOF()
  335.    IF sales >= minsls .AND. sales <= maxsls
  336.       rcds = rcds + 1
  337.    ENDIF
  338.    SKIP
  339.    LOOP
  340. ENDDO
  341. SET PRINT ON
  342. ?
  343. ? '        ***  Printed '+LTRIM(STR(rcds,5,0))+' of '+LTRIM(STR(RECCOUNT(),5,0))+' Records  ***'
  344. EJECT
  345. SET PRINT OFF
  346. DO prntreset
  347. RETURN
  348.  
  349.  
  350. ******************
  351. PROCEDURE compchce
  352. ******************
  353.  
  354. DO WHILE .T.
  355.    CLEAR
  356.    CLOSE DATABASES
  357.    @7,19 SAY 'Choose Type of Report:'
  358.    @10,30 SAY 'I> Individual Company'
  359.    @13,30 SAY 'T> Group of Companies by Target Field'
  360.    @16,30 SAY 'S> Group of Companies Within a Sales Range'
  361.    @19,0 SAY ' '
  362.    WAIT '                Choose I, T or S  ' TO choice
  363.    DO CASE
  364.    CASE UPPER(choice) = 'I'
  365.       DO indcomp
  366.       RETURN
  367.    CASE UPPER(choice) = 'T'
  368.       CLEAR
  369.       PRIVATE rcds, tgt
  370.       STORE 0 TO rcds
  371.       STORE ' ' TO tgt
  372.       @ 10,10 SAY ' '
  373.       ACCEPT '                Search TARGET field for ... ' TO tgt
  374.       CLEAR
  375.       DO printwait
  376.       DO prnt10
  377.       SELECT 6
  378.       USE sic INDEX sicno
  379.       SELECT 1
  380.       USE company INDEX division
  381.       DO WHILE .NOT. EOF()
  382.          IF target = tgt
  383.             DO prntdiv
  384.          ENDIF
  385.          SKIP
  386.          LOOP
  387.       ENDDO
  388.       DO prntreset
  389.       RETURN
  390.    CASE UPPER(choice) = 'S'
  391.       CLEAR
  392.       PRIVATE minsls, maxsls, rcds
  393.       STORE 0 TO rcds
  394.       @ 5,10 SAY ' '
  395.       INPUT '          Minimum sales (in $ MM) ' TO minsls
  396.       @ 7,10 SAY ' '
  397.       INPUT '          Maximum sales (in $ MM) ' TO maxsls
  398.       CLEAR
  399.       DO printwait
  400.       DO prnt10
  401.       SELECT 6
  402.       USE sic INDEX sicno
  403.       SELECT 1
  404.       USE company INDEX division
  405.       DO WHILE .NOT. EOF()
  406.          IF sales >= minsls
  407.             IF sales <= maxsls
  408.                DO prntdiv
  409.             ENDIF
  410.          ENDIF
  411.          SKIP
  412.          LOOP
  413.       ENDDO
  414.       DO prntreset
  415.       RETURN
  416.    ENDCASE
  417. ENDDO
  418.  
  419.  
  420. *****************
  421. PROCEDURE indcomp
  422. *****************
  423.  
  424. CLEAR
  425. * DO printwait
  426. SELECT 1
  427. USE company INDEX division
  428. SELECT 6
  429. USE sic INDEX sicno
  430. * DO prnt10
  431. SELECT 1
  432. STORE ' ' TO div
  433. STORE ' ' TO divcomp
  434. DO WHILE .NOT. EOF()
  435.    CLEAR
  436.    @ 11,5 SAY ' '
  437.    ACCEPT '    Enter the division to be edited or press [Esc] to quit:  ' TO div
  438.    ON ESCAPE DO stopret
  439.    SEEK UPPER(div)
  440.    IF FOUND()
  441.       STORE division TO divcomp
  442.       SET FUNCTION 2 TO divcomp
  443.       DO prnt10
  444.       DO prntdiv
  445.       IF EOF()
  446.          ? 'No additional records found.'
  447.          WAIT
  448.          GO TOP
  449.          RETURN
  450.       ENDIF
  451.    ELSE
  452.       ?
  453.       ? 'This division is not in the file'
  454.       WAIT
  455.       CLEAR
  456.       GO TOP
  457.       LOOP
  458.    ENDIF
  459. ENDDO
  460.  
  461.  
  462. *****************
  463. PROCEDURE prntdiv1
  464. *****************
  465.  
  466. SET DEVICE TO PRINT
  467. SELECT 1
  468. IF moniprnt = 'E'
  469.    @ 2,35 SAY CHR(27)+'4'+'Company Prospect'+CHR(27)+'5'
  470. ELSE
  471.    @ 2,35 SAY 'Company Prospect'
  472. ENDIF
  473. @ 6, 8 SAY 'Division:'
  474. IF moniprnt = 'L'
  475.    @ 6,20 SAY CHR(27)+'E'+division
  476. ELSE
  477.    @ 6,20 SAY CHR(27)+'G'+CHR(27)+'E'+CHR(14)+division
  478. ENDIF
  479. @ 8, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'Parent Co.:'
  480. @ 8,20 SAY CHR(27)+'G'+CHR(27)+'E'+company
  481. @ 9, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'Address:'
  482. @ 9,24 SAY CHR(27)+'G'+CHR(27)+'E'+address
  483. @10,20 SAY TRIM(city)+', '+state+' '+zip
  484. @12, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'Phone:'+CHR(27)+'G'+CHR(27)+'E'
  485. @12,28 SAY TRANSFORM(VAL(phone),'(999)999-9999')
  486. @12,49 SAY CHR(27)+'H'+CHR(27)+'F'+'DUNS #:'+CHR(27)+'G'+CHR(27)+'E'
  487. @12,49 SAY LEFT(duns,2)+'-'+SUBSTR(duns,3,3)+'-'+RIGHT(duns,4)
  488. @14, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'Sales:'+CHR(27)+'G'+CHR(27)+'E'
  489. IF sales >0
  490.    @14,28 SAY sales PICTURE '9,999.9'
  491.    @14,28 SAY 'million'
  492. ELSE
  493.    @14,28 SAY 'N/A'
  494. ENDIF
  495. @14,38 SAY CHR(27)+'H'+CHR(27)+'F'+'Employees:'+CHR(27)+'G'+CHR(27)+'E'
  496. IF employees >0
  497.    @14,49 SAY employees PICTURE '999,999'
  498. ELSE
  499.    @14,49 SAY 'N/A'
  500. ENDIF
  501. @16, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'Sq ft:'+CHR(27)+'G'+CHR(27)+'E'
  502. IF sq_ft >0
  503.    @16,28 SAY sq_ft PICTURE '999,999'
  504. ELSE
  505.    @16,28 SAY 'N/A'
  506. ENDIF
  507. @16,50 SAY CHR(27)+'H'+CHR(27)+'F'+'Acres:'+CHR(27)+'G'+CHR(27)+'E'
  508. IF acres >0
  509.    @16,49 SAY acres
  510. ELSE
  511.    @16,49 SAY 'N/A'
  512. ENDIF
  513. @16,60 SAY CHR(27)+'H'+CHR(27)+'F'+'Year Estab.:'+CHR(27)+'G'+CHR(27)+'E'
  514. IF establish = ' '
  515.    @16,73 SAY 'N/A'
  516. ELSE
  517.    @16,73 SAY establish
  518. ENDIF
  519. @18, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'Product:'+CHR(27)+'G'+CHR(27)+'E'
  520. @19,12 SAY product
  521. @21, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'SIC Codes:'+CHR(27)+'G'+CHR(27)+'E'
  522. SET RELATION TO code1 INTO sic
  523. @21,20 SAY code1
  524. @21,26 SAY sic->descript
  525. SET RELATION TO code2 INTO sic
  526. @22,20 SAY code2
  527. @22,26 SAY sic->descript
  528. SET RELATION TO code3 INTO sic
  529. @23,20 SAY code3
  530. @23,26 SAY sic->descript
  531. SET RELATION TO code4 INTO sic
  532. @24,20 SAY code4
  533. @24,26 SAY sic->descript
  534. @26, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'Contact:'+CHR(27)+'G'+CHR(27)+'E'
  535. @26,24 SAY RTRIM(contact)+', '+TRIM(title)
  536. @28, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'Info Source:'+CHR(27)+'G'+CHR(27)+'E'
  537. @28,21 SAY source
  538. @28,48 SAY CHR(27)+'H'+CHR(27)+'F'+'Status:'+CHR(27)+'G'+CHR(27)+'E'
  539. @28,56 SAY RTRIM(status)
  540. * @30, 8 SAY CHR(27)+'H'+CHR(27)+'F'+'Comments:'+CHR(27)+'G'+CHR(27)+'E'
  541. REPORT FORM compmemo NOEJECT PLAIN RECORD RECNO() TO PRINT
  542. set device to screen
  543. SET PRINT ON
  544. ?? CHR(27)+'H'+CHR(27)+'F'
  545. EJECT
  546. SET PRINT OFF
  547. RETURN
  548.  
  549.  
  550. *****************
  551. PROCEDURE prntdiv
  552. *****************
  553.  
  554. SET DEVICE TO PRINT
  555. SELECT 1
  556. IF moniprnt = 'E'
  557.    @ 1,35 SAY CHR(27)+'4'+'Company Prospect'+CHR(27)+'5'
  558. ELSE
  559.    @ 1,35 SAY 'Company Prospect'
  560. ENDIF
  561. @ 4, 8 SAY 'Division:'
  562. IF moniprnt = 'L'
  563.    @ 4,20 SAY CHR(27)+'E'+division
  564. ELSE
  565.    @ 4,20 SAY CHR(27)+'E'+CHR(14)+division
  566. ENDIF
  567. @ 6, 8 SAY CHR(27)+'F'+'Parent Co.:'
  568. @ 6,20 SAY CHR(27)+'E'+company
  569. @ 7, 8 SAY CHR(27)+'F'+'Address:'
  570. @ 7,22 SAY CHR(27)+'E'+address
  571. @ 9,20 SAY TRIM(city)+', '+state+' '+zip
  572. @10, 8 SAY CHR(27)+'F'+'Phone:'+CHR(27)+'E'
  573. @10,24 SAY TRANSFORM(VAL(phone),'(999)999-9999')
  574. @10,45 SAY CHR(27)+'F'+'DUNS #:'+CHR(27)+'E'
  575. @10,49 SAY LEFT(duns,2)+'-'+SUBSTR(duns,3,3)+'-'+RIGHT(duns,4)
  576. @12, 8 SAY CHR(27)+'F'+'Sales:'+CHR(27)+'E'
  577. IF sales >0
  578.    @12,24 SAY sales PICTURE '99,999.9'
  579.    @12,33 SAY 'million'
  580. ELSE
  581.    @12,24 SAY 'N/A'
  582. ENDIF
  583. @12,42 SAY CHR(27)+'F'+'Employees:'+CHR(27)+'E'
  584. IF employees >0
  585.    @12,49 SAY employees PICTURE '999,999'
  586. ELSE
  587.    @12,49 SAY 'N/A'
  588. ENDIF
  589. @14, 8 SAY CHR(27)+'F'+'Sq ft:'+CHR(27)+'E'
  590. IF sq_ft >0
  591.    @14,24 SAY sq_ft PICTURE '999,999'
  592. ELSE
  593.    @14,24 SAY 'N/A'
  594. ENDIF
  595. @14,46 SAY CHR(27)+'F'+'Acres:'+CHR(27)+'E'
  596. IF acres >0
  597.    @14,49 SAY acres
  598. ELSE
  599.    @14,49 SAY 'N/A'
  600. ENDIF
  601. @14,60 SAY CHR(27)+'F'+'Year Estab.:'+CHR(27)+'E'
  602. IF establish = ' '
  603.    @14,73 SAY 'N/A'
  604. ELSE
  605.    @14,73 SAY establish
  606. ENDIF
  607. @16, 8 SAY CHR(27)+'F'+'Product:'+CHR(27)+'E'
  608. @17,12 SAY product
  609. @19, 8 SAY CHR(27)+'F'+'SIC Codes:'+CHR(27)+'E'
  610. SET RELATION TO code1 INTO sic
  611. @19,24 SAY code1
  612. @19,30 SAY sic->descript
  613. SET RELATION TO code2 INTO sic
  614. @20,20 SAY code2
  615. @20,26 SAY sic->descript
  616. SET RELATION TO code3 INTO sic
  617. @21,20 SAY code3
  618. @21,26 SAY sic->descript
  619. SET RELATION TO code4 INTO sic
  620. @22,20 SAY code4
  621. @22,26 SAY sic->descript
  622. @24, 8 SAY CHR(27)+'F'+'Contact:'+CHR(27)+'E'
  623. @24,24 SAY RTRIM(contfirst)+' '+RTRIM(contlast)+', '+TRIM(title)
  624. @26, 8 SAY CHR(27)+'F'+'Info Source:'+CHR(27)+'E'
  625. @26,21 SAY source
  626. @26,48 SAY CHR(27)+'F'+'Status:'+CHR(27)+'E'
  627. @26,56 SAY RTRIM(status)
  628. IF monidb = 'F'
  629.    @28, 8 SAY CHR(27)+'F'+'Comments:'+CHR(27)+'E'
  630.    @30, 0
  631. ENDIF
  632. REPORT FORM compmemo NOEJECT PLAIN RECORD RECNO() TO PRINT
  633. set device to screen
  634. SET PRINT ON
  635. ?? CHR(27)+'F'
  636. EJECT
  637. SET PRINT OFF
  638. RETURN
  639.  
  640.  
  641. ******************
  642. PROCEDURE srchchce
  643. ******************
  644.  
  645. DO WHILE .T.
  646.    CLEAR
  647.    CLOSE DATABASES
  648.    @7,19 SAY 'Choose Database:'
  649.    @10,30 SAY 'E> Executive Search Firm Database'
  650.    @13,30 SAY 'T> Temporary Placement Firm Database'
  651.    @16,0 SAY ' '
  652.    WAIT '                  Choose E or T  ' TO choice
  653.    DO CASE
  654.    CASE UPPER(choice) = 'E'
  655.       STORE 'E' To type2
  656.       RETURN
  657.    CASE UPPER(choice) = 'T'
  658.       STORE 'T' TO type2
  659.       RETURN
  660.    ENDCASE
  661. ENDDO
  662.  
  663.  
  664. ******************
  665. PROCEDURE srchlist
  666. ******************
  667.  
  668. DO printwait
  669. DO prnt17
  670. IF type2 = 'E'
  671.    SELECT 3
  672.    USE execsrch INDEX execname
  673.    REPORT FORM execsrch HEADING 'EXECUTIVE SEARCH FIRMS' FOR name <> '  ' TO PRINT
  674. ELSE
  675.    SELECT 4
  676.    USE tempsrch INDEX tempname
  677.    REPORT FORM execsrch HEADING 'TEMPORARY PLACEMENT SEARCH FIRMS' FOR name <> '  ' TO PRINT
  678. ENDIF
  679. SET PRINT ON
  680. ?
  681. ? '        ***  Total Records = '+LTRIM(STR(RECCOUNT(),5,0))+'  ***'
  682. EJECT
  683. SET PRINT OFF
  684. DO prntreset
  685. CLOSE DATABASES
  686. RETURN
  687.  
  688.  
  689. ******************
  690. PROCEDURE srchcont
  691. ******************
  692.  
  693. DO printwait
  694. DO prnt17
  695. IF type2 = 'E'
  696.    SELECT 3
  697.    USE execsrch INDEX execname
  698.    REPORT FORM execcont HEADING 'Executive Search Firms and Key Contacts' TO PRINT
  699. ELSE
  700.    SELECT 4
  701.    USE tempsrch INDEX tempname
  702.    REPORT FORM execcont HEADING 'Temporary Placement Search Firms and Key Contacts' TO PRINT
  703. ENDIF
  704. SET PRINT ON
  705. ?
  706. ? '        ***  Total Records = '+LTRIM(STR(RECCOUNT(),5,0))+'  ***'
  707. EJECT
  708. SET PRINT OFF
  709. DO prntreset
  710. CLOSE DATABASES
  711. RETURN
  712.  
  713.  
  714. ******************
  715. PROCEDURE srchlabl
  716. ******************
  717.  
  718. DO printwait
  719. DO prnt10
  720. IF type2 = 'E'
  721.    SELECT 3
  722.    USE execsrch INDEX execname
  723. ELSE
  724.    SELECT 4
  725.    USE tempsrch INDEX tempname
  726. ENDIF
  727. LABEL FORM execsrch FOR DTOC(init_cont) = '  /  /  ' TO PRINT
  728. DO prntreset
  729. CLOSE DATABASES
  730. RETURN
  731.  
  732.  
  733. ******************
  734. PROCEDURE prospect
  735. ******************
  736.  
  737. DO printwait
  738. DO prnt17
  739. STORE 0 TO rcds
  740. IF type2 = 'E'
  741.    SELECT 3
  742.    USE execsrch INDEX execname
  743.    REPORT FORM execsrch HEADING 'EXECUTIVE SEARCH FIRM JOB PROSPECTS' FOR prospect = 'Y' TO PRINT
  744. ELSE
  745.    SELECT 4
  746.    USE tempsrch INDEX tempname
  747.    REPORT FORM execsrch HEADING 'TEMPORARY PLACEMENT SEARCH FIRM JOB PROSPECTS' FOR prospect = 'Y' TO PRINT
  748. ENDIF
  749. GO TOP
  750. DO WHILE .NOT. EOF()
  751.    IF prospect = 'Y'
  752.       rcds = rcds + 1
  753.    ENDIF
  754.    SKIP
  755.    LOOP
  756. ENDDO
  757. SET PRINT ON
  758. ?
  759. ? '        ***  Printed '+LTRIM(STR(rcds,5,0))+' of '+LTRIM(STR(RECCOUNT(),5,0))+' Records       ***'
  760. ? '        ***  Selection criteria: PROSPECT not blank  ***'
  761. EJECT
  762. SET PRINT OFF
  763. DO prntreset
  764. CLOSE DATABASES
  765. RETURN
  766.  
  767.  
  768. *****************
  769. PROCEDURE netlist
  770. *****************
  771.  
  772. DO printwait
  773. DO prnt17
  774. SELECT 2
  775. USE network INDEX network
  776. REPORT FORM network TO PRINT
  777. SET PRINT ON
  778. ?
  779. ? '        ***  Total Records = '+LTRIM(STR(RECCOUNT(),5,0))+'  ***'
  780. EJECT
  781. SET PRINT OFF
  782. DO prntreset
  783. RETURN
  784.  
  785.  
  786. *******************
  787. PROCEDURE reference
  788. *******************
  789.  
  790. CLEAR
  791. PRIVATE rcds
  792. STORE 0 TO rcds
  793. DO printwait
  794. DO prnt10
  795. SELECT 2
  796. USE network INDEX network
  797. REPORT FORM referenc FOR reference = 'Y' TO PRINT
  798. GO TOP
  799. DO WHILE .NOT. EOF()
  800.    IF reference = 'Y'
  801.       rcds = rcds + 1
  802.    ENDIF
  803.    SKIP
  804.    LOOP
  805. ENDDO
  806. SET PRINT ON
  807. ?
  808. ? '        ***  Printed '+LTRIM(STR(rcds,5,0))+' of '+LTRIM(STR(RECCOUNT(),5,0))+' Records  ***'
  809. EJECT
  810. SET PRINT OFF
  811. DO prntreset
  812. RETURN
  813.  
  814.  
  815. *******************
  816. PROCEDURE jbexpense
  817. *******************
  818.  
  819. CLEAR
  820. PRIVATE mamt, mmil
  821. STORE 0 TO mamt, mmil
  822. DO printwait
  823. DO prnt10
  824. SELECT 5
  825. USE jobexpen INDEX jobexpen
  826. REPORT FORM jobexpen TO PRINT
  827. SUM amount TO mamt
  828. SUM miles TO mmil
  829. mtot = mamt + (mmil * monimile)
  830. SET PRINT ON
  831. ?
  832. ? '      ***  Total Expenses = $' + TRANSFORM(mtot,"99,999.99") + '  ***'
  833. EJECT
  834. SET PRINT OFF
  835. DO prntreset
  836. RETURN
  837.  
  838.  
  839. *******************
  840. PROCEDURE printwait
  841. *******************
  842.  
  843. CLEAR
  844. @4,20 SAY 'Make sure the printer is ready and on line.'
  845. @8,20 SAY '  '
  846. WAIT
  847. CLEAR
  848. RETURN
  849.  
  850.  
  851. *******************
  852. PROCEDURE prntreset
  853. *******************
  854.  
  855. SET PRINT ON
  856. IF moniprnt = 'E'
  857.    ?? CHR(27)+'@'            && Reset Epson
  858. ELSE
  859.    IF moniprnt = 'L'
  860.       ?? CHR(27)+'E'         && Reset Laserjet
  861.    ELSE                      && moniprnt = I
  862.       ?? CHR(18)             && Set IBM to 10 CPI
  863.    ENDIF
  864. ENDIF
  865. SET PRINT OFF
  866. RETURN
  867.  
  868.  
  869. ****************
  870. PROCEDURE prnt10
  871. ****************
  872.  
  873. SET PRINT ON
  874. IF moniprnt = 'E'
  875.    ?? CHR(27)+'@'            && Reset Epson
  876. ELSE
  877.    IF moniprnt = 'L'
  878.       ?? CHR(27)+'E'         && Reset Laserjet
  879.    ELSE                      && moniprnt = I
  880.       ?? CHR(18)             && Set IBM to 10 CPI
  881.    ENDIF
  882. ENDIF
  883. SET PRINT OFF
  884. RETURN
  885.  
  886.  
  887. ****************
  888. PROCEDURE prnt12
  889. ****************
  890.  
  891. SET PRINT ON
  892. IF moniprnt = 'E'
  893.    ?? CHR(27)+'@'            && Reset Epson
  894.    ?? CHR(27)+'M'            && Set to 12 CPI
  895. ELSE
  896.    IF moniprnt = 'L'
  897.       ?? CHR(27)+'E'         && Reset Laserjet
  898.       ?? CHR(27)+'(s12H'     && Set to 12 CPI
  899.    ELSE                      && moniprnt = I
  900.       ?? CHR(27)+':'         && Set IBM to 12 CPI
  901.    ENDIF
  902. ENDIF
  903. SET PRINT OFF
  904. RETURN
  905.  
  906.  
  907. ****************
  908. PROCEDURE prnt17
  909. ****************
  910.  
  911. SET PRINT ON
  912. IF moniprnt = 'E'
  913.    ?? CHR(27)+'@'            && Reset Epson
  914.    ?? CHR(15)                && Set to 17 CPI
  915. ELSE
  916.    IF moniprnt = 'L'
  917.       ?? CHR(27)+'E'         && Reset Laserjet
  918.       ?? CHR(27)+'(s16.66H'  && Set to 16.66 CPI
  919.    ELSE                      && moniprnt = I
  920.       ?? CHR(15)             && Set IBM to 17 CPI
  921.    ENDIF
  922. ENDIF
  923. SET PRINT OFF
  924. RETURN
  925.  
  926.  
  927. *****************
  928. PROCEDURE stopret
  929. *****************
  930.  
  931. CLOSE FORMAT
  932. RETURN TO MASTER
  933.  
  934.  
  935. **************
  936. PROCEDURE stop
  937. **************
  938.  
  939. i = INKEY()
  940. WAIT "Press A to abort printing, " +;
  941. "any other key to continue:  " TO choice
  942. IF choice $ "Aa"
  943.    EJECT
  944.    ON KEY
  945.    ON ERROR
  946.    SET DEVICE TO SCREEN
  947.    RETURN TO MASTER
  948. ELSE
  949.    RETURN
  950. ENDIF
  951.  
  952.  
  953.  
  954. *: EOF JOBREP.PRG
  955.  
  956.