Sample Request: R06 Employees At Max

The common library report, FOC4003 identifies your current R06 employees who are at the maximum rate for their class and range.  Usually, this type of report is generated by identifying employees whose anniversary date is equal to 'MAX'.  However, if anniversary date is not accurate, the report request below provides an alternative method by comparing the maximum rate for a class and range to the employee's base pay amount.

 

A join (JACPS) is used to retrieve records at the class and range level from both the Active Current Status (AC) file and the Payscales (PS) file, and a match is required because separate approaches are needed for the each of the class record types, C and F, for this CBID.  The report request can be executed 'as is' from the common library, or it can be copied to your library and modified for your reporting needs.  A sample of the final report is shown below.

 

              report of r06 employees at max              

                      common:  foc4003                    

                                                          

employee            ssa           class   rng      basepay

--------------      -----         ----    ---      -------

baboon, jon         555-66-1111   6265    1      $5,744.00

camel, linda        111-33-4444   6536    1      $4,086.00

turtle, rudy        333-00-0000   6251    1      $4,335.00

Record Type C

For employees with record type C, step-rate classes, a comparison is needed between the employee's base pay and the rate of the maximum step for that class and range.  Because the maximum step is a code, not an amount, a defined field  is needed to identify the corresponding rate of pay.  Since there are only a few maximum steps for record type C classes, they were identified by a separate report that is not included in the common library report request. The define (MAXRATE) is as follows:

 

EX JACPS

DEFINE FILE AC ADD

MAXRATE/P12.2 =  IF PS:STEPMAX EQ '01' THEN PS:ST1 ELSE

                 IF PS:STEPMAX EQ '04' THEN PS:ST4 ELSE

                 iF PS:STEPMAX EQ '06' THEN PS:ST6 ELSE

                 IF PS:STEPMAX EQ '07' THEN PS:ST7 ELSE

                 IF PS:STEPMAX EQ '08' THEN PS:ST8 ELSE

                 IF PS:STEPMAX EQ '15' THEN PS:ST15 ELSE 0;

END

 

The first (old) portion of the match request retrieves data for your R06 employees in step-rate classes (certified apprentices).  A WHERE statement is used to compare the employee's base pay and the maximum rate (defined above) and select only those records where the amount is equal.  Note:  Some of the fields are only printed for verification purposes and do not appear in the final report.

 

MATCH FILE AC

PRINT PS:STEPMAX MAXrate

BY AC:SSA BY AC:WNAME BY AC:CLASS BY AC:RANGE BY PS:RECTYPE BY ac:BASEPAY

IF PS:CBID EQ R06

IF PS:RECTYPE EQ C

WHERE AC:BASEPAY EQ MAXRATE

RUN

Record Type F

The second (new) portion of the report request retrieves data for your R06 employees with record type F, min-max classes.  A WHERE statement is used to compare the employee's base pay and the maximum rate (PS:MAX) and select only those records where the amount is equal.  The matched data is placed in the hold file named PERMRPT and is a displayed using a wildcard command (*) for verification.  Note:  The lines for verification are commented out in the common library report request.  

 

FILE AC

PRINT PS:MAX

BY AC:SSA BY AC:WNAME BY AC:CLASS BY AC:RANGE BY PS:RECTYPE BY ac:BASEPAY

IF PS:CBID EQ R06

IF PS:RECTYPE EQ f

WHERE AC:BASEPAY EQ ps:max

after match hold as permrpt old-or-new

end

-*

table file permrpt

print *

end

Final Report

The resulting hold file, PERMRPT, contains only those R06 employees whose base pay equals the maximum rate for their class and range.  This portion of the report request generates a printed report.

 

TABLE FILE PERMRPT

heading center

"report of r06 employees at max"

"common:  foc4003"

print ac:wname/a20 as 'employee'

      ac:ssa       as 'ssa'

      ac:class     as 'class'

      ac:range     as 'rng'

      ac:basepay   as 'basepay'

by ac:wname noprint

END

 

For more information on defines and matching, refer to your FOCUS documentation.  For more information and instructions on accessing the common library refer to your CIRS User Manual.