2008-06-21

学习HR350课程

sap的HR350是一个关于Human Capital Management的ABAP编程的课程。这个课程按课程材料规划是5天,此次在Heidelberg的HCMS学习这个课程却只有3天时间,因此只学习了第1单元到第5单元。Unit 6 (Data structures in personal planning),Unit 7(Logical database PCH),Unit 8 (customer-specific Infotypes)和Unit 9(HCM ABAP Feature)只能自己在家学习了。

课程要求的基础知识包括:
HR100 (essentials of personnel administration)
HR120 (essentials of personnel planning)
BC400 (ABAP workbench: Foundation)
BC405 (Techniques of List Processing)
ABAP编程经验

因为去年9月份还参加了3个星期的ABAP培训,所以上列条件中就BC400和ABAP编程经验两条还算勉强满足。尽管这样还是硬着头皮学吧。

先用一个小时看了一下SAPHR这个课程的Unit 1 (Essentials),紧接着就是Alex带着我们学习HR350的Unit 1(data structures in personnel administration)。每一种infotype都有一个4位的数字代码,其中0000 - 0999是关于personnel administration的。常见的infotype如:actions(0000),organizational assignment(0001),personal data(0002),payroll status(0003),addres(0006)。infotype xxxx的数据被保存在PAxxxx中。以inftotype 0002为例,数据都被保存在PA0002中。

一个PAxxxx表包括三个部分:

PAKEY:包含该表的键值字段(key fileds)
PSHD1:记录关于该条infotype record的管理信息,如谁在什么时刻最后修改了此条记录等信息。
PSxxx:包含与该infotype相关内容的字段

PAKEY包含的字段有:

PERNR: personal number
SUBTY: subtype of infotype
OBJPS: 用于标识同一个infotype内的不同记录,如child number in the infotype 0021 (Family Member)
SPRPS: lock indicator for HCM master data
ENDDA: valid to date
BEGDA: valid from data
SEQNR: 区分infotype中key值相同并属于time constraint 3类型的记录

Alex告诉我们如何区分OBJPS和SEQNR:
可以把OBJPS想像成是一种Vektordarstellung,如1. child,2. child,而把SEQNR想像为一个Mengedarstellung。

这样一个PAxxxx表就由下面的部分组成:
Mandt + PAKEY + PSHD1 + PSxxxx

一个相应的structure名为Pxxxx也在data dictionary被定义,这个Pxxxx就有了下面的结构:
PSKEY + PSHD1 + PSxxxx
其中PSKEY包含PAKEY中的字段,另外还增加了一个包含infotype 数字代码的字段INFTY。由于Pxxxx这个structure也包括了PSxxxx,这样Pxxxx structure和PAxxxx table保持了一致。

check and control tables一课Alex一句带过,似乎不常用也不重要。

Unit 2 (logical database PNP/PNPCE)是很常用的。logical database的好处就不再提了,主要是简化了很多编程工作:)

推荐读物:MySAP HR - Technische Grundlagen und Programmierung

1 条评论:

  1. 与HR有关的课程还包括:
    HR050 HCM Business Processes
    HR305 Configuration of master data

    回复删除