home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a087 / 5.ddi / CUSTOMER.SP_ / CUSTOMER.bin
Encoding:
Text File  |  1994-02-02  |  26.3 KB  |  1,041 lines

  1. *       *********************************************************
  2. *       *                                                         
  3. *       * 01/31/94            CUSTOMER.SPR               10:12:00 
  4. *       *                                                         
  5. *       *********************************************************
  6. *       *                                                         
  7. *       * Author's Name                                           
  8. *       *                                                         
  9. *       * Copyright (c) 1994 Company Name                         
  10. *       * Address                                                 
  11. *       * City,     Zip                                           
  12. *       *                                                         
  13. *       * Description:                                            
  14. *       * This program was automatically generated by GENSCRN.    
  15. *       *                                                         
  16. *       *********************************************************
  17.  
  18. DO CASE
  19. CASE _WINDOWS OR _MAC   && no MAC records in screen
  20.  
  21.     
  22.     #REGION 0
  23.     REGIONAL m.currarea, m.talkstat, m.compstat
  24.     
  25.     IF SET("TALK") = "ON"
  26.         SET TALK OFF
  27.         m.talkstat = "ON"
  28.     ELSE
  29.         m.talkstat = "OFF"
  30.     ENDIF
  31.     m.compstat = SET("COMPATIBLE")
  32.     SET COMPATIBLE FOXPLUS
  33.     
  34.     m.rborder = SET("READBORDER")
  35.     SET READBORDER ON
  36.     
  37.     m.currarea = SELECT()
  38.     
  39.     
  40.     *       *********************************************************
  41.     *       *                                                         
  42.     *       *     S6719536/Windows Databases, Indexes, Relations      
  43.     *       *                                                         
  44.     *       *********************************************************
  45.     *
  46.     
  47.     IF USED("customer")
  48.         SELECT customer
  49.         SET ORDER TO TAG "_qml0kfs5f"
  50.     ELSE
  51.         SELECT 0
  52.         USE (LOCFILE("customer.dbf","DBF","Where is customer?"));
  53.             AGAIN ALIAS customer ;
  54.             ORDER TAG "_qml0kfs5f"
  55.     ENDIF
  56.     
  57.     
  58.     *       *********************************************************
  59.     *       *                                                         
  60.     *       *               Windows Window definitions                
  61.     *       *                                                         
  62.     *       *********************************************************
  63.     *
  64.     
  65.     IF NOT WEXIST("_qn50lv127")
  66.         DEFINE WINDOW _qn50lv127 ;
  67.             AT  0.000, 0.000  ;
  68.             SIZE 18.188,62.500 ;
  69.             TITLE "Customer" ;
  70.             FONT "ms sans serif", 10 ;
  71.             STYLE "B" ;
  72.             FLOAT ;
  73.             CLOSE ;
  74.             MINIMIZE ;
  75.             COLOR RGB(,,,192,192,192)
  76.         MOVE WINDOW _qn50lv127 CENTER
  77.     ENDIF
  78.     
  79.     
  80.     *       *********************************************************
  81.     *       *                                                         
  82.     *       *         CUSTOMER/Windows Setup Code - SECTION 2         
  83.     *       *                                                         
  84.     *       *********************************************************
  85.     *
  86.     
  87.     #REGION 1
  88.     
  89.     
  90.     #DEFINE C_DBFEMPTY    'Database is empty, add a record?'
  91.     #DEFINE C_EDITS            'Please finish your edits.'
  92.     #DEFINE C_TOPFILE        'Top of file.'
  93.     #DEFINE C_ENDFILE        'End of file.'
  94.     #DEFINE C_BRTITLE        'Locate Record'
  95.     #DEFINE C_NOLOCK        'Sorry, could not lock record -- try again later.'
  96.     #DEFINE C_ECANCEL        'Edits Canceled.'
  97.     #DEFINE C_DELREC        'Delete selected record?'
  98.     #DEFINE C_NOFEAT        'Feature not available yet.'
  99.     #DEFINE C_NOWIZ            'Wizard application is not available.'
  100.     #DEFINE C_MAKEREPO        'Creating report with ReportWizard.'
  101.     #DEFINE C_NOREPO        'Could not create report.'
  102.     
  103.     MOVE WINDOW '_qn50lv127' CENTER
  104.     PRIVATE isediting,isadding,wzolddelete,wzolderror,wzalias,tempcurs
  105.     m.isediting=.F.
  106.     m.isadding=.F.
  107.     m.wzolddelete=SET('DELETE')
  108.     SET DELETED ON
  109.     m.wzalias=SELECT()
  110.     m.tempcurs=SYS(2015)  &&used if General field
  111.     
  112.     IF RECCOUNT()=0
  113.       IF fox_alert(C_DBFEMPTY)
  114.         APPEND BLANK
  115.       ENDIF
  116.     ENDIF
  117.     GOTO TOP
  118.     SCATTER MEMVAR MEMO
  119.     m.wzolderror=ON('error')
  120.     ON ERROR DO wizerrorhandler
  121.     
  122.     
  123.     *       *********************************************************
  124.     *       *                                                         
  125.     *       *             CUSTOMER/Windows Screen Layout              
  126.     *       *                                                         
  127.     *       *********************************************************
  128.     *
  129.     
  130.     #REGION 1
  131.     IF WVISIBLE("_qn50lv127")
  132.         ACTIVATE WINDOW _qn50lv127 SAME
  133.     ELSE
  134.         ACTIVATE WINDOW _qn50lv127 NOSHOW
  135.     ENDIF
  136.     @ 0.313,3.000 SAY "Customer"  ;
  137.         FONT "MS Sans Serif", 14 ;
  138.         STYLE "BT"
  139.     @ 2.188,0.000 TO 2.188,62.500 ;
  140.         PEN 2, 8 ;
  141.         STYLE "1"
  142.     @ 0.813,49.125 SAY "Date:"  ;
  143.         FONT "MS Sans Serif", 8 ;
  144.         STYLE "BT"
  145.     @ 0.813,53.875 SAY date() ;
  146.         SIZE 1.000,9.400 ;
  147.         FONT "MS Sans Serif", 8
  148.     @ 3.063,3.250 SAY "Cno:" ;
  149.         SIZE 1.000,9.167 ;
  150.         FONT "MS Sans Serif", 8 ;
  151.         STYLE "BIT" ;
  152.         PICTURE "@J" ;
  153.         COLOR RGB(,,,255,255,255)
  154.     @ 3.063,12.125 GET m.cno ;
  155.         SIZE 1.000,11.000 ;
  156.         DEFAULT " " ;
  157.         FONT "MS Sans Serif", 8 ;
  158.         PICTURE "@K XXXXX" ;
  159.         WHEN isediting ;
  160.         COLOR ,RGB(,,,255,255,255)
  161.     @ 4.563,3.250 SAY "Company:" ;
  162.         SIZE 1.000,9.167 ;
  163.         FONT "MS Sans Serif", 8 ;
  164.         STYLE "BIT" ;
  165.         PICTURE "@J" ;
  166.         COLOR RGB(,,,255,255,255)
  167.     @ 4.563,12.125 GET m.company ;
  168.         SIZE 1.000,49.000 ;
  169.         DEFAULT " " ;
  170.         FONT "MS Sans Serif", 8 ;
  171.         PICTURE "@K XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
  172.         WHEN isediting ;
  173.         COLOR ,RGB(,,,255,255,255)
  174.     @ 6.063,3.250 SAY "Contact:" ;
  175.         SIZE 1.000,9.167 ;
  176.         FONT "MS Sans Serif", 8 ;
  177.         STYLE "BIT" ;
  178.         PICTURE "@J" ;
  179.         COLOR RGB(,,,255,255,255)
  180.     @ 6.063,12.125 GET m.contact ;
  181.         SIZE 1.000,28.000 ;
  182.         DEFAULT " " ;
  183.         FONT "MS Sans Serif", 8 ;
  184.         PICTURE "@K XXXXXXXXXXXXXXXXXXXX" ;
  185.         WHEN isediting ;
  186.         COLOR ,RGB(,,,255,255,255)
  187.     @ 7.563,3.250 SAY "Address:" ;
  188.         SIZE 1.000,9.167 ;
  189.         FONT "MS Sans Serif", 8 ;
  190.         STYLE "BIT" ;
  191.         PICTURE "@J" ;
  192.         COLOR RGB(,,,255,255,255)
  193.     @ 7.563,12.125 GET m.address ;
  194.         SIZE 1.000,42.000 ;
  195.         DEFAULT " " ;
  196.         FONT "MS Sans Serif", 8 ;
  197.         PICTURE "@K XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
  198.         WHEN isediting ;
  199.         COLOR ,RGB(,,,255,255,255)
  200.     @ 9.063,3.250 SAY "City:" ;
  201.         SIZE 1.000,9.167 ;
  202.         FONT "MS Sans Serif", 8 ;
  203.         STYLE "BIT" ;
  204.         PICTURE "@J" ;
  205.         COLOR RGB(,,,255,255,255)
  206.     @ 9.063,12.125 GET m.city ;
  207.         SIZE 1.000,21.000 ;
  208.         DEFAULT " " ;
  209.         FONT "MS Sans Serif", 8 ;
  210.         PICTURE "@K XXXXXXXXXXXXXXX" ;
  211.         WHEN isediting ;
  212.         COLOR ,RGB(,,,255,255,255)
  213.     @ 9.063,31.500 SAY "State:" ;
  214.         SIZE 1.000,9.167 ;
  215.         FONT "MS Sans Serif", 8 ;
  216.         STYLE "BIT" ;
  217.         PICTURE "@J" ;
  218.         COLOR RGB(,,,255,255,255)
  219.     @ 9.063,40.375 GET m.state ;
  220.         SIZE 1.000,4.400 ;
  221.         DEFAULT " " ;
  222.         FONT "MS Sans Serif", 8 ;
  223.         PICTURE "@K XX" ;
  224.         WHEN isediting ;
  225.         COLOR ,RGB(,,,255,255,255)
  226.     @ 10.563,3.250 SAY "Zip:" ;
  227.         SIZE 1.000,9.167 ;
  228.         FONT "MS Sans Serif", 8 ;
  229.         STYLE "BIT" ;
  230.         PICTURE "@J" ;
  231.         COLOR RGB(,,,255,255,255)
  232.     @ 10.563,12.125 GET m.zip ;
  233.         SIZE 1.000,11.000 ;
  234.         DEFAULT " " ;
  235.         FONT "MS Sans Serif", 8 ;
  236.         PICTURE "@K XXXXX" ;
  237.         WHEN isediting ;
  238.         COLOR ,RGB(,,,255,255,255)
  239.     @ 10.563,31.500 SAY "Phone:" ;
  240.         SIZE 1.000,9.167 ;
  241.         FONT "MS Sans Serif", 8 ;
  242.         STYLE "BIT" ;
  243.         PICTURE "@J" ;
  244.         COLOR RGB(,,,255,255,255)
  245.     @ 10.563,40.375 GET m.phone ;
  246.         SIZE 1.000,19.200 ;
  247.         DEFAULT " " ;
  248.         FONT "MS Sans Serif", 8 ;
  249.         PICTURE "@K XXXXXXXXXXXX" ;
  250.         WHEN isediting ;
  251.         COLOR ,RGB(,,,255,255,255)
  252.     @ 12.063,3.250 SAY "Ono:" ;
  253.         SIZE 1.000,9.167 ;
  254.         FONT "MS Sans Serif", 8 ;
  255.         STYLE "BIT" ;
  256.         PICTURE "@J" ;
  257.         COLOR RGB(,,,255,255,255)
  258.     @ 12.063,12.125 GET m.ono ;
  259.         SIZE 1.000,2.200 ;
  260.         DEFAULT " " ;
  261.         FONT "MS Sans Serif", 8 ;
  262.         PICTURE "@K X" ;
  263.         WHEN isediting ;
  264.         COLOR ,RGB(,,,255,255,255)
  265.     @ 12.063,31.500 SAY "Ytdpurch:" ;
  266.         SIZE 1.000,9.167 ;
  267.         FONT "MS Sans Serif", 8 ;
  268.         STYLE "BIT" ;
  269.         PICTURE "@J" ;
  270.         COLOR RGB(,,,255,255,255)
  271.     @ 12.063,40.375 GET m.ytdpurch ;
  272.         SIZE 1.000,10.800 ;
  273.         DEFAULT " " ;
  274.         FONT "MS Sans Serif", 8 ;
  275.         PICTURE "@K 99,999.99" ;
  276.         WHEN isediting ;
  277.         COLOR ,RGB(,,,255,255,255)
  278.     @ 13.563,3.250 SAY "Lat:" ;
  279.         SIZE 1.000,9.167 ;
  280.         FONT "MS Sans Serif", 8 ;
  281.         STYLE "BIT" ;
  282.         PICTURE "@J" ;
  283.         COLOR RGB(,,,255,255,255)
  284.     @ 13.563,12.125 GET m.lat ;
  285.         SIZE 1.000,8.400 ;
  286.         DEFAULT " " ;
  287.         FONT "MS Sans Serif", 8 ;
  288.         PICTURE "@K 99.9999" ;
  289.         WHEN isediting ;
  290.         COLOR ,RGB(,,,255,255,255)
  291.     @ 13.563,31.500 SAY "Long:" ;
  292.         SIZE 1.000,9.167 ;
  293.         FONT "MS Sans Serif", 8 ;
  294.         STYLE "BIT" ;
  295.         PICTURE "@J" ;
  296.         COLOR RGB(,,,255,255,255)
  297.     @ 13.563,40.375 GET m.long ;
  298.         SIZE 1.000,9.600 ;
  299.         DEFAULT " " ;
  300.         FONT "MS Sans Serif", 8 ;
  301.         PICTURE "@K 999.9999" ;
  302.         WHEN isediting ;
  303.         COLOR ,RGB(,,,255,255,255)
  304.     @ 15.063,0.000 TO 15.063,62.500 ;
  305.         PEN 2, 8 ;
  306.         STYLE "1"
  307.     @ 16.000,1.250 GET m.top_btn ;
  308.         PICTURE "@*HN \<Top" ;
  309.         SIZE 1.769,7.833,0.667 ;
  310.         DEFAULT 1 ;
  311.         FONT "MS Sans Serif", 8 ;
  312.         STYLE "B" ;
  313.         VALID btn_val('TOP') ;
  314.         MESSAGE 'Go to first record.'
  315.     @ 16.000,7.250 GET m.prev_btn ;
  316.         PICTURE "@*HN \<Prev" ;
  317.         SIZE 1.769,7.833,0.667 ;
  318.         DEFAULT 1 ;
  319.         FONT "MS Sans Serif", 8 ;
  320.         STYLE "B" ;
  321.         VALID btn_val('PREV') ;
  322.         MESSAGE 'Go to previous record.'
  323.     @ 16.000,13.250 GET m.next_btn ;
  324.         PICTURE "@*HN \<Next" ;
  325.         SIZE 1.769,7.833,0.667 ;
  326.         DEFAULT 1 ;
  327.         FONT "MS Sans Serif", 8 ;
  328.         STYLE "B" ;
  329.         VALID btn_val('NEXT') ;
  330.         MESSAGE 'Go to next record.'
  331.     @ 16.000,19.250 GET m.end_btn ;
  332.         PICTURE "@*HN \<End" ;
  333.         SIZE 1.769,7.833,0.667 ;
  334.         DEFAULT 1 ;
  335.         FONT "MS Sans Serif", 8 ;
  336.         STYLE "B" ;
  337.         VALID btn_val('END') ;
  338.         MESSAGE 'Go to last record.'
  339.     @ 16.000,25.250 GET m.loc_btn ;
  340.         PICTURE "@*HN \<Locate" ;
  341.         SIZE 1.769,7.833,0.667 ;
  342.         DEFAULT 1 ;
  343.         FONT "MS Sans Serif", 8 ;
  344.         STYLE "B" ;
  345.         VALID btn_val('LOCATE') ;
  346.         MESSAGE 'Locate a record.'
  347.     @ 16.000,31.250 GET m.add_btn ;
  348.         PICTURE "@*HN \<Add" ;
  349.         SIZE 1.769,7.833,0.667 ;
  350.         DEFAULT 1 ;
  351.         FONT "MS Sans Serif", 8 ;
  352.         STYLE "B" ;
  353.         VALID btn_val('ADD') ;
  354.         MESSAGE 'Add a new record.'
  355.     @ 16.000,37.250 GET m.edit_btn ;
  356.         PICTURE "@*HN Ed\<it" ;
  357.         SIZE 1.769,7.833,0.667 ;
  358.         DEFAULT 1 ;
  359.         FONT "MS Sans Serif", 8 ;
  360.         STYLE "B" ;
  361.         VALID btn_val('EDIT') ;
  362.         MESSAGE 'Edit current record.'
  363.     @ 16.000,43.250 GET m.del_btn ;
  364.         PICTURE "@*HN \<Delete" ;
  365.         SIZE 1.769,7.833,0.667 ;
  366.         DEFAULT 1 ;
  367.         FONT "MS Sans Serif", 8 ;
  368.         STYLE "B" ;
  369.         VALID btn_val('DELETE') ;
  370.         MESSAGE 'Delete current record.'
  371.     @ 16.000,49.250 GET m.prnt_btn ;
  372.         PICTURE "@*HN P\<rint" ;
  373.         SIZE 1.769,7.833,0.667 ;
  374.         DEFAULT 1 ;
  375.         FONT "MS Sans Serif", 8 ;
  376.         STYLE "B" ;
  377.         VALID btn_val('PRINT') ;
  378.         MESSAGE 'Print report.'
  379.     @ 16.000,55.250 GET m.exit_btn ;
  380.         PICTURE "@*HN \<Close" ;
  381.         SIZE 1.769,7.833,0.667 ;
  382.         DEFAULT 1 ;
  383.         FONT "MS Sans Serif", 8 ;
  384.         STYLE "B" ;
  385.         VALID btn_val('EXIT') ;
  386.         MESSAGE 'Close screen.'
  387.     
  388.     IF NOT WVISIBLE("_qn50lv127")
  389.         ACTIVATE WINDOW _qn50lv127
  390.     ENDIF
  391.     
  392.     
  393.     *       *********************************************************
  394.     *       *                                                         
  395.     *       *    WindowsREAD contains clauses from SCREEN s6719536    
  396.     *       *                                                         
  397.     *       *********************************************************
  398.     *
  399.     
  400.     READ CYCLE ;
  401.         ACTIVATE READACT() ;
  402.         DEACTIVATE READDEAC() ;
  403.         NOLOCK
  404.     
  405.     RELEASE WINDOW _qn50lv127
  406.     
  407.     *       *********************************************************
  408.     *       *                                                         
  409.     *       *                Windows Closing Databases                
  410.     *       *                                                         
  411.     *       *********************************************************
  412.     *
  413.     
  414.     IF USED("customer")
  415.         SELECT customer
  416.         USE
  417.     ENDIF
  418.     
  419.     SELECT (m.currarea)
  420.     
  421.     
  422.     #REGION 0
  423.     
  424.     SET READBORDER &rborder
  425.     
  426.     IF m.talkstat = "ON"
  427.         SET TALK ON
  428.     ENDIF
  429.     IF m.compstat = "ON"
  430.         SET COMPATIBLE ON
  431.     ENDIF
  432.     
  433.     
  434.     *       *********************************************************
  435.     *       *                                                         
  436.     *       *              CUSTOMER/Windows Cleanup Code              
  437.     *       *                                                         
  438.     *       *********************************************************
  439.     *
  440.     
  441.     #REGION 1
  442.     SET DELETED &wzolddelete
  443.     ON ERROR &wzolderror
  444.     
  445.     ****Procedures****
  446.  
  447. CASE _DOS OR _UNIX      && no UNIX records in screen
  448.  
  449.     
  450.     #REGION 0
  451.     REGIONAL m.currarea, m.talkstat, m.compstat
  452.     
  453.     IF SET("TALK") = "ON"
  454.         SET TALK OFF
  455.         m.talkstat = "ON"
  456.     ELSE
  457.         m.talkstat = "OFF"
  458.     ENDIF
  459.     m.compstat = SET("COMPATIBLE")
  460.     SET COMPATIBLE FOXPLUS
  461.     
  462.     m.currarea = SELECT()
  463.     
  464.     
  465.     *       *********************************************************
  466.     *       *                                                         
  467.     *       *      S6725978/MS-DOS Databases, Indexes, Relations      
  468.     *       *                                                         
  469.     *       *********************************************************
  470.     *
  471.     
  472.     IF USED("customer")
  473.         SELECT customer
  474.         SET ORDER TO TAG "_qml0kfs5f"
  475.     ELSE
  476.         SELECT 0
  477.         USE (LOCFILE("customer.dbf","DBF","Where is customer?"));
  478.             AGAIN ALIAS customer ;
  479.             ORDER TAG "_qml0kfs5f"
  480.     ENDIF
  481.     
  482.     
  483.     *       *********************************************************
  484.     *       *                                                         
  485.     *       *                MS-DOS Window definitions                
  486.     *       *                                                         
  487.     *       *********************************************************
  488.     *
  489.     
  490.     IF NOT WEXIST("_qn50lv5z1")
  491.         DEFINE WINDOW _qn50lv5z1 ;
  492.             FROM INT((SROW()-19)/2),INT((SCOL()-65)/2) ;
  493.             TO INT((SROW()-19)/2)+18,INT((SCOL()-65)/2)+64 ;
  494.             TITLE "Customer" ;
  495.             FLOAT ;
  496.             CLOSE ;
  497.             MINIMIZE ;
  498.             COLOR SCHEME 1
  499.     ENDIF
  500.     
  501.     
  502.     *       *********************************************************
  503.     *       *                                                         
  504.     *       *         CUSTOMER/MS-DOS Setup Code - SECTION 2          
  505.     *       *                                                         
  506.     *       *********************************************************
  507.     *
  508.     
  509.     #REGION 1
  510.     
  511.     
  512.     #DEFINE C_DBFEMPTY    'Database is empty, add a record?'
  513.     #DEFINE C_EDITS            'Please finish your edits.'
  514.     #DEFINE C_TOPFILE        'Top of file.'
  515.     #DEFINE C_ENDFILE        'End of file.'
  516.     #DEFINE C_BRTITLE        'Locate Record'
  517.     #DEFINE C_NOLOCK        'Sorry, could not lock record -- try again later.'
  518.     #DEFINE C_ECANCEL        'Edits Canceled.'
  519.     #DEFINE C_DELREC        'Delete selected record?'
  520.     #DEFINE C_NOFEAT        'Feature not available yet.'
  521.     #DEFINE C_NOWIZ            'Wizard application is not available.'
  522.     #DEFINE C_MAKEREPO        'Creating report with ReportWizard.'
  523.     #DEFINE C_NOREPO        'Could not create report.'
  524.     
  525.     MOVE WINDOW '_qn50lv5z1' CENTER
  526.     PRIVATE isediting,isadding,wzolddelete,wzolderror,wzalias,tempcurs
  527.     m.isediting=.F.
  528.     m.isadding=.F.
  529.     m.wzolddelete=SET('DELETE')
  530.     SET DELETED ON
  531.     m.wzalias=SELECT()
  532.     m.tempcurs=SYS(2015)  &&used if General field
  533.     
  534.     IF RECCOUNT()=0
  535.       IF fox_alert(C_DBFEMPTY)
  536.         APPEND BLANK
  537.       ENDIF
  538.     ENDIF
  539.     GOTO TOP
  540.     SCATTER MEMVAR MEMO
  541.     m.wzolderror=ON('error')
  542.     ON ERROR DO wizerrorhandler
  543.     
  544.     
  545.     *       *********************************************************
  546.     *       *                                                         
  547.     *       *              CUSTOMER/MS-DOS Screen Layout              
  548.     *       *                                                         
  549.     *       *********************************************************
  550.     *
  551.     
  552.     #REGION 1
  553.     IF WVISIBLE("_qn50lv5z1")
  554.         ACTIVATE WINDOW _qn50lv5z1 SAME
  555.     ELSE
  556.         ACTIVATE WINDOW _qn50lv5z1 NOSHOW
  557.     ENDIF
  558.     @ 0,2 SAY "Customer" ;
  559.         SIZE 1,8, 0
  560.     @ 2,0 TO 2,62
  561.     @ 1,49 SAY "Date:" ;
  562.         SIZE 1,5, 0
  563.     @ 1,54 SAY date() ;
  564.         SIZE 1,8
  565.     @ 3,3 SAY "Cno:" ;
  566.         SIZE 1,7 ;
  567.         PICTURE "@J"
  568.     @ 3,12 GET m.cno ;
  569.         SIZE 1,9 ;
  570.         DEFAULT " " ;
  571.         PICTURE "@K XXXXX" ;
  572.         WHEN isediting
  573.     @ 5,3 SAY "Company:" ;
  574.         SIZE 1,7 ;
  575.         PICTURE "@J"
  576.     @ 5,12 GET m.company ;
  577.         SIZE 1,33 ;
  578.         DEFAULT " " ;
  579.         PICTURE "@K XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
  580.         WHEN isediting
  581.     @ 6,3 SAY "Contact:" ;
  582.         SIZE 1,7 ;
  583.         PICTURE "@J"
  584.     @ 6,12 GET m.contact ;
  585.         SIZE 1,19 ;
  586.         DEFAULT " " ;
  587.         PICTURE "@K XXXXXXXXXXXXXXXXXXXX" ;
  588.         WHEN isediting
  589.     @ 8,3 SAY "Address:" ;
  590.         SIZE 1,7 ;
  591.         PICTURE "@J"
  592.     @ 8,12 GET m.address ;
  593.         SIZE 1,28 ;
  594.         DEFAULT " " ;
  595.         PICTURE "@K XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
  596.         WHEN isediting
  597.     @ 9,3 SAY "City:" ;
  598.         SIZE 1,7 ;
  599.         PICTURE "@J"
  600.     @ 9,12 GET m.city ;
  601.         SIZE 1,17 ;
  602.         DEFAULT " " ;
  603.         PICTURE "@K XXXXXXXXXXXXXXX" ;
  604.         WHEN isediting
  605.     @ 9,32 SAY "State:" ;
  606.         SIZE 1,7 ;
  607.         PICTURE "@J"
  608.     @ 9,40 GET m.state ;
  609.         SIZE 1,4 ;
  610.         DEFAULT " " ;
  611.         PICTURE "@K XX" ;
  612.         WHEN isediting
  613.     @ 11,3 SAY "Zip:" ;
  614.         SIZE 1,7 ;
  615.         PICTURE "@J"
  616.     @ 11,12 GET m.zip ;
  617.         SIZE 1,9 ;
  618.         DEFAULT " " ;
  619.         PICTURE "@K XXXXX" ;
  620.         WHEN isediting
  621.     @ 11,32 SAY "Phone:" ;
  622.         SIZE 1,7 ;
  623.         PICTURE "@J"
  624.     @ 11,40 GET m.phone ;
  625.         SIZE 1,15 ;
  626.         DEFAULT " " ;
  627.         PICTURE "@K XXXXXXXXXXXX" ;
  628.         WHEN isediting
  629.     @ 12,3 SAY "Ono:" ;
  630.         SIZE 1,7 ;
  631.         PICTURE "@J"
  632.     @ 12,12 GET m.ono ;
  633.         SIZE 1,2 ;
  634.         DEFAULT " " ;
  635.         PICTURE "@K X" ;
  636.         WHEN isediting
  637.     @ 12,32 SAY "Ytdpurch:" ;
  638.         SIZE 1,7 ;
  639.         PICTURE "@J"
  640.     @ 12,40 GET m.ytdpurch ;
  641.         SIZE 1,9 ;
  642.         DEFAULT " " ;
  643.         PICTURE "@K 99,999.99" ;
  644.         WHEN isediting
  645.     @ 14,3 SAY "Lat:" ;
  646.         SIZE 1,7 ;
  647.         PICTURE "@J"
  648.     @ 14,12 GET m.lat ;
  649.         SIZE 1,7 ;
  650.         DEFAULT " " ;
  651.         PICTURE "@K 99.9999" ;
  652.         WHEN isediting
  653.     @ 14,32 SAY "Long:" ;
  654.         SIZE 1,7 ;
  655.         PICTURE "@J"
  656.     @ 14,40 GET m.long ;
  657.         SIZE 1,8 ;
  658.         DEFAULT " " ;
  659.         PICTURE "@K 999.9999" ;
  660.         WHEN isediting
  661.     @ 15,0 TO 15,62
  662.     @ 16,1 GET m.top_btn ;
  663.         PICTURE "@*HN \<Top" ;
  664.         SIZE 1,6,1 ;
  665.         DEFAULT 1 ;
  666.         VALID btn_val('TOP') ;
  667.         MESSAGE 'Go to first record.'
  668.     @ 16,7 GET m.prev_btn ;
  669.         PICTURE "@*HN \<Prev" ;
  670.         SIZE 1,6,1 ;
  671.         DEFAULT 1 ;
  672.         VALID btn_val('PREV') ;
  673.         MESSAGE 'Go to previous record.'
  674.     @ 16,13 GET m.next_btn ;
  675.         PICTURE "@*HN \<Next" ;
  676.         SIZE 1,6,1 ;
  677.         DEFAULT 1 ;
  678.         VALID btn_val('NEXT') ;
  679.         MESSAGE 'Go to next record.'
  680.     @ 16,19 GET m.end_btn ;
  681.         PICTURE "@*HN \<End" ;
  682.         SIZE 1,6,1 ;
  683.         DEFAULT 1 ;
  684.         VALID btn_val('END') ;
  685.         MESSAGE 'Go to last record.'
  686.     @ 16,25 GET m.loc_btn ;
  687.         PICTURE "@*HN \<Locate" ;
  688.         SIZE 1,8,1 ;
  689.         DEFAULT 1 ;
  690.         VALID btn_val('LOCATE') ;
  691.         MESSAGE 'Locate a record.'
  692.     @ 16,31 GET m.add_btn ;
  693.         PICTURE "@*HN \<Add" ;
  694.         SIZE 1,6,1 ;
  695.         DEFAULT 1 ;
  696.         VALID btn_val('ADD') ;
  697.         MESSAGE 'Add a new record.'
  698.     @ 16,37 GET m.edit_btn ;
  699.         PICTURE "@*HN Ed\<it" ;
  700.         SIZE 1,6,1 ;
  701.         DEFAULT 1 ;
  702.         VALID btn_val('EDIT') ;
  703.         MESSAGE 'Edit current record.'
  704.     @ 16,43 GET m.del_btn ;
  705.         PICTURE "@*HN \<Delete" ;
  706.         SIZE 1,8,1 ;
  707.         DEFAULT 1 ;
  708.         VALID btn_val('DELETE') ;
  709.         MESSAGE 'Delete current record.'
  710.     @ 16,49 GET m.prnt_btn ;
  711.         PICTURE "@*HN P\<rint" ;
  712.         SIZE 1,7,1 ;
  713.         DEFAULT 1 ;
  714.         VALID btn_val('PRINT') ;
  715.         MESSAGE 'Print report.'
  716.     @ 16,55 GET m.exit_btn ;
  717.         PICTURE "@*HN \<Close" ;
  718.         SIZE 1,7,1 ;
  719.         DEFAULT 1 ;
  720.         VALID btn_val('EXIT') ;
  721.         MESSAGE 'Close screen.'
  722.     
  723.     IF NOT WVISIBLE("_qn50lv5z1")
  724.         ACTIVATE WINDOW _qn50lv5z1
  725.     ENDIF
  726.     
  727.     
  728.     *       *********************************************************
  729.     *       *                                                         
  730.     *       *    MS-DOSREAD contains clauses from SCREEN s6725978     
  731.     *       *                                                         
  732.     *       *********************************************************
  733.     *
  734.     
  735.     READ CYCLE ;
  736.         ACTIVATE READACT() ;
  737.         DEACTIVATE READDEAC() ;
  738.         NOLOCK
  739.     
  740.     RELEASE WINDOW _qn50lv5z1
  741.     
  742.     *       *********************************************************
  743.     *       *                                                         
  744.     *       *                MS-DOS Closing Databases                 
  745.     *       *                                                         
  746.     *       *********************************************************
  747.     *
  748.     
  749.     IF USED("customer")
  750.         SELECT customer
  751.         USE
  752.     ENDIF
  753.     
  754.     SELECT (m.currarea)
  755.     
  756.     
  757.     #REGION 0
  758.     IF m.talkstat = "ON"
  759.         SET TALK ON
  760.     ENDIF
  761.     IF m.compstat = "ON"
  762.         SET COMPATIBLE ON
  763.     ENDIF
  764.     
  765.     
  766.     *       *********************************************************
  767.     *       *                                                         
  768.     *       *              CUSTOMER/MS-DOS Cleanup Code               
  769.     *       *                                                         
  770.     *       *********************************************************
  771.     *
  772.     
  773.     #REGION 1
  774.     SET DELETED &wzolddelete
  775.     ON ERROR &wzolderror
  776.     
  777.     ****Procedures****
  778.  
  779. ENDCASE
  780.  
  781.  
  782.  
  783. *       *********************************************************
  784. *       *                                                         
  785. *       *  CUSTOMER/MS-DOS Supporting Procedures and Functions    
  786. *       *                                                         
  787. *       *********************************************************
  788. *
  789.  
  790. #REGION 1
  791. PROCEDURE readdeac
  792.   IF isediting
  793.     ACTIVATE WINDOW (WLAST())
  794.     WAIT WINDOW C_EDITS NOWAIT
  795.   ENDIF
  796.   IF !WVISIBLE(WOUTPUT())
  797.     CLEAR READ
  798.     RETURN .T.
  799.   ENDIF
  800. RETURN .F.
  801.  
  802. PROCEDURE readact
  803.   IF !isediting
  804.       SELECT (m.wzalias)
  805.       SHOW GETS
  806.   ENDIF
  807. RETURN
  808.  
  809. PROCEDURE fox_alert
  810.     PARAMETER wzalrtmess
  811.     PRIVATE alrtbtn
  812.     m.alrtbtn=2
  813.     DEFINE WINDOW _qec1ij2t7 AT 0,0 SIZE 8,50 ;
  814.       FONT "MS Sans Serif",10 STYLE 'B' ;
  815.       FLOAT NOCLOSE NOMINIMIZE DOUBLE TITLE WTITLE()
  816.     MOVE WINDOW _qec1ij2t7 CENTER
  817.     ACTIVATE WINDOW _qec1ij2t7 NOSHOW
  818.     @ 2,(50-txtwidth(wzalrtmess))/2 SAY wzalrtmess;
  819.       FONT "MS Sans Serif", 10 STYLE "B"
  820.     @ 6,18 GET m.alrtbtn ;
  821.       PICTURE "@*HT \<OK;\?\!\<Cancel" ;
  822.       SIZE 1.769,8.667,1.333 ;
  823.       FONT "MS Sans Serif", 8 STYLE "B"
  824.     ACTIVATE WINDOW _qec1ij2t7
  825.     READ CYCLE MODAL
  826.     RELEASE WINDOW _qec1ij2t7
  827. RETURN m.alrtbtn=1
  828.  
  829.  
  830. PROCEDURE BTN_VAL
  831.     PARAMETER m.btnname
  832.     DO CASE
  833.     CASE  m.btnname='TOP'
  834.         GO TOP
  835.         WAIT WINDOW C_TOPFILE NOWAIT
  836.     CASE  m.btnname='PREV'
  837.         IF !BOF()
  838.             SKIP -1
  839.          ENDIF
  840.          IF BOF()
  841.             WAIT WINDOW C_TOPFILE NOWAIT
  842.             GO TOP
  843.         ENDIF
  844.     CASE  m.btnname='NEXT'
  845.         IF !EOF()
  846.             SKIP 1
  847.         ENDIF
  848.         IF EOF()
  849.             WAIT WINDOW C_ENDFILE NOWAIT
  850.             GO BOTTOM
  851.         ENDIF
  852.     CASE  m.btnname='END'
  853.         GO BOTTOM
  854.         WAIT WINDOW C_ENDFILE NOWAIT
  855.     CASE  m.btnname='LOCATE'
  856.         DEFINE WINDOW wzlocate FROM 1,1 TO 15,35;
  857.             SYSTEM GROW CLOSE ZOOM FLOAT
  858.         MOVE WINDOW wzlocate CENTER
  859.         BROWSE WINDOW wzlocate NOEDIT NODELETE NOMENU ;
  860.             TITLE C_BRTITLE
  861.         RELEASE WINDOW wzlocate
  862.     CASE  m.btnname='ADD'  AND !isediting &&add record
  863.         isediting=.T.
  864.         isadding=.T.
  865.         =edithand('ADD')
  866.         _curobj=1
  867.         DO refresh
  868.         SHOW GETS
  869.         RETURN
  870.     CASE  m.btnname='EDIT'  AND !isediting &&edit record
  871.         IF EOF() OR BOF()
  872.             WAIT WINDOW C_ENDFILE NOWAIT
  873.             RETURN
  874.         ENDIF
  875.         IF RLOCK()
  876.             isediting=.T.
  877.             _curobj=1
  878.             DO refresh
  879.             RETURN
  880.         ELSE
  881.             WAIT WINDOW C_NOLOCK
  882.         ENDIF
  883.     CASE m.btnname='EDIT'  AND isediting &&save record
  884.         IF isadding
  885.             =edithand('SAVE')
  886.         ELSE
  887.             GATHER MEMVAR MEMO
  888.             UNLOCK
  889.         ENDIF
  890.         isediting=.F.
  891.         isadding=.F.
  892.         DO refresh
  893.     CASE m.btnname='DELETE'  AND isediting     &&cancel record
  894.         IF isadding
  895.             =edithand('CANCEL')
  896.         ENDIF
  897.         isediting=.F.
  898.         isadding=.F.
  899.         WAIT WINDOW C_ECANCEL NOWAIT
  900.         DO refresh
  901.     CASE m.btnname='DELETE'
  902.         IF EOF() OR BOF()
  903.             WAIT WINDOW C_ENDFILE NOWAIT
  904.             RETURN
  905.         ENDIF
  906.         IF fox_alert(C_DELREC)
  907.             DELETE
  908.             IF !EOF()
  909.                 SKIP 1
  910.             ENDIF
  911.             IF EOF()
  912.                 WAIT WINDOW C_ENDFILE NOWAIT
  913.                 GO BOTTOM
  914.             ENDIF
  915.         ENDIF
  916.     CASE m.btnname='PRINT'
  917.       PRIVATE sOldError,wizfname,saverec
  918.       PRIVATE prnt_btn,p_recs,p_output,pr_out,pr_record
  919.       STORE 1 TO p_recs,p_output
  920.       STORE 0 TO prnt_btn
  921.       STORE RECNO() TO saverec
  922.       m.sOldError=ON('error')
  923.       DO pdialog
  924.       IF m.prnt_btn = 2
  925.         RETURN
  926.       ENDIF
  927.       IF !FILE(ALIAS()+'.FRX')
  928.           m.wizfname=SYS(2004)+'WIZARDS\'+'WIZARD.APP'
  929.           IF !FILE(m.wizfname)
  930.             ON ERROR *
  931.             m.wizfname=LOCFILE('WIZARD.APP','APP','Locate WIZARD.APP:')
  932.             ON ERROR &sOldError
  933.             IF !'WIZARD.APP'$UPPER(m.wizfname)
  934.                   WAIT WINDOW C_NOWIZ
  935.                   RETURN
  936.             ENDIF
  937.           ENDIF
  938.          WAIT WINDOW C_MAKEREPO NOWAIT
  939.           DO (m.wizfname) WITH '','WZ_QREPO','NOSCRN;VERTICAL'
  940.          WAIT CLEAR
  941.           IF !FILE(ALIAS()+'.FRX')  &&wizard could not create report
  942.              WAIT WINDOW C_NOREPO
  943.              RETURN
  944.           ENDIF
  945.       ENDIF
  946.     
  947.         m.pr_out=IIF(m.p_output=1,'TO PRINT NOCONSOLE','PREVIEW')
  948.       m.pr_record=IIF(m.p_recs=1,'NEXT 1','ALL')
  949.       ON ERROR *
  950.         REPORT FORM (ALIAS()) &pr_out &pr_record
  951.       ON ERROR &sOldError
  952.       GO m.saverec
  953.  
  954.     CASE m.btnname='EXIT'
  955.         m.bailout=.T.    &&this is needed if used with FoxApp
  956.         CLEAR READ
  957.         RETURN
  958.     ENDCASE
  959.     SCATTER MEMVAR MEMO
  960.     SHOW GETS
  961. RETURN
  962.  
  963. PROCEDURE REFRESH
  964.   IF isediting
  965.     SHOW GET top_btn DISABLE
  966.     SHOW GET prev_btn DISABLE
  967.     SHOW GET next_btn DISABLE
  968.     SHOW GET end_btn DISABLE
  969.     SHOW GET loc_btn DISABLE
  970.     SHOW GET add_btn DISABLE
  971.     SHOW GET del_btn DISABLE
  972.     SHOW GET exit_btn DISABLE
  973.     SHOW GET prnt_btn DISABLE
  974.     
  975.     SHOW GET edit_btn,1 PROMPT "\<Save"
  976.     SHOW GET del_btn,1 PROMPT "\<Cancel"
  977.   ELSE
  978.     SHOW GET edit_btn,1 PROMPT "\<Edit"
  979.     SHOW GET del_btn,1 PROMPT "\<Delete"
  980.     SHOW GETS ENABLE
  981.   ENDIF
  982. RETURN
  983.  
  984.  
  985. PROCEDURE pdialog
  986.     DEFINE WINDOW _qjn12zbvh ;
  987.         AT  0.000, 0.000  ;
  988.         SIZE 13.231,54.800 ;
  989.         TITLE "Microsoft FoxPro" ;
  990.         FONT "MS Sans Serif", 8 ;
  991.         FLOAT NOCLOSE MINIMIZE SYSTEM
  992.     MOVE WINDOW _qjn12zbvh CENTER
  993.     ACTIVATE WINDOW _qjn12zbvh NOSHOW
  994.     @ 2.846,33.600 SAY "Output:"  ;
  995.         FONT "MS Sans Serif", 8 ;
  996.         STYLE "BT"
  997.     @ 2.846,4.800 SAY "Print:"  ;
  998.         FONT "MS Sans Serif", 8 ;
  999.         STYLE "BT"
  1000.     @ 4.692,7.200 GET m.p_recs ;
  1001.         PICTURE "@*RVN \<Current Record;\<All Records" ;
  1002.         SIZE 1.308,18.500,0.308 ;
  1003.         DEFAULT 1 ;
  1004.         FONT "MS Sans Serif", 8 ;
  1005.         STYLE "BT"
  1006.     @ 4.692,36.000 GET m.p_output ;
  1007.         PICTURE "@*RVN \<Printer;Pre\<view" ;
  1008.         SIZE 1.308,12.000,0.308 ;
  1009.         DEFAULT 1 ;
  1010.         FONT "MS Sans Serif", 8 ;
  1011.         STYLE "BT"
  1012.     @ 10.154,16.600 GET m.prnt_btn ;
  1013.         PICTURE "@*HT \<Print;\<Cancel" ;
  1014.         SIZE 1.769,8.667,0.667 ;
  1015.         DEFAULT 1 ;
  1016.         FONT "MS Sans Serif", 8 ;
  1017.         STYLE "B"
  1018.     ACTIVATE WINDOW _qjn12zbvh
  1019.     READ CYCLE MODAL
  1020.     RELEASE WINDOW _qjn12zbvh
  1021. RETURN
  1022.  
  1023. PROCEDURE wizerrorhandler
  1024. * This very simple error handler is primarily intended
  1025. * to trap for General field OLE errors which may occur
  1026. * during editing from the MODIFY GENERAL window.
  1027. WAIT WINDOW message()
  1028. RETURN
  1029.  
  1030. PROCEDURE edithand
  1031.     PARAMETER m.paction
  1032.     * procedure handles edits
  1033.     DO CASE
  1034.     CASE m.paction = 'ADD'
  1035.         SCATTER MEMVAR MEMO BLANK
  1036.     CASE m.paction = 'SAVE'
  1037.         INSERT INTO (ALIAS()) FROM MEMVAR
  1038.     CASE m.paction = 'CANCEL'
  1039.         * nothing here
  1040.     ENDCASE
  1041. RETURN