2020-08-26 17:50发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我需要删除雇用日期仍少于SAP CPI中的一年的员工记录。
如何在CPI中实现这一目标?
请咨询。
你好 Shruthi Anantha ,
如您所要求的使用XML模式的解决方案。 这是一个简单的架构,您可以根据自己的喜好重复使用。
<?xml version =" 1.0" encoding =" UTF-8"?>
致谢
Frederick-Claud Dimmer
您好,Shruthi
如果您提供一些示例输入和给定输入的预期输出,将会很有帮助。
关于此,
Morten
Morten,你好
输入将采用以下格式:
1
<名字> abc 名字>
test
2019-09-09T00:00:00.000
2
def
2019-12-19T00:00:00.000
3
ijk
2019-12-15T00:00:00.000
我的输出必须仅包含Hiredate已经超过一年的员工。
请提供有关如何在CPI中进行过滤的建议。
你好Shruthi,
有多种方法可以使用。以下是对iflow进行建模的一种方法 获得所需的输出。创建如下所示的映射,并添加其他字段[MarkForRemoval],该字段稍后将用于确定是删除记录还是保留记录。
自定义功能脚本:
import com.sap.it .api.mapping。*; 导入java.text.SimpleDateFormat; 导入java.util.Date; 导入java.io. * 导入java.lang。*; 导入java.util。*; def字符串customFunc1(String P1){ 字符串inpHireDate = P1.toString(); //字符串inpEndDate = P2.toString(); 日期inpCurrentDate =新的Date(); SimpleDateFormat sdf = new SimpleDateFormat(" yyyy-MM-dd'T'HH:mm:ss.SSS"); 日期HireDate = sdf.parse(inpHireDate); def strCurrentDate = sdf.format(inpCurrentDate); 日期currentDate = sdf.parse(strCurrentDate); //使用dateDiffInDays获得天数差异,然后填充值 def dateDiffInDays = HireDate-currentDate 如果(dateDiffInDays> = 365) 返回"否" 其他 返回"是" }
然后添加一个内容过滤器,该过滤器仅将有效记录传递给进一步处理:
/EmpJob/Record [MarkForRemoval =" NO"]
关于,/p>
Sriprasad Shivaram Bhat
最多设置5个标签!
你好 Shruthi Anantha ,
如您所要求的使用XML模式的解决方案。 这是一个简单的架构,您可以根据自己的喜好重复使用。
致谢
Frederick-Claud Dimmer
您好,Shruthi
如果您提供一些示例输入和给定输入的预期输出,将会很有帮助。
关于此,
Morten
Morten,你好
输入将采用以下格式:
<名字> abc 名字>
我的输出必须仅包含Hiredate已经超过一年的员工。
<名字> abc 名字>
请提供有关如何在CPI中进行过滤的建议。
你好Shruthi,
有多种方法可以使用。以下是对iflow进行建模的一种方法 获得所需的输出。创建如下所示的映射,并添加其他字段[MarkForRemoval],该字段稍后将用于确定是删除记录还是保留记录。
自定义功能脚本:
然后添加一个内容过滤器,该过滤器仅将有效记录传递给进一步处理:
关于,/p>
Sriprasad Shivaram Bhat
一周热门 更多>