SAP工资基础教程(全)

上传人:鲁** 文档编号:470631734 上传时间:2023-12-14 格式:DOCX 页数:20 大小:41.84KB
返回 下载 相关 举报
SAP工资基础教程(全)_第1页
第1页 / 共20页
SAP工资基础教程(全)_第2页
第2页 / 共20页
SAP工资基础教程(全)_第3页
第3页 / 共20页
SAP工资基础教程(全)_第4页
第4页 / 共20页
SAP工资基础教程(全)_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《SAP工资基础教程(全)》由会员分享,可在线阅读,更多相关《SAP工资基础教程(全)(20页珍藏版)》请在金锄头文库上搜索。

1、SAP Payroll Basics - Part 1模式和函数 在SAP薪酬中,函数为薪酬计算提供了逻辑公式。函数执行一般的过程一如在给 定的薪资方法上计算薪酬税,从特定的信息类型中读取工资类型,计算奖金,并 保存薪酬计算的结果。SAP薪酬系统中有几十个函数,有些是与国家相关的而有 些不是。每个函数在PE04中定义并有文档;在4.5版本以上可以通过PDSY查看 函数文档,在早期的版本可以通过RPDSYSOO查看。在SAP HR术语中,一个薪酬函数与一个ABAP函数是不一样的。薪酬函数也包含 ABAP代码,但它不像ABAP函数那样执行。薪酬函数在模式中被薪酬驱动程序(假 定为PRCALCUO)

2、所执行。模式是一系列函数以某种顺序执行的集合每个函数执行后把结果传给下一个 函数。模式可以通过PE01被创建和编辑,但是被保存在表T52C0(SAP标准模式) 和表T52C1(用户创建的模式和修改SAP标准模式)。薪酬驱动读取T52C0/T52C1 表中的行并依次执行函数。我们如何跳过保存在表中的薪酬函数而执行ABAP代码来完成工作呢?在t-code PE04中可以看到ABPA代码对应的每个函数。在模式中函数名与ABAP Form有关 联,如薪酬函数WPBP映射到ABAP form fuwpbp; 函数USTAX映射到form fuustax。所以当薪酬驱动执行模式时,它从模式中取得函数名,然

3、后在名 称前加上fu,然后执行perform语句。这是一个很简单巧妙的设计。工资类型 在很大程度上,工资类型只是包含一些数据比率,数字和/或数量。但是更详 细的,一个工资类型有几十个属性用来控制它是如何被操作和处理的。但是在最 后,它在薪酬结果数据库中作为一个对象保存成比率,数字和/或数量。工资类型大多情况下用来保存一个员工薪水中收入的数量、扣除的数额和税收数 额。员工的基本工资保存在一个工资类型中,作为一般用途扣除的费用保存在一 个工资类型中,他们应征税的工资和税保存在工资类型中。作为员工工资的基本 数据元素一工资类型,也同样映射到FI/CO帐号以记录工资上的借贷,并报告在 W-2和其他税务

4、表格上。工资类型也保存统计数据如带薪时期内工作的小时数,在过去的六个月平均的 周工资,或分红计算的工资的数量。工资类型保存在几个表中,但是主要是 T512W。将有更多的时间花在T512W表的各个方面。工资类型有三类一模型、技术和用户。模型工资类型是SAP给客户用来作为向导 创建他们自己的工资类型的。他们常常以一个字母开始,SAP可能在系统升级或 HRSP中添加、删除或更新他们。技术工资类型经常由SAP产生,以/开始。 他们一般用在薪酬的特定的标准过程中,但你也可以修改他们,SAP可能在升级 的过程中或在HRSP中更新他们。所以,如果你曾经修改过一个技术工资类型, 那么要在每次升级以后或HRSP

5、以后检查他们,以保证他们还有你需要的属性。 并且不要删除任何技术工资类型。用户工资类型一般以数字开始,SAP在升级或 HRSP中是不会改变这些工资类型的。或SAP很少在升级或HRSP中改变这些工资 类型。用户工资类型是为所有公司特定的工资支付制定的。规则和操作符我们的一个长期客户曾经创建了一个保存界面的信息叫“薪水规则”!那些有经 验的SAP薪水分析者和顾问立刻看成其中的双层含义和幽默。规则包含SAP薪水 中大多基本的逻辑。其中模式是函数的集合,规则是操作符的集合。一个操作符 是一个非常基本的被用来操作工资类型的逻辑。例如,操作符MULTI是乘以工资 类型中的数字和比率以决定付给员工工资的数目

