如何转换本地时区格式的AD帐户到期

2020-09-21 03:02发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 在我当前的项目IDM...

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

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


大家好,

在我当前的项目IDM 7.2 SP10中,我们从AD读取accountexpires属性,然后使用uInt8ToDate函数将其转换为可读格式。

https://help.sap.com/saphelp_nwidmic71/en/ using_functions/internal_functions/dse_uint8todate.htm

此功能正在将日期转换为可读的GMT格式,而客户希望在本地时间显示该日期。 在搜索SCN时,我在下面的帖子中看到" True"开关在uInt8ToDate函数中不起作用,甚至我也观察到了这一点。

https://archive.sap.com/discussions/thread/3469115

任何人都可以指导如何转换本地时区的日期。 我尝试使用getTimezoneOffset(),但抛出错误。 对JavaScript公式的任何帮助将不胜感激。

4条回答
何必丶何苦呢
2020-09-21 03:53
如果(Par.search("")> -1){
   Par = Par.split("")[0];
  }
 //如果需要,添加T00:00:00
  如果(Par.search(" T")== -1){
   Par + =" T00:00:00";
  }
  var splitted = Par.split(" T");
 //第一部分
  var splittedDate = splitted [0];
  splittedDate = splittedDate.split("-");
  var year = splittedDate [0];
  var month = splittedDate [1]-1; //需要减1
  var day = splittedDate [2];
 //第二部分
  var splittedTime = splitted [1];
  splittedTime = splittedTime.split(":");
  var hours = splittedTime [0];
  var分钟= splittedTime [1];
  var seconds = splittedTime [2];
 //新的日期对象
  var adDate = Date.UTC(年,月,日,小时,分钟,秒);
  adDate = adDate * 10000 + 116444736000000000 + 864000000000; //必须很高!
 //错误处理
  if(adDate =="" || adDate == null || adDate.toString()==" NaN" || Par> =" 9999-12-31"){
   adDate =" 9223372036854775807";
  }
  返回adDate;

 

这应该有所帮助。 参数的格式可以为" 2018-04-25"," 2018-04-25 12:15:00"或" 2018-04-25T12:15:00",请测试是否符合您的需求。 也许必须修改adDate的计算方式,但它对我有用

一周热门 更多>