根据SAP CPI中XSLT中的日期过滤XML记录

2020-08-26 17:50发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我需要删除雇用日期仍少于...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我需要删除雇用日期仍少于SAP CPI中的一年的员工记录。

如何在CPI中实现这一目标?

请咨询。

4条回答
歪着头看世界
2020-08-26 18:10

你好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

一周热门 更多>