SAP HR-OM模块-组织架构管理

  1. 名词介绍

名词

描述

信息类型

区分组织管理中的不同信息,例如组织关系、党组织信息、股权信息等等。

对象

SAP对HR日常业务中涉及到的人、部门、岗位等等的抽象,每个对象会对应一个编号,用于唯一标识。例如,员工编号。

组织单位

对应企业和企业所管理的部门的抽象。标识符为O

职位/岗位

对应企业中的职位和岗位。标识符为S

人员

对应企业的员工。标识符为P

职务

对具有相同属性的职位的抽象。对应标识符C

 

 

 

  1. 组织架构基本信息

OM主要是用于管理公司的组织架构、岗位设定、人员分配等,常见有:

l  组织单位(O) - 定义一个管理组织单元(例如XXX集团、XXX部门)

l  职位(S) - 定义一个职位单元(例如总经理、助理)

l  职务(C)- 对具有相同属性的职位的抽象(例如:开发人员)

l  人员(P)- 对应一个员工编号

一般情况下,一个组织单位下可包含多个组织单位和职位。每个职位分配给一个人员(也可能会有一岗多人的情况)。

OM中大部分的事情都是围绕这颗树在进行(也可能有其它的体系架构数)。

  1. 数据表特性

数据表构成分为4个部分:

l  主键区域,一般引用结构HRIKEY,所有的OM表都是相同的。

l  控制区域,一般引用结构HRIADMIN,所有的OM表都是相同的。

l  信息类型主数据,结构名称为HRI+信息类型编号

l  可增强区域,结构名称CI_P+信息类型编号。所有带有CI_PXXXX的信息类型原则上都是可以增强,通常只有标准的OM信息类型才具备CI_PXXXX这个include。

 

  1. OM架构搭建

OM各对象之间均使用对象间关系实现架构搭建,关系规格包含两种:

关系由两部分组成:关系方向/关系类型 + 对象关系

关系方向包含:

l  自上而下 - A

l  自下而上 - B

意思就是包含和被包含的关系(所站的角度不同)。

而对象关系包含非常之多,例如003代表组织单位与职位之间的关系。

一般情况下,当创建关系数据时,标准都会在双方的关系数据中产生正向关系和反向关系数据。

例如:

组织单位60002457领导班子 包含 职位90024810 总经理。

在组织单位的关系中:(事务代码PO10)

在职位的关系中:(事物代码PO13)

 

注:理解关系的概念可以熟练的根据需求获取相应的数据。

 

  1. 常用的对象关系

对象关系

描述和作用

002

报告到,即组织单位上下级关系,主要是O和O之间的关系。

003

属于,表示O和S之间的管理关系。可理解为该组织单位O下有哪些职位S,或者是该职位S直属于哪个组织单位O。

012

管理,表示该组织单位O的管理职位S是哪个(或者哪些)。

008

持有人,表示职位S和持有人P的关系

007

描述,表示职位S和岗位描述C之间的从属关系。一般情况下,一个职位只有一个岗位描述,而一个岗位描述对应多个职位。

 

 

 

  1. 评估路径

SAP是通过对象与对象之间的关系数据来实现整个架构的搭建,在实际应用和报表开发过程中,常常需要通过某个对象获取指定的某类对象集,可能会有多层次的嵌套。例如,某需求需要读取组织单位60002456(xxx有限公司)下的所有员工。其取数逻辑非常复杂。因此SAP引入了评估路径的概念。

评估路径实际上就是一类关系取数集合:

 

而上述的需求对应的评估路径O-O-P。

用途:

l  数据定向读取

l  结构化权限控制点

在开发过程中,会使用函数RH_STRUC_GET来读取评估路径数据。

 

此时函数会返回所有组织单位60002456下的组织单位、职位和人。

 

配置路径:

SPRO/人事管理/组织管理/基本设置/维护评估路径

 

常用的评估路径有:

评估路径

用途

O-O_DOWN

读取组织单位下所有的组织单位

O-O-S

组织单位下所有的职位

O-O-P

组织单位下所有的员工

O-O

组织单位的直属上层组织单位

S-O

职位直属部门

P_S_S_C

人员相关的职位职务信息

P-S-C-O

人员相关的职位职务组织单位信息

P-S-O-O

人员的组织架构信息(完整)

 

注:合理的利用评估路径可以极大的简化代码量。

  1. RH_STRUC_GET使用

这个函数主要用于根据评估路径读取各种所需的组织架构信息。

 

ACT_TYPE 对象类型,可以是O – 组织单位,S – 职位, P – 人员

