zoukankan      html  css  js  c++  java
  • Schema command

    Transaction Code: PE01

    Menu Path: Human Resources --> Payroll -> Tools --> Maintenance Tools -> Schemas

    Double-clicking on a sub-schema will take you to the maintenance screen for that schema.

    Double-clicking on any of the rules (PCR's) will take you to the rule editor. You can tell the difference between sub-schemas a rules by looking at the parameters. The name of the sub-schema can be found in the Par 1 column. The main schema generally calls all the different sub-schemas. The sub-schemas will then call the payroll rules. In most cases, when a rule is called, there will be parameters in the Par 2 or Par 3 columns.

    In the main, most sub-schemas are called by the "copy" command.

    Schemas, rules and features in SAP use the following line editor commands. This allows you to move, delete, copy and insert lines. All the commands are entered in the area used for the line numbers. Overwrite any of the numbers with the commands shown below. For the commands using 1 letter - hit the return key once you have entered the letter. For the commands using 2 letters - hit the return key after the first 2 letters have been entered or after both sets have been entered.

    The most commonly used commands are:


    Line Command

    Description

    D

    Deletes a line

    I

    Inserts a line

    M

    Moves a line

    C

    Copies a line

    DD

    Indicates the start of a block to be deleted

    DD

    Indicates the end of a block to be deleted

    CC

    Indicates the start of a block to be copied

    CC

    Indicates the end of a block to be copied

    MM

    Indicates the start of a block to be moved

    MM

    Indicates the end of a block to be moved

    Once you have chosen the block to move or copy, you need to show where to move or copy it to in the schema. The following commands indicate where you can copy or move the lines to.


    Line Command

    Description

    A

    Places the block after the chosen line

    B

    Places the block before the chosen line

    Remember when calling the PCR from the schema: GEN means that the wagetype is **** i.e. you haven't specified one and NOAB means that it will look at any EE Sub-Grouping. If you want the rule to use specific wage types or groupings, then leave either blank.

    Use the print option and VAR (PAR 2) in the schema to output the variable table during processing.

    Position is very important for schemas. Look to see where a similar piece of processing has taken place. If in doubt, place the rule after the similar data has been read and processed.

    Commonly used Functions


    Function

    Description

    PIT

    Process Input Table

    PRT

    Process Results Table

    COPY

    Calls a schema placed in PAR1.

    BLOCK

    Defines the start and end of a nested node

    IF/ELSE/ENDIF

    The schema is processed if the condition is fulfilled

    Pxxx

    Processes the information held in infotype xxxx.

    ACTIO

    Actio calls a PCR. It is processed, irrespective of whether the wage type exists or not.

    Commonly used Parameters


    Parameter

    Description

    GEN

    Process any wage type

    9000

    Processes only wage type 9000

    NOAB

    Process for any EE sub-group groupings

    1

    Processes the rule only for EE sub-group grouping of 1

    Payroll PCR's

    Transaction Code: PE02

    Menu Path: Human Resources --> Payroll -> Tools --> Maintenance Tools -> Rules

    Commonly used operations in payroll configuration


    Operation

    Description

    *

    This covers all the remaining entries not already specified. If you leave the line blank for the operation then the WT is dropped. Remember you always have to have an option for * in your PCR.

    ADDCU

    Cumulates the wage type into the relevant cumulation (/101...) and valuation(/201...) wage types

    {*}ADDNA **

    From the IT, Number and Amt are cumulated into the OT. Blank is OT whilst E refers to the RT.

    ADDNA 4067

    Current Num and Amt are added in to wage type 4067.

    ADDWSE9N03

    This operation is very similar to ADDWT. The only difference is that it writes the value to table V0 as well

    ADDWSI*

    Store the current wage type in the IT.

    {*}ADDWT **

    Store wage type in IT/OT

    ADDWT 1103

    All the current values for amt, num and rte are added to the values that are currently held in wt 1103

    ADDWT&T

    Adds the current wage type to the variable table as T - which can be used at a later stage

    ADDWTA*

    The values in the wage type are copied to the previous employer table VAG - called in the rules XDPI, XDPR & XDPT

    ADDWTC*

    The values in the current wage type are added into the CRT

    ADDWTC/101

    The values in the current wage type are added into the CRT for the technical wage type /101

    ADDWTD*

    The values in the current wage type are added into the Difference table DT

    ADDWTD/551

    The values in the current wage type are added into the difference table DT for the technical wage type /551

    ADDWTD/APO

    Add the current wage type to the difference table (DT)

    ADDWTE

    Store amount in Results Table (RT) - difference with line below

    ADDWTE*

    Add the current wage type to the results table RT

    ADDWTE/101

    Add the current wage type to the results table as /101

    ADDWTH/201

    Add the current wage type to the old results table (ORT) as wage type /201

    ADDWTI*

    Add the current wage type to the input table IT

    ADDWTI/101

    The values in the current wage type are added into the input table IT for the technical wage type /101

    ADDWTL*

    Add the current wage type to the results table last payroll (LRT)

    ADDWTN

    Used in XLON

    ADDWTN/LRP

    (Loans - XLON)

    ADDWTW

    Add the current wage type to the wage maintenance table

    AMT- 9023

    Subtract amount field from wage type 9023 from Table IT (if wage type 9023 is available.)

    AMT%33.33

    Multiply the amount by 33.33%

    AMT%KSAPRO

    Multiply the amount by the value SAPRO held in table T511k

    AMT-& T

    Amount minus the value held in variable T

    AMT-1{*}

    Amount multiplied by negative 1

    AMT*12

    Multiply amount by 12

    AMT*KGENAU

    Multiply the amount by the constant GENAU held in table T511k. GENAU is used to factor up by 4 or 5 factors of 10 to avoid the issue of errors caused by rounding.

    AMT-.04

    Subtract 0.4 from the amount field

    AMT/2

    Divide the amount by 2

    AMT/KGENAU

    Divide the amount by the factor GENAU held in the constants table T511k

    AMT/KPKWPR

    Amount divided by the constant PKWRP held in table T511K

    AMT/KZF001

    Amount is divided by constant ZF001 from table T511K

    {*}AMT? **

    Compare the value held in the amount field for all wage types

    AMT? /GPY

    Compare the value held in the amount field for wage type /GPY

    AMT?& ZAPR

    Compare the value held in the amount field against the constant ZAPR

    AMT?0

    Compare the value held in the amount field against 0

    AMT?E /167

    Compare the amount against the value of the amount held in the results table RT for wage type /167

    AMT?IGRUEB

    Compare the current amount against the limit held for the bank transfer

    AMT+ /564

    Add the amount from wage type /564 from the IT

    AMT+ 0001

    Add amount field from wage type 0001 from Table IT (if wage type 0001 is available.)

    AMT+ 9013

    Add amount field from wage type 9013 from Table IT (if wage type 9013 is available.)

    AMT+& ZSAP

    Add the value held in the variable ZSAP to the amount for the current wage type being processed

    AMT+E 910B

    Add the current amount to the RT and place in wage type 910B

    AMT+O /ZPO

    Add Amt from wage type /ZPO into VORT (Summarised ORT)

    AMT< /562

    Checks whether the currently held amount is less that that held in the wage type /562

    {*}AMT= **

    This sets the amount = zero for the wage type in question

    AMT= /111

    Store the value in the amount field of wage type /111 in the amount field of wage type 2110

    AMT= 1000

    Store the value in the amount field of wage type 1000 in the amount field of wage type 2110

    AMT= BETRG

    Let the amount equal the value held in the BETRG (amount) field for the wage type in question

    AMT= PKWWR

    Reset the amount on wage type xxxx to that held in the value for KWWR held in T511K

    AMT= PLANS

    Sets the amount = position number

    AMT=& /426

    Set the amt = amt held on technical WT /426

    AMT=& TASA

    Reset the amount on wage type xxxx to that held in the temporary wage type TASA

    AMT=0

    Let the amount equal zero

    {*}AMT=A **

    The amount is set to the value held in the table VAG - previous employee data

    {*}AMT=E **

    Lets the Amt = the Amt held for the current wage type in the RT

    AMT=E /167

    Lets the Amt = the Amt held for technical wage type /167 in the RT

    AMT=KSAPLR

    Set the amount = the value SAPLR held in table T511k

    {*}AMT=L **

    Lets the Amt = the Amt held for the current wage type in the LRT - last result table

    AMT=L /561

    Lets the Amt = the Amt held for the wage type /561 in the LRT - last result table

    AMT=N /LBB

    Add the amount value in technical loan wage type /LBB (loan balance) to specific loan balance wage type

    AMT=N /LOP

    Add the amount value in technical loan wage type /LOP (loan payment) to specific loan payment wage type

    AMT=N /LRP

    Add the amount value in technical loan wage type /LRP (loan repayment) to specific loan repayment wage type

    AMT=Q /GPY

    Lets the Amt = the Amt held for the wage type /561 in the OCRT - old cumulative result table

    AMT=ZERO

    Reduce the value in the amount field to zero

    AMT>*

    "Maximum formation: The greater value of * and the current value of the AMT field is determined and written to the current AMT field."

    AMT-1

    Multiply the amount by -1 - I think this should be subtract 1 from the amt

    AMT50

    If the amount field value is smaller than 50, it is retained. Otherwise it is set at 50 (forming a minimum amount).

    AMT-E /167

    Subtract the Amt value held in the RT for /167 from the currently stored amount

    AMT-K43301

    Take the value held against payroll constant 43301 from the annual salary

    AMT-O /167

    Subtract the Amt value held in the ORT for /167 from the currently stored amount

    AMT-R 9019

    Amt for the current wage type less the value held in the RT for 9019 (Results wage types using exact splits)

    AMTS /564

    Subtraction to zero - the value cannot be less than zero.

    AMTS*

    Subtraction to 0 (not negative) for the current wage type

    AMTS* 9013

    Subtraction to 0 (not negative). Current wage type less 9013

    AMTSE 9043

    Subtraction to 0 (not negative). Current wage type less Amt held in the RT for wage type 9043

    BTREC /558

    "Sets the recipient data for bank transfers. Can only be run after bank transfer data has been read from an infotype. Data on wage type and amount are transferred from the current fields (OT) and retained in the transfer table together with data on the recipient of the record last read."

    CMPER 0510

    Compares the current amount with that held for period 10 in year 05.

    D

    Expect a decision in this line

    D AMT?0

    The amount field value is compared with 0, and the result ('>', '=' or '<') is placed in the variable key.

    D VWTCL 01

    Make a decision on processing class 01

    DIVID ANR

    Divide the amount by the number and store the result in the rate field

    DIVID ARA

    Divide the value in amount field by the value in the rate field and put the result in the amount field

    DIVID ARR

    Divide the amount by the rate and store the answer in the rate for the wagetype

    DIVID NRN

    Divide the number by the rate and store the answer in the number field

    {*}ELIMI **

    Eliminate all splits

    ELIMI A

    Eliminate splits - work center period (WPBP)

    ELIMI K

    Eliminate splits - cost accounting

    ELIMI KTX

    Eliminate the splits for cost accounting, alternative payments and variable assignment

    ELIMI R

    Eliminate splits - employee sub-group grouping for PCRs

    ELIMI T

    Eliminate splits - alternative payments (ALP)

    ELIMI U

    Eliminate splits - bank transfer (BT)

    ELIMI X

    Eliminate splits - variable assignment

    ELIMI Y

    Eliminate splits - absence assignment

    ELIMI Z

    Eliminate splits - time unit

    ERROR

    Processing terminates for the current employee

    FILLF A

    Restore the original values for the amount - i.e. The values that were held for the amount field in the WT before any processing in this rule

    FILLF N

    Restore the original values for the number - i.e. The values that were held for the number field in the WT before any processing in this rule

    FILLF NRA

    Restore the original values for the number, rate and amount - i.e. The values that were held for the number, rate and amount fields in the WT before any processing in this rule

    FILLF R

    Restore the original values for the rate - i.e. The values that were held in the WT before any processing in this rule

    GBVRT

    "GB specific processing of AWE operation GB specific operation to overwrite the average RATE of wage type /MAE in table RT in case of a retro calculation."

    GCY ZUM2

    Call PCR ZUM2

    GCYGXALQ

    Calls PCR XALQ for all wage types - sets wage type to ****

    GEWRT

    Elimination of WPBP split in the RT

    GSXP2

    New Changes Across End of Year solution active for GBSXP phase 2

    GSXPD

    Check on Implementation Date of AVERA for SxP AWE. Called in GG70 and ensures that the old and new technical wage types for averages don't both exist.

    LRTST Y

    Evaluates the status of the LRT table. Processing is only continued if the previous month falls in the current year.

    MEANV 01

    Calculation of averages for 01 (from table T511A)

    MEANVG03

    Calcualation of averages for 03 (from table T511A) - not sure what the G implies

    MESSGxxxxx

    Can use a 5 character message. Comes up whether the log is turned on or off. Can be used as a customised error message.

    MODIF 1=02

    Sets the modifier for Wage type generation (T510S) to 02 as the employee grouping

    MODIF 2=01

    Sets the modifier for Constant valuations (T510J) to 01 as the employee grouping

    MODIF A=01

    Sets the modifier for the absence valuation rule (T544C) to 01

    MULTI ANN

    Multiply the amount by the number and store as the number field for the wage type

    MULTI NRA

    Multiply the value in number field by the value in the rate field and put the result in the amount field

    NEXTR

    Process the next line. Placing an * in the last column in the operation column has the same effect as "nextr". Remember to put a letter or number in the next line under the NL column.

    NEXTR A

    Continuation line. A...Z followed by 0...9 Don't forget to put in the letter following the NEXTR in the continuation line of the next line.

    NEXTR B

    Continuation line. A...Z followed by 0...9 Don't forget to put in the letter following the NEXTR in the continuation line of the next line.

    NUM* BSGRD

    Multiply the value in the number field by the value held against the capacity utilization level on infotype 0008

    NUM*1.5

    Multiply the value in the number field by 1.5

    NUM/100

    Divide the value in the number field by 100

    NUM?0

    Test the value in the number field against 0

    NUM+ 3710

    Add the value in the number field of wage type 3710 to the number field in the WT being processed

    NUM+& ZNIL

    Adds the number held in the temporary variable ZNIL to the currently held value for the number

    NUM+39

    Add a value of 39 to the number field

    NUM+C 3000

    Add to the NUM value from wage type 3000 held in the CRT table - to the NUM value of the WT being processed

    NUM+E /852

    Adds the number held in technical wage type /852 to the currently held value for the number

    NUM+TSAP**

    Adds the number from the partial period parameter for the paid absence measured in working hours for xx is the sum of all paid absences (totalled over all classes)

    NUM= 3000

    Set the current NUM to the value held in wage type 3000

    NUM= ANZHL

    Transfers the value of the ANZHL field to the number field.

    NUM= BWGRL

    Sets the number equal to the valuation basis per hour

    NUM= EMPCT

    NUM = Capacity utilization level from P0007 (called record layout fields in SAP Help)

    NUM= PLANS

    Sets the number equal to the position number of the employee

    NUM= STDAZ

    Sets the number equal to the number of hours taken from IT 0007

    NUM=& ZSHF

    Sets the number equal to the number held in the temporary variable ZSHF

    NUM=0

    Set the number field to zero

    NUM=39

    Store 39 in the number field

    NUM=BJRSTD

    Sets the number equal to the position number of the employee

    NUM=BTGSTD

    Sets the number equal to the daily hours worked by the employee

    NUM=BWOSTD

    Sets the number equal to the weekly hours worked by the employee

    NUM=E /SSP

    Set the NUM = the value of /SSP held in the results table

    NUM=GSDIVP

    Sets the number equal to the working hours for the employee for the entire payroll period

    NUM=GSSOLL

    Set the number = planned working time measured in working hours taken from the work schedule rule

    NUM=TSAU**

    See part period parameter help (function PARTT)

    NUM=TSAX**

    See part period parameter help (function PARTT)

    NUM=TSDIVI

    See part period parameter help (function PARTT)

    NUM=WOSTD

    See part period parameter help (function PARTT)

    NUM=YCURPP

    Set the NUM = current payroll period 

    NUM-51

    Reduce the hours held in the number field by 51

    NUM-E /845

    Take away the number for technical wage type /845 held in the RT from the currently held number

    NUM-TSDIVP

    Current value in the number field less the total working time measured in working hours taken from the total working time in payroll accounting period

    OPIND

    Evaluates operation indicator - used immediately after a database record has been read. Multiplies by -1.

    OUTWPABART

    Load Work Center and Basic Pay Data - payroll area

    OUTWPCTYMO

    Load Work Center and Basic Pay Data - country modifier

    OUTWPPAYSB

    Decide which payroll accounting area the employee is in

    OUTWPPERSB

    Load Work Center and Basic Pay Data - employee sub-group

    OUTWPPERSG

    Load Work Center and Basic Pay Data - employee group

    OUTWPPLANT

    Load Work Center and Basic Pay Data - personnel area

    OUTWPPLTSC

    Load Work Center and Basic Pay Data - personnel sub-area

    OUTWPSHIFT

    Load Work Center and Basic Pay Data - shift indicator

    OUTWPTRFAR

    Load Work Center and Basic Pay Data - pay scale type

    OUTWPWWEEK

    Load Work Center and Basic Pay Data - working week from IT 0007

    PCY X05D*

    Runs PCR X05D for all employee subgroup groupings

    PCY X93B

    Runs PCR X93B

    PPPAR A

    Reads part period parameters: leavers during payroll period

    PPPAR B

    Reads part period parameters: paid absences during payroll period

    PPPAR E

    Reads part period parameters: new joiners during payroll period

    PPPAR F

    Reads part period parameters: leavers on the first day of the next payroll period

    PPPAR P

    Reads part period parameters: if the time unit for the payroll area is different to the time unit for the pay scale type and area

    PPPAR R

    Reads part period parameters: is the employee is in an active work centre?

    PPPAR S

    Reads part period parameters: basic pay changes during payroll period

    PPPAR U

    Reads part period parameters: for unpaid absences in the period

    PRINT

    Prints the IT

    PRINT& WTG

    Prints WTG from the variable table

    PRINTC

    Prints the contents of the CRT

    PRINTE

    Prints the contents of the RT

    PRINTL

    Prints out the contents of the old results table (LRT)

    PRINTO

    Prints the summarised ORT (VORT)

    R

    Employee work centre is inactive, therefore do nothing

    R51P1?10N

    You want to know if there is an entry in table T51P1 with indicator 10 for the current IT wage type. If an entry is found, processing should be continued.

    R51P1=01R

    You want to read the entry in table T51P1 with indicator 01 for the current IT wage type, and store it in the OT table. If an entry is found it should be rejected

    R51P6A

    "Operation R51P6 reads an entry from table T51P6. This table determines the characteristics of the deduction wage types. The value of the arrears characteristic should be placed in the variable key."

    RE510T

    Read Pay Scale Table - group and level

    {*}RESET **

    Sets the splits back up again - has the opposite effect to the ELIMI * operation.

    RESET 1

    Resets the first national split (/SI)

    RESET AR

    Resets the amount and the rate - is the opposite of ELIMI. Reset * - resets all the split indicators. Give the meaning of all the other variables elsewhere in the document.

    RESET KR

    Resets the cost accounting and employee subgroup grouping values

    RESET R

    Resets R - is the opposite of ELIMI - resets the employee subgroup groupings for the employee

    RETRO

    Checks if the payroll run is a retroactive accounting run

    ROUND

    Rounds off the AMT field - see SAP help for specifics

    ROUND 005

    Rounds the AMT field up so that it is divisible by 005

    ROUND +100

    Rounds the AMT field to the next available number

    ROUNDA

    Rounds off the NUM field - see SAP help for specifics

    ROUNDB

    Rounds off the RTE field - see SAP help for specifics

    ROUNDG

    Rounds off the AMT field - see SAP help for specifics

    RTE%33.33

    Multiply the value held in the rate by 33.33% - so effectively multiply by .3333

    RTE-& HALF

    Subtract the value held in the constant HALF from the rate

    RTE* BSGRD

    Multiply the value held in the rate by the capacity utilization level field on infotype 0008

    RTE-1{*}

    Multiply the rate by negative 1 - effectively switch the sign for the value

    RTE*100

    Multiply percentage held in rate field by 100

    RTE*KGENAU

    Multiply the rate by the constant GENAU held in table T511k

    RTE*KGENAU

    Multiply the value in the rate field by the payroll constant GENAU (10,000).

    RTE/100

    Rate divide by 100

    RTE/GKDIVI

    RTE/ total working time in calendar days

    RTE/TADIVI

    RTE/ total working time in working days

    RTE/TASOLL

    RTE/ planned working time measured in work days

    RTE/TKDIVI

    RTE/ Total working time measured in calendar days

    RTE/TSDIVI

    Divide the value in the rate field by the worked hours for pay period being processed.

    RTE/TSDIVP

    RTE/ total working time measured in working hours

    RTE?& VLBS

    Check to see how the current rate compares against the value held in the temporary variable VLBS

    RTE?0

    Check to see how the current rate compares against a value of zero

    RTE+ 1001

    Adds the rate held in wage type 1001 to the currently held rate

    RTE+& MM

    Adds the rate held in the variable MM to the currently held rate

    RTE+*

    Adds the current rate to the IT

    RTE+100.00

    Adds a value of 100 to the currently held rate

    RTE+BBETRG

    Add the amount from table to the currently held rate

    RTE+TKAU10

    Add the unpaid absences measured in calendar days for counting class 10 from table T554C

    RTE= 1001

    Set the rate equal to the value held in the rate field for wage type 1001

    RTE= BETRG

    Set the rate equal to the amount

    RTE= BSGRD

    Set the rate equal to the capacity utilization level held on infotype 0008

    RTE= BWGRL

    Sets the rate equal to the valuation basis per hour

    RTE=& AB

    Sets the rate equal to the value held in the temporary variable AB

    RTE=0

    Set the rate field to zero

    RTE=10000

    Store 10000 in the rate field of wage type xxxx

    RTE=BBETRG

    Set the rate equal to the amount pulled from the table

    RTE=BWOSTD

    Sets the RTE equal to the weekly hours worked by the employee

    RTE=GKSOLL

    Set the rate as the planned calendar days

    RTE=K30551

    Store the value held against payroll constant 30551 in table T511 in the rate field of wage type xxxx

    RTE=KGENAU

    RTE set to the value of GENAU from table T511K (default set at 10 000)

    RTE=TADIVP

    RTE = Total working time measured in working days

    RTE=TASOLL

    RTE = planned working time measured in work days

    RTE=TKDIVI

    RTE = Total working time measured in calendar days

    RTE=TKSOLL

    Store the planned calendar days in the rate field of the wage type being processed

    RTE=TSAU07

    RTE = unpaid absence measured in working hours for counting class 07

    RTE=TSDIVP

    RTE = total working time measured in working hours

    RTE=TSSOLL

    RTE = planned working time measured in working hours

    RTE=ZERO

    Reduce the value in the amount field to zero

    RTE-GKAU**

    Rate subtract the part period unpaid absences in calendar days for all unpaid absences (totalled over all absence counting classes)

    RTE-TAAU**

    Rate subtract the part period unpaid absences in working days for all unpaid absences (totalled over all absence counting classes)

    RTE-TKAU**

    Take away any unpaid absence, in calendar days, from the current rate (totalled over all absence counting classes)

    RTE-TKAU20

    Take away any unpaid absence, in calendar days, from the current rate (for absence counting class 20)

    RTE-TSAU**

    Take away any unpaid absence, in worked hours, from the currently held rate (totalled over all absence counting classes)

    SCOND=F IF

    The condition for function IF is false

    SCOND=T AL

    Set condition for Function LPBEG when the condition is true

    SCOND=T IF

    The condition for function IF is true

    SCOND=T IF

    The condition for function IF is true

    SETIN A=01

    Set the work center - basic pay split for the wage type as 01

    SETIN R=1

    Set the ESG for PCR as 1

    SETIN X=NX

    You want to set X with number 01 as a variable split; the number of the split is to be increased by 1 by every call.

    STATU 2P

    Status field 2 which is valid at the start of the in-period is entered in the variable key.

    SUBRC?SET

    The return code set in the second example must be evaluated.

    SUBRC=0

    The internal return code is set to the value 0

    {*}SUBWT **

    Subtracts the current wage type - effectively changing the sign of the NRA.

    SUBWT 1025

    Subtracts the current wage type (signs change) and stores it as 1025.

    SUBWT&ZREG

    Subtracts the current wage type and stores it as a temporary variable ZREG.

    SUBWTD*

    Subtracts the current wage type (sign change) of the NRA in the difference table (DT)

    SUBWTD/551

    Subtracts the current wage type and stores it in the difference table (DT) as a temporary variable ZREG.

    SUBWTE

    Flicks the sign for NRA of the currently processed wage type and stores it in the RT

    SUBWTE*

    Subtracts the current wage type (sign change) of the NRA and stores in the results table (RT)

    SUBWTE/121

    Flicks the sign for NRA of the currently processed wage type and stores it in the RT as technical wage type /121

    SUBWTI*

    Flicks the sign for NRA of the currently processed wage type and stores it in the input table (IT)

    SUBWTI/101

    Flicks the sign for NRA of the currently processed wage type and stores it in the input table (IT) as technical wage type /101

    TABLE 503

    Table query on employee groupings / areas

    TABLE 508A

    Table query on shifts / time groups

    TABLE 510P

    Table query on premium table

    TABLE 512W

    Table query on valuation of wage types

    TABLE 528B

    Table query on positions table in PA

    TABLEALP

    Table query on the Alternative Payments table

    TABLEP0014

    Table query on data held in infotype 0014 - recurring payments and deductions

    TABLEP0015

    Table query on data held in infotype 0015 - additional payments

    VAKEYALZNR

    Place in the variable key - Y/N alternative payment

    VAKEYAUFKZ

    Place in the variable key - extra pay indicator for overtime

    VAKEYBNKSA

    Place in the variable key - variable keys are held in a certain table

    VAKEYBNKSA

    Place in the variable key - type of bank details P0009

    VAKEYLGART

    Store in the variable key the wage type

    VAKEYLNCLS

    Place in the variable key - loan type

    VAKEYLNTPY

    Place in the variable key - loan type P0045

    VAKEYLNTYP

    Place in the variable key - loan type P0045

    VAKEYPAYTY

    Place in the variable key - payroll type

    VAKEYPRAKN

    Place in the variable key - premium indicator time ITs

    VAKEYTGRLE

    Place in the variable key - variable key is filled out based on the values in the TRFGR and TRFST fields from the current PZ record

    VAKEYVERSL

    Place in the variable key - clearing key for overtime

    VAKEYZEINH

    Place in the variable key - time unit

    VAKEYZLSCH

    Place in the variable key - payment key for bank transfers

    VALBS?

    The system checks to see whether a valuation base exists

    VALBS?0

    The system checks if a valuation basis is for the current wage type in table T512W. (That the "0" line of view V_T512_B is read).

    VALBS0

    The current wage type is evaluated with the valuation basis that is entered for the current wage type itself. (That is, the "0" line of view V_512W_B).

    {*}VALBS0 **

    The system multiplies an entry that already exists in the RTE field for the current wage type with the percentage rate from a line 0 of view V_512W and then replaces the wage type names of the current wage type with the name of the wage type from the same line in V_512W.

    VALBS0 B

    Same as VALBS0 * with the exception that the data from infotype 2010 is used.

    VALBS1

    Replaces the current wage type with the statement wage type that is entered in table T512W for the second wage type derived from the current wage type, and then you want to valuate this using the corresponding valuation basis.

    VALEN 2

    Sets the length of the variable key to 2

    VALEN 3

    Sets the length of the variable key to 3

    VAOFF 2

    Variable offset - set here to 2. The system with then ignores the first 2 digits.

    VARGBINDBW

    Place the table field "indicator for indirect valuation" in the variable key

    VARGBPRAKN

    Place the table field "premium number" in the variable key

    VARGBTRFKZ

    Place the table field "ES grouping for collective agreement provision" in the variable key

    VWTCL 64

    Interrogate processing class 64

    WGTYP?

    Usually part of a decision - where the wage type is queried

    WGTYP=*

    Passes through the wage type as unchanged

    WPALL?LAST

    Decide if employee has had a pay change in pay period & if the one being processed is the last

    WPBPC

    Operation WPBPC distributes the amount of the current wage type to the active WPBP periods in the payroll period.

    WPBPCW

    This operation splits the amounts but does not distribute them to the different periods

    Z

    Expect to call another PCR in this line

    ZERO= AN

    Sets the AMT and NUM to zero

    ZERO= RNA

    Set the values for the rate, number and amount equal to zero

    ZERO=& ABCD

    Initialises the variable ABCD

    ZERO=NRA

    Sets the NUM RTE and AMT to zero

    Wishing to retrieve previous payroll period results to be used in a PCR?

    You can do so by using the operation IMPRE with parameter NN (NN periods before current payroll period). Also have a look at the documentation of IMPRE.

    An example in using this operation is as follows (reading the period 6 months ago):

    D ZERO = NRA IMPRE 6 SUBRC?IMP *

    0 AMT = O 1001SETIN A=01SETIN R=3 ZERO= NR ADDWTI1001 

    Examples:

    As above explained Schemas & PCR commands following are the some examples of the PCRs which state you all how to write a PCR’s

    Scenario: Company ABC Ltd wants to give a allowance say SAF Allowance monthly. So following is the policy for that allowance,

    SAF Allowance should calculate 15 % on the Basic Salary.

    Solution: Following is the step we need to do,

    Step 1: Create a Wage type say 1570 SAF Allw.

    Step 2: Config this WT for IT0014

    Step 3: Create Customer specific Constant in Table T511K as ZSUPR  and maintain value as 15.

    Step 4: Write a PCR as Z026 as follows,

     *

    ****

    ADDWT *

    3

    ****

    WGTYP?

    ****

    ADDWT *

    1570

    AMT= 1100

    AMT+ 1101

    AMT*KZSUPR

    AMT/100

    ADDWT 1570

    Place this in Schema INAL after the PCR XVAL processing.

    Note: Here in rule 1100 & 1101 are the base WT on which the calculation will be done for 1570 WT.

  • 相关阅读:
    【HYSBZ】1588 营业额统计
    【HYSBZ】1503 郁闷的出纳员
    【ZOJ】3228 Searching the String
    【ZOJ】3494 BCD Code
    【HDU】1754 I Hate It
    【HDU】3247 Resource Archiver
    【POJ】3481 Double Queue
    EdgeCore初学习
    go mod常用命令 已经 常见问题
    GO语言内存操作指导—unsafe的使用
  • 原文地址:https://www.cnblogs.com/xinzjing/p/4702814.html
Copyright © 2011-2022 走看看