
abap
文章平均质量分 69
wl8511
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SAP HCM 标准报表与前台操作的增强差异逻辑分析(rhgrenz4)
其实评估人天是一件技术活,如何能准确评估人天是IT的基础功能,最近这几次评估的人天都不靠谱,每次都少很多,其实很多原因就是没有考虑到沟通成本,如果涉及的集成接口,评估的人天一定需要考虑和对方系统的业务沟通成本,对方系统的开发沟通成本,对方系统的测试沟通成本,对如果存在中间件,还需要考虑到与中间件的沟通成本,对应非常复杂的业务,还需要考虑特殊场景考虑不全的新方案设计成本,所以经验还是比较重要的点。增强差异:SAP的HCM模块组织和人事增强都有标准的增强点,不管你调用标准的函数还是前台操作都会触发对应的增强。原创 2024-12-31 19:28:06 · 499 阅读 · 0 评论 -
SAP HCM 考勤时间冲突到分 源码分析
现在我举个例子说明下上面的逻辑,比如我有个缺勤类型名称是事假-》配置缺勤类型的地方有个时间约束,就是对应上图的时间约束类。原创 2024-12-22 12:00:10 · 813 阅读 · 0 评论 -
SAP HCM 0001信息类型一个月内有多个成本中心
没办法只有debug,初始化系统都是给00,然后系统肯定找不到,在读取wpbp有多少条,如果有两条就读取第二条,如果有一条就读取一条,所以工资核算的时候setin不能设置成00或者01,02等,如果设置成01,那么系统就找第一条的成本中心。就就是为什么系统会拆分成本中心的含义。一般跨部门调动时候,成本中心都会变化,SAP默认都是读取wpbp的最后一一条数据,但是今天过账会读取两个单位的成本中心,一直都觉得很奇怪,SAP如何都拆分出这样的情况,原创 2024-10-04 12:24:38 · 311 阅读 · 0 评论 -
SAP HCM 自定义累计期间
需求是按3月~8月,9月~次年2月,做为累计期间,怎么处理?原创 2024-10-04 12:22:26 · 235 阅读 · 0 评论 -
SAP HCM 薪酬过账报表查询替代PCP0
最近一直在学习大数据,所以对分区想深入理解,SAP的这个报表业有个并行执行的操作,就是把任务拆出来跑,比较感兴趣就是SAP这个并行执行的逻辑是什么,薪酬过账并行跑,是按照人员编号,拆分出来跑,那这个过账查询报表他拆分出来是什么逻辑,今天准备研究下这个逻辑。如果这个研究搞明白,其实这个思想可以沿用到SAP的报表中,现在SAP上线很久,查询的报表速度越来越慢,如果也能按照这个拆分逻辑也,报表的速度也是明显提升,大家有兴趣可以看我另外一篇文章,就是自定义信息类型如果遇到10w+数据,如何提升数据保存的效率。原创 2024-10-04 12:15:43 · 1138 阅读 · 0 评论 -
SAP HCM 分析标准薪酬过账报表的并发逻辑
④下面的代码就是循环创建task 第一次是1-50,第二次是51-100,第三次是101-126,这个lv_beginx就是每次开始值,lv_endidx就是每次的结束值,,其中41行代码内表is_doc_analyse_package-rundoc内表有126行数据,然后根据lv_beginx与lv_endidx分三次把数据写到lt_rundoc内表中,在44行中,是循环生成任务的方法,这个时候就把126行的数据拆成三个包给lt_rundoc。经过上午的研究发现,SAP查询的并发逻辑其实也比较弱智。原创 2024-10-04 12:13:10 · 997 阅读 · 0 评论 -
SF-HCI-SAP问题收集20:Metadata导入的时间格式错误问题
我的解决思路就是找到SAP有个信息类型保存增强的地方,看看在增强的这个地方的数据格式是什么样,如果这个时候有错误,就往前去找问题的原因,因为有的信息没有增强,所以我下图是调用这个增强的地方。通过反推代码的方式,后来发现数据格式的问题,在导入元数据的时候,其实sf每个字段类型也会带进来,这个effectiveEndate的数据格式不是datatime的格式,导致数据在赋值的时候,出现数据的差异偏差。字段在元数据中没有,所以手工加入,手工加的时候是复制上一条数据的格式,当时没注意。④导入到HCM系统中。原创 2024-10-04 12:11:32 · 829 阅读 · 0 评论 -
SAP HCM 薪酬核算红色异常日志信息如何快速定位问题
所以导致数据不一致。昨天有个朋友做越南项目的时候遇到一个问题,核算工资报错,无法进行下去,因为越南没有标准解决方案包,其实现在SAP应该弄一个出来,现在这么多企业迁移到越南,一看到下面pcg 99,估计就是复制标准的x000的那套,但是后面后面还有28,那肯定是中国的那套,所以感觉找问题十分困难,所以想到的方法就是如果能找到错误原因的代码位置,反推回去估计会更快。在观察点用我们使用这个变量,error_ptext有变化代码就会停下来,找到停下来的位置,去查问题就方便。原创 2024-10-03 12:24:24 · 1117 阅读 · 0 评论 -
SAP HCM 薪酬过账-红字冲销
例如,如果原始凭证是借方:管理费用--电费 100元,贷方:现金 100元,红冲凭证则是借方:管理费用--电费 100元(金额为负),贷方:现金 100元(金额为负)。HCM冲销的时候,红冲和蓝冲是如何实现,财务冲销FB08,用户可以勾选冲销的原因,但是HCM冲销的时候没有勾选这个原因的地方,那系统怎知道怎知道是红冲还是蓝冲,其实是根据T77S0的POST,PPNCN,X设置的,如果设置成X就是红冲,空就是蓝冲,翻译不知道为什么是俄国,搞不懂。:蓝冲则是通过制作一张与原始凭证借贷方向相反的凭证来进行冲销。原创 2024-10-03 12:22:33 · 1046 阅读 · 0 评论 -
ECP 集成字段非必填配置
ECP主数据同步的时候,经常遇到一个问题,就是ECP报错,但是这个字段两边的ecp顾问与sf顾问都觉得没实际意思,觉得没有传输的必要性,这个时候我们就可以考虑非必输的字段不必输,。其实就是0185信息类型,有个申请状态字段,但是这个字段其实没什么实际含义,因为能从sf传输过来,肯定是已经生效数据,这个状态多ecp就是多此一举,所以ecp去做增强不划算,sf弄一个字段去对应也不划算,所以想到的解决方案是,能不能不集成这个字段过来。原创 2024-10-03 12:21:09 · 687 阅读 · 0 评论 -
SAP HCM PE51工资单教程
表格最重要就是下图的框,这个框一般都是动态展现工资的,记住,一定需要在表格视图下,双击F1那行才会弹出对话框,这里的组是有点段落的概念,比如在工资单中有扣款项目、奖励项目,不想画很多表格可以在一个表格中完成,01组就是扣款工资项目、10就是奖励项目,这样表格就能分类展现不同的工资项目。:我们刚才介绍是label,现在label对应的值是什么,这里就可以选工资结果里面的内表,下图成本中心取的就是wpbp-kostl的数据,当然我们还可以选择其他工资结果的数据结构。这个就是一些值显示的长度,这个比较容易理解。原创 2024-10-03 12:19:32 · 806 阅读 · 0 评论 -
SAP HCM PE51工资单教程二
在表格的地方有个ptyp的字段,里面有选择,例如01就是对应下图的LT列数据,其实就是工资项目显示后面金额的格式。其实就是需要把多个工资项目累计起来,例如找到一个印度的的表单,我们看到标识符是in01。:我表单中的一些label字段,可以先在最左边配置对应的文本标签,然后在右边选序号。④规则:比如我需要设置某个字段等于多少就显示文本描述。⑤ 增强:320257,可以参考这个note。原创 2024-10-03 12:18:26 · 876 阅读 · 0 评论 -
SAP HCM 抓取模拟工资核算日志RT表数据
是不是能开发一个程序,抓取模拟工资结果的数据,抓到的数据不就能和工资明细表做对比吗?下面就是一个模拟的例子,网上看到老外写的一个例子,但是是加拿大的,所以开始一直不生效,后来分析下需要修改几行代码,修改的代码已经标记红色,有兴趣的人可以去研究下。所以我这个是中国版的,应该也算是原创吧,哈哈!SAP的核算其实比较麻烦的就是没地方可以导出核算成功的人员编号,即使能导出也是树形的结构,需要反复加工多次才能整理好员工,所以非常麻烦,今天就想能不能抓取模拟工资的rt表数据.原创 2024-10-03 12:06:28 · 1174 阅读 · 0 评论 -
SAP HCM 组织与自定义组织事物一致性解决方案
因为组织新增设计到hrp1000、hrp1001、hrp9xxx相关的表,而且这些信息类型创建是不同的函数组成,所以现在解决方案是每个单独的函数创建后,并不立刻更新数据库,等到一个指令后统一更新数据库,这个函数名是RH_UPDATE_DATABASE,参数设置成D. 首先是创建组织ID函数RH_OBJECT_CREATE,这里有个很重要的参数vtask ,如果参数设置成S是立刻更新数据库,参数设置成B是更新到缓存区;原创 2024-10-03 12:04:49 · 882 阅读 · 0 评论 -
ECP Log-Point id 程序运行中记录变量的变量值
2 LOG-POINT ID使用场景:主要是用于记录程序中的变量值,比如生产环境没办法debug,但是我又想看程序到某个位置的参数值是什么,这样判断程序是否有异常,这个时候LOG-POINT ID就有作用,只需要在你程序中加入,然后在生产环境就能记录编制的值,如果不想启用,有开关可以设置,其实和log4j有点类似。进入的界面后切换到激活页签,在这里面有三个功能一个是断点、对应break-point,一个是日志记录点,对应的log-point,最后一个是断言,实际中没使用。原创 2024-09-23 14:44:29 · 531 阅读 · 0 评论 -
ECP ABAP动态记录标准程序某行变量值
那这个情况我们如何处理。当所有条件都完成以后,我们可以执行监控的程序,如果程序执行一次,在下图的event就会增加1,我们想观察监控的变量值,可以双击此行的数据,如果event没数据,可以点刷新按钮。:昨天写一篇文章是关于如何在程序中加入开关,记录程序变量的值,有小伙伴问,有没有办法记录标准程序某行内表的值,今天去寻觅下标准文档,还真发现有个地方是可以记录任何程序变量值,然后点保存就会有下面的界面,我们专注在这个event中,这个时候默认是0,因为监控的程序并没有执行,当执行后系统就会变换。原创 2024-09-23 14:43:36 · 432 阅读 · 0 评论 -
SAP HCM 每月生成年假解决方案(PT_QTA00)
考勤规则里面的分组特别多,其实有个总的视图配置V_503_ALL,可以有所有关于分组的配置,后期有机会分享下每个分组的含义,今天只是列举出单独分类的组,所有年假定额的生成与扣减都是下图3的才会执行。在这里配置的是用于计算司龄的解决方案,SAP有一条比较复杂计算司龄的解决方案,这个配置的地方其实有对应的函数,如果系统标准的解决方案满足不了,可以复制这个标准的函数,按照自己的需求修改,然后配置的地方换成自定义的函数,这样不过多复杂的业务,也能有对应的技术解决方案,但是我希望大家永远不要用上。原创 2024-09-21 12:13:08 · 717 阅读 · 0 评论 -
SAP HCM 组织增量解决方案
badi会抓取到变更的节点,B002是向下,A002是向上,首先我们需要我们通过A002这条数据到OLD_IMAGE new_image-objid=old_image-0bjid new_image-subty=old_image-subty=A002,如果存在,说明部门是调级,所以需要更新的节点就是三个 51080318、 51080319、51080320,这三个节点需要到HRP1001中找到下A002与B002数据。原创 2024-09-21 12:11:52 · 860 阅读 · 0 评论 -
SAP HCM HR_MAINTAIN_MASTERDATA自带解锁功能
后来发现是这个函数提示,人员没被锁住,那是不是可以在这个函数之前打个断点,然后PA30查询下是是不是被锁住,后发现这个时候PA30是能查看到这个人,没有提示锁,那么问题就是在调用HR_INFOTYPE_OPERATION的时候系统已经解锁,所以只有向上去看代码,向上看只有一个标准函数HR_MAINTAIN_MASTERDATA,所以解锁就应该出现在这个函数。所以以后遇到这个函数HR_MAINTAIN_MASTERDATA,然后调用HR_INFOTYPE_OPERATION函数的时候记得需要再次加锁。原创 2024-09-16 00:47:35 · 640 阅读 · 0 评论 -
SAP HCM HR_ABS_ATT_TIMES_AT_ENTRY 跨夜班不生效问题
2 因为在调用接口的时候,就找的是pa30的标准函数,所以PA30没问题,自定义开发的有问题,所以肯定是自定义代码的问题,但是对比HR_ABS_ATT_TIMES_AT_ENTRY函数的出入条件,但是没发现任何问题,遇到这样的问题,有几种可能性,①输入的参数和标准函数输入的参数估计还有有差异,只是没仔细看,②可以调用这个函数的时候,有全局变量的参数,在调用标准函数的时候,有传递全局参数。出现这样的问题,最便捷的解决方案就是PA30执行调用标准函数,与自己开发程序调用标准函数的参数,每个对比查找差异。原创 2024-09-16 00:46:29 · 691 阅读 · 0 评论 -
SAP HCM 定额扣减不生效问题,从定位错误到玩转配置
缺勤定额的扣减规则:这里含义就是我扣减的规则是什么,比如我是按照类型优先扣除,还是某个时间有限扣除,这里说两个案例,案例一:年假我们一般都是那个到期,那个先用,所以我们在这里就需要把扣减日期开始设置优先级最高,这样先到期的先扣除,案例二:一般我们上线时候,有一些历史遗留数据,所以我们会配置两个类型,一个是自动生成,一个是历史记录,那么我们扣除的时候先把历史记录扣除,所以我们的定额类型可以设置成1,优先级最高。其实刚开始的时候我是没发现这个问题,因为是历史系统,就没想到这块,后来通过debug才这个问题的。原创 2024-07-13 12:14:05 · 751 阅读 · 0 评论 -
SAP HCM 如何根据事件原因分配工号
原来在国网的时候我记得原来feature是可以自己写代码的,所以想想是不是可以根据配置加代码双重组合完成这个case,于是看规则中有个否则,点新增有个程序的选项,这里可以设置自己写的report,featue会走这个自定义的代码。背景:系统已经上线,现在有特殊的人群,需要单独划分员工编号号段,但是单独规划出来的人群,不方便在人事范围、员工组、员工子组设置,所以这个号段的设置就比较难处理,今天是借用事件原因的字段做分类,设置单独的号段。在callpa40的时候,790行就能获取到员工编号。原创 2024-07-13 12:13:16 · 772 阅读 · 0 评论 -
SAP HCM 如何知道标准程序有自定义增强代码 Configure Debugger Layer
Configure Debugger Layer :今天分享下我在处理HCM业务中,如何通过debug的Configure Debugger Layer找到标准程序中的客制化的代码?也许在网上查看到很多找badi的方法或者其他的办法,但是这些办法比较繁琐,今天找到一个更便捷的方式。系统debug的时候会自动停留在Z开头的开发包。原创 2024-07-11 11:38:58 · 363 阅读 · 0 评论 -
SAP HCM ABAP DEBUG小技巧
SAP HCM ABAP DEBUG原创 2024-07-04 10:34:37 · 891 阅读 · 0 评论 -
SAP HCM OPT函数作用
OPT函数:SAP HCM工资核算是很多函数的汇总集,原有有兴趣问过SAP的人为什么SCHEMA需要这样设计,SAP的人说是用汇编的逻辑设计的,当时是尽可能用机器语言加速速度读取,每个函数都有对应的业务逻辑代码,但是有几个函数中的源代码只有几行,看不出对应的业务逻辑,正好遇到一个朋友说P2010函数无法读取到数据,发现是函数OPT 中TIME被注释,,在上图中找到23行,变量fc-sw_readpz,感觉这个参数与OPT的time有关联,现在关键是怎验证他们有关联。3 OPT的TIME参数与这个如何关联。原创 2024-06-08 12:18:51 · 580 阅读 · 0 评论 -
SAP HCM HR_PAD_HIRE_EMPLOYEE 自定义信息类型字段保存问题
入职程序原创 2024-06-08 12:17:35 · 932 阅读 · 0 评论 -
SAP HCM 标准程序如何定位内表赋值 ABAP DEBUG SCRIPT
标准内表定位代码位置!!!学习的敌人是自己的满足。标准内表定位代码位置!!!不知道大家有没有尝试体会过debug标准程序,debug过程中发现SAP标准的内表不知道什么时候赋值,或者类的静态属性什么时候改变的,本文通过ABAP DEBUG SCRIPT的方式快速定位内表赋值或者类的静态属性值变换时候的代码位置,加快解决问题能力,因为很多教程都是一个简单的例子,我这次的例子是调试标准程序PPOSE,尽可能的实战模拟现实案例。原创 2024-05-27 21:26:13 · 859 阅读 · 0 评论