ACT_OBJID 对象编号,比如组织单位、职位编号、员工编号

ACT_WEGID 评估路径

ACT_PLVAR 计划版本,一般为01 – 当前计划(正在使用的)

ACT_BEGDA 有效开始日期

ACT_ENDDA 有效结束日期

ACT_TDEPTH 取数层级,默认为0(取全部层级),依次可为 1,2,3,4,….层级。

RESULT_TAB 返回结果所有对象

RESULT_OBJEC 返回结果所有对象对应的基础信息(例如:文本信息)

RESULT_STRUC 返回结果中所有对象的层次架构关系

 

实际开发中,可根据PUP(对应SEQNR)字段判断直属上层对象是哪个。在层级关系中比较实用。

 

  1. OM核心数据表

表名

用途

HRP1000

对象定义表,如果要取对象的描述,一般从此表读取,

不可增强

HRP1001

对象关系表,不可增强

HRP1002

对象的描述信息,信息文本存储于HRT1002中。不可增强

HRP9XXX

自定义

 

  1. OM权限管理

OM权限管理不仅包含标准的权限管理,还包含基于组织架构的权限控制 – 即结构化权限。

配置路径:

 

 

区别于常用的PFCG权限控制模式,结构化权限控制以组织结构对象为控制对象,并可以控制评估路径(根据评估路径,可获取不同的结构化数据)。然后再分配给特定的人员。权限控制更为精准的方便。

 

人工检查组织架构权限函数:

RH_STRU_AUTHORITY_CHECK

 

  1. 时间限制

对于信息类型内数据的时间,系统需要设置时间限制,一般包含:

0 可以仅存在一次

1 没有间隔

2 具有间隔

3 与需要的一样频繁

 

 

  1. 组织单位、职位和职务文本描述

在组织管理OM和PA人事管理两个模块中,组织单位、职位和职务的文本描述是相互分开的。

 

模块/文本类型

组织单位

职位

职务

OM

HRP1000-STEXT

HRP1000-STEXT

HRP1000-STEXT

PA

T527X-ORGTX

T528T-PLSTX

T513S-STLTX

通常情况下,在创建/修改组织单位、职务、职位时,会同步修改PA的对应表中的描述。

 

注:在OM的组织、职位、职务创建/修改开发过程中,在使用BDC时,可能会出现两边未同步的情况,此时可通过调用事物代码S_PH0_48000125或者S_PH0_48000126来实现同步。同时需要检查bdc的参数(应该是bdc的racommit参数引起的)。

 

  1. 主要的事务代码

事务代码

用途

PO03

职务及关系维护

PO10

组织单位即关系维护

PO13

职位及关系维护

PPOME/PPOM/PPOSE

组织单位分配和工作人员分配

PP01

对象信息维护。

PP02

对象信息维护(专家模式),每次仅能维护一个信息类型。

 

  1. 相关函数

函数

描述

RH_CLEAR_BUFFER

清空缓存

RH_DELETE_INFTY

删除信息类型数据

RH_INSERT_INFTY

信息类型插入数据

RH_UPDATE_INFTY

更新信息类型数据

RH_UPDATE_DATABASE

提交数据库。如果上述delete/insert/update需要整体提交,可在调用时设置参数VTASK = ‘B’。然后调用该函数进行提交。

RH_READ_INFTY_NNNN

读取OM信息类型数据

RH_STRU_AUTHORITY_CHECK

OM结构化权限检查

RH_BASE_AUTHORITY_CHECK

基本权限检查

RH_STRUC_GET

根据评估路径读取指定OM架构信息

HR_ENQUEUE_OBJECT

锁定待操作的OM对象

HR_DEQUEUE_OBJECT

解锁

 

 

  1. 更新模式介绍

拿RH_INSERT_INFTY举例,其中参数VTASK有如下几种

VTASK

介绍

S

同步模式,其实这个描述不正确,应该是实时更新模式。具体来说,当更新完成后,系统会自动调用COMMIT WORK and Wait 直接提交。不受参数COMMIT_FLG的制约。

V

异步更新,更新完成后,系统会判断COMMIT_FLG是否设置,如果设置会设置COMMIT WORK。然后继续执行,不会等待更新是否完成。

B

更新buffer,需要调用函数RH_UPDATE_DATABASE进行提交数据库操作。可用于每次更新多信息类型数据的需求。

D

Dialog模式,受COMMIT_FLG制约。看代码,好像和S 和V后台都差球不多

 

 

 

 

 

 

 

 

 

 

关系图(实例):

posted @   ABAP-武汉  阅读(751)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示