home *** CD-ROM | disk | FTP | other *** search
/ Software Du Jour / SoftwareDuJour.iso / BUSINESS / DBASE / DB3.ARC / PAYEMPS.PRG < prev    next >
Text File  |  1984-10-25  |  3KB  |  91 lines

  1. *********************  Payemps COMMAND FILE **********************
  2. *      Does normal payroll processing or exceptions.
  3. ******************************************************************
  4. *
  5. Salaries = .T.
  6. DO WHILE Salaries
  7.    CLEAR
  8.    @  2,12 SAY '* * * *   P A Y R O L L   F U N C T I O N S   * * * * '
  9.    @  4,12 SAY '*               1> Normal Payroll                   * '
  10.    @  6,12 SAY '*               2> Partial Payment                  * '
  11.    @  8,12 SAY '*               3> Employee Leave                   * '
  12.    @ 10,12 SAY '* * * * * * * * * * * * * * * * * * * * * * * * * * * '
  13.    @ 12,12 SAY 'Choose a number or press <ENTER>'
  14.    @ 14, 0
  15.    WAIT ' ' TO Payment
  16.    *
  17.    DO CASE
  18.       CASE Payment = '1'
  19.          @ ROW(),0 SAY 'Preparing Payroll'
  20.          DO Payroll
  21.       CASE Payment = '2'
  22.          @ ROW(),0 SAY 'Preparing Partial Payment'
  23.          CLEAR
  24.          SELECT 5
  25.          ? 'This procedure allows you to pay less than a full salary if'
  26.          ? 'for some reason an employee skipped days of work that are '
  27.          WAIT 'not to be paid for.  Do you want to continue (Y or N)? ' TO T_Continue
  28.          ?
  29.          DO WHILE UPPER(T_Continue) = 'Y'
  30.             ACCEPT 'Enter employees name.(Press <ENTER> to quit)? ' TO T_Name  
  31.             IF LEN(T_Name) <> 0
  32.                LOCATE FOR NAME = UPPER(T_Name)
  33.                IF .NOT. EOF()
  34.                   @ 11,0
  35.                   @ 9,56
  36.                   @ 5,78
  37.                   @ ROW()+2,0 SAY Name
  38.                   ? 'How many days did '+TRIM(NAME)+' work this pay period?'+SPACE(20)  
  39.                   INPUT 'There are 11 work days in a pay period.(1 hour = 0.1333) ';
  40.                         TO T_Worked
  41.                   ?
  42.                   IF TYPE('T_Worked') = 'U'
  43.                      @ ROW()+1,0 SAY 'No change'
  44.                   ELSE
  45.                      REPLACE Ratio WITH T_Worked/11.0000
  46.                      @ ROW()+1,0 SAY STR(Ratio*100,8,4)+'%'
  47.                      RELEASE T_Worked
  48.                   ENDIF
  49.                ELSE
  50.                   @ ROW()+2,0 SAY T_Name + ' not found'+SPACE(20)
  51.                ENDIF
  52.                @ 5,45
  53.                @ 4,0
  54.             ELSE
  55.                @ 12,0
  56.                T_Continue = 'N'
  57.             ENDIF
  58.          ENDDO
  59.          *
  60.       CASE Payment = '3'
  61.          @ ROW(),0 SAY 'Preparing Emloyee Leave'
  62.          CLEAR
  63.          SELECT 5
  64.          ? 'This procedure allows you to skip a paycheck in the payroll'
  65.          WAIT 'procedure.  Do you want to continue (Y or N)? ' TO T_Continue
  66.          ?
  67.          DO WHILE UPPER(T_Continue) = 'Y'
  68.             ACCEPT 'Enter employees name.(Press <ENTER> to quit)? ' TO T_Name  
  69.             IF LEN(T_Name) <> 0
  70.                LOCATE FOR NAME = UPPER(T_Name)
  71.                IF .NOT. EOF()
  72.                   @ ROW()+2,0 SAY TRIM(Name)+;
  73.                     ' has been removed from the payroll'+SPACE(20)
  74.                   REPLACE Paid WITH .T.
  75.                ELSE
  76.                   @ ROW()+2,0 SAY T_Name + ' not found'+SPACE(35)
  77.                ENDIF
  78.                @ 4,45
  79.                @ 3,0
  80.             ELSE
  81.                T_Continue = 'N'
  82.             ENDIF
  83.          ENDDO
  84.          *
  85.       CASE LEN(Payment) = 0
  86.          RETURN
  87.          *
  88.    ENDCASE
  89.    RELEASE ALL LIKE T_*
  90. ENDDO Salaries
  91.