导读
岗位生效:今在HCM系统中,部门、岗位、部门与岗位关系、岗位与人员关系都是围绕时间轴来建立,不要小看这个时间轴,如果是在系统想实现,底层背景还是比较复杂的,今天遇到问题就是岗位无效的问题。
作者:vivi,来源:osinnovation
1 背景
在同步人员的时候,刷新人与岗位的数据时,在SLG1中发现有异常错误,具体提示的信息是pers.No.00030192:Postion 500007714 not valid,一看到这个错误第一反应就是时间轴存在差异,导致时间重叠或者缺失。

2 技术定位
出现这类的问题,其实最好的办法是先去查看几张表HRP1001、HRP1000、PA0001这几个表的数据是否一致,如果不一致,那就查看缺少的地方,如果没发现错误的数据,那只有去查看源代码?刷新PA0001的人岗关系的具体代码是CL_SFIOM_EE_ORG_PERN_2_POS的CREATE_P_008_S的方法,具体的代码是第9行具体检查的地方

放里面的15行就是错误的消息号,从这里可以看出其实还是时间的问题。所以只要把这个断点打到这,就可以看具体是哪个时间有差异,但是这次遇到的问题就非常奇怪,因为已经通过设置最早同步日期,系统还去检查最早同步日期之前的岗位,所以觉得系统是个bug,要么就是最早同步日期的逻辑有bug,但是想想SAP的集成套件都运行这么长时间,按道理SAP应该是考虑到这个问题的,所以只有继续向上取分析源代码。

原来我总结过如何定位这些消息编号错误的案例,通过这些案例能快速的找到源代码报错的地方。
debug 消息号
VIVI,公众号:osinnovationSF-HCI-SAP问题收集11 MESSAGE DEBUG
经过一些复杂的定位,终于找到问题的真实原因,因为员工设置最早同步时间是2025-06-01,在SAP系统中人与岗位是50007715,但是在SF系统中人与岗位是50007714,所以两边系统存在差异,开始以为是这样的,但是调整数据,发现还是错误,经过多次比较SF与SAP标准表,和同步临时表,找到一个差异点,SF系统中员工2014年8月1日入职,岗位是500007714,但是在SAP系统中,发现此岗位创建日期是2024年7月1日,也就是说岗位还没创建,人与岗位就建立关系。所以数据存在差异。


3 总结
SF与HCM主数据同步,经常会遇到时间轴同步存在差异,目前在做这些集成方案的时候,主要是遇到两道类,一类是我今天遇到的问题,一类是下面的案例,两类问题都是围绕HRP1001、HRP1000、PA0001这三个表之间的差异,所以只要看到这时间轴的问题,就去找这三个表,特别要注意的就是有时候不能只是找一层接口,需要向上找几层,因为原来的case就遇到向上追几层才找到时间轴不匹配的关系。
时间轴匹配问题
vivi,公众号:osinnovationSF-HCI-SAP问题收集10/有效关系A0002不匹配
SF-HCI-SAP问题收集9/主数据校验
vivi,公众号:osinnovationSF-HCI-SAP问题收集9/主数据校验
上级经理无效问题
vivi rsl,公众号:osinnovationSF-HCI-SAP问题收集18:员工上级经理无效

229

被折叠的 条评论
为什么被折叠?