6、。操作符OUTWP获取一个员工特 定的数据并决定如何去处理它。比如,如果工作合同在信息类型1中是UA,那 么执行x,如果是UB,执行y,其他的执行z。可以通过t-code PE04和PDSY查看操作符,也可以通过PE02编辑操作符。函数 对应的ABAP form是以fu开始,操作符对应的ABAP form是以op开始。 比如,操作符MULTI,将有ABAP form opmulti。同模式一样,规则保存在 表中,规则被保存在表T52C5中。有多年计算机系统工作经验的SAP高级顾问们常在发现工资规则和编程大型机 汇编语言的类似性。然而当操作符被正确使用时功能强大,但这没有什么好神奇 的。希望我们

7、这个简短的介绍是有意义的。下一篇SAP工资技术文档中我们将更深入 探讨用在SAP的工资模式中的公共函数。函数最多能有4个参数,SAP文档将告诉你每个参数的用法。通过PDSY和PE04 能看到每个函数和操作符。COPY这与ABAP和其他编程语言中的include相同。当工资执行时,Copy是插入包含在参数1中的模式。好的模式配置风格和 好的编程风格是一样的一将公共使用的逻辑放在include中, 这样能被用于多个地方,同时也增加可读性。BLOCK在4.0版中,模式日志是放在树状结构中的。BLOCK BEG开始一个节点,BLOCK END结束一个节点。在BEG和END之间是包 含在节点中。BLOC

8、K BEG/END能被多层嵌套。同时,适当的放 置BLOCK BEG/END,使日志更方便读。IF/ELSE/ENDIF对IF函数,有2种方法说明真/假条件。SAP有几个内置的条PxxxxPITPRTACTIO件可以在参数2 (模式U000中的IF NAMC)中使用。你同时也 能在参数1中说明一个定制的规则,并且在规则中执行你任意 想要的逻辑。在规则中,使用操作符SCOND为IF函数设置真/ 假转换。工资驱动和模式从许多信息类型中读取数据并处理数据。一般 是以P和四位数字命名的信息类型来执行。所以,P0014读取 并处理从信息类型14来的数据,P0168从信息类型168处理人 生保险计划,P2

9、010从信息类型2010中读取附加工资。许多函 数,但并非所有的函数,允许你用工资规则进一步精练此过程。 例如,模式UAP0表明P0014被规则U011处理过。函数P0168 是没有使用规则的函数之一(在一些老的版本中有使用),而 是在参数中说明操作符(见模式UBE1)。有些信息类型在工资中被使用,但没有Pxxx函数。这些包括信 息类型207,208,209和210,他们都在主税款函数USTAX中 被读取并处理。信息类型0, 1,7和8被函数WPBP处理。PIT是Process Input Table的首字母简写,它也是工资中最 常用功能最强大的函数之一。当工资类型被Pxxx函数读入工资 时,

10、他们被保存在称为IT(Input Table)的内部表中。PIT通 过内部表循环,并应用包含规则中的逻辑。所以对于IT中的每 个工资类型,它都将从规则中申请一个逻辑。PIT的目标是将工资类型从IT中移出,移入到RT(Result Table)中。大多数情况下,被PIT调用的规则会改变工资类型 的一些属性然后把他们从IT中转移到RT中。工资类型也能留 在IT中并移到其他表中去。在说明操作符是如何工作的时候我 们再解释这种可能性。sPIT的一个例子是在模式UAL0中一PIT X023。当工资驱动到达 模式的这点时,PIT将遍历IT中的每个工资类型,规则X023 告诉它做什么事是取决于工资类型在过程

11、类20中的值。值为3, 4,5,6,9和B使将把工资类型移到RT中,而1,7和8是将 工资类型留在IT中,值2没有任何操作,但本质上其实是将工 资类型从IT中清除。PRT是Process Results Table的缩写。虽然大多数工资类型 处理发生在PIT,也有几种情况当你想处理工资类型时已经被 转移到RT中PRT工作原理同PIT,通过RT循环,同时从规则 中申请逻辑。在模式UTX0中,PRT被用来处理已经在RT中的税款工资类型。 函数UTX0 (US税款函数)直接返回它的工资类型给RT,所以 任何一个在税款工资类型中的处理都要PRT函数来完成。ACTI0函数处理工资规则,但是它不通过工资类

12、型表来循环, 但它在不同的工作地点/基础工资记录间循环,并挨个处理它们 的规则。例如,假设员工在当前带薪时期有2个信息类型1个 记录,ACTIO 将有 2 条记录要循环。UTXO模式是ACTIO使用规则UWH1计算带薪时期工作的小时数 的一个好的例子。象函数一样,操作符的文档也能通过PDSY和PE04找到。操作符能被放在2个不 同的组他们分布用来决策和操作工资类型。有些操作符刚好适用这2个组。操作工资类型在规则中使用工资类型就好像在ABAP中使用内表。函数通过把表的每一行一次 性都放在头空间来循环调用规则(PIT,PRT,P0014或其他)。在头空间使 用工资类型,完成以后在把它加回表中。MU

13、LTI, 这些操作符让你将工资类型中的两个字段相乘并将结果保存在第三个DIVID 字段中。能使用的字段是AMT,RTE和NUM。MULTI RNA将用一个数乘 以比率并将结果保存在amount字段。DIVID ANA将用一个数除amount 字段并将结果保存回amount字段。NUM, 这些是非常基本的也很强大的操作符,它们能操作他们各自字段的内 RTE and容。很大情况会用到这些操作符,F1帮助文档是很有用的。基本情况 AMT 下,设置值NUM=1或者AMT=2.50,但这不是一个好的实践方法。而使 用常数一在表T511K中创建名叫ZNUM的常数,并使NUM=KZNUM (把 number

14、字段的值赋给常数ZNUM)。因为常数是根据日期有效的,而规 则不是,这样当数值需要改变时使你更灵活地改变。你可以设置工资类型的头的字段等于另外一个工资类型中对应的字段 AMT二E9XXX是使amount等于RT工资类型9XXX中的amount字段。 当且仅当IT中的9XXX小于amount域的值时,AMT9XXX将amount 域设置为IT中的9XXX (取两个值中的较小者)最后,你可以使用值上的算法。RTE*100是rate字段的内容乘以100 并把结果保存会rate字段。AMT*KZNUM是amount字段被常数ZNUM中 的值相乘,ZNUM中的值可以是任意数。ADDWT 至此,我们已经使

15、用MULTI,DIVID,AMT,RTE和NUM设置我们的工资类 型的值。ADDWT将头中的工资类型转不改变值或改变值后移到其他的 表。ADDWTE*是不改变工资类型的数值加到RT中。ADDWTE9XXX将它重 命名为9XXX然后转移到RT中。用F1帮助文档将告诉你所有这些你能 转移到的表。ELIMI 裂片是用于将工资类型连接到工资中其他表的属性。有时你在做某个 and规则时不得不移除某个裂片一这就是ELIMI做的(ELIMInate裂片)。RESET 在删除一个工资类型的裂片后,你可以使用RESET重新保存他们。一 般来说,你应该避免删除裂片因为这可能导致比率和报表出错。所以使用和测试时要小

16、心。FILLF 这个简单的操作符能重置wage type域的值。例如,FILLF A是在规则 第一次被调用时将amount重置回原来的值。这里你将把把所有这些操作符集合在一起在基本工资的基础上计算固定比例的 扣除数(有几种方法计算,这里仅介绍一种)。假设基础工资在IT值,比率作 为一个完整的数保存在常数ZNUM中,你制定了一个规则包含了工资类型*和 基础工资,在这个例子中用OBAS。扣除的部分将是4XXX。所以,在这个模 式中我们将在规则Z001中执行一个PIT: PIT Z001。在规则中:工资类型*:ADDWT *(如果它不是OBAS,我们就不改变它)。规则类型 OBAS: ADDWT*, NUM=KZNUM,MULTI ANA, AMT/-100, ADDWT 4XXX(将 OBAS 传到输出表,这

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号