SAPUI5日期,日期为GMT+;1.

SAPUI5日期,日期为GMT+;1.,sapui5,Sapui5,我有一个问题,我提供了一个截止日期,然后过滤一些odata的日期 var effectiveTo = moment(oArgs.effectiveDateTo).format('YYYY/MM/DD 00:00:00'); new Filter("StartDate", FilterOperator.LE, moment(new Date(effectiveTo)).toDate())/ 问题是,如果日期在3月26日之后,则StartDate中的时间加上+1,因此过滤器不再返回正确的

我有一个问题,我提供了一个截止日期,然后过滤一些odata的日期

  var effectiveTo = moment(oArgs.effectiveDateTo).format('YYYY/MM/DD 00:00:00');

  new Filter("StartDate", FilterOperator.LE, moment(new Date(effectiveTo)).toDate())/
问题是,如果日期在3月26日之后,则StartDate中的时间加上+1,因此过滤器不再返回正确的数据


你知道我是如何解决这个问题的吗?

问题是,当与OData交换数据时,DatTime类型的服务值会自动转换为本地浏览器时区和节电周期。也许你应该把日期作为字符串传递?我在标准SAP Fiori应用程序中见过这种技术

这是SAP请假应用程序在发送到后端之前准备日期的方式:

sStartDate = hcm.myleaverequest.utils.Formatters.DATE_YYYYMMdd(_oStartEndDates.startDate) + 'T00:00:00';
sEndDate = hcm.myleaverequest.utils.Formatters.DATE_YYYYMMdd(_oStartEndDates.endDate) + 'T00:00:00';

问题在于,在与OData交换数据时,DatTime类型的服务值会自动转换为本地浏览器时区,也会转换为节电时段。也许你应该把日期作为字符串传递?我在标准SAP Fiori应用程序中见过这种技术

这是SAP请假应用程序在发送到后端之前准备日期的方式:

sStartDate = hcm.myleaverequest.utils.Formatters.DATE_YYYYMMdd(_oStartEndDates.startDate) + 'T00:00:00';
sEndDate = hcm.myleaverequest.utils.Formatters.DATE_YYYYMMdd(_oStartEndDates.endDate) + 'T00:00:00';

你能举个例子吗?谢谢。但这不是问题所在,问题是SAP网关返回的内容,我将传递var effectiveTo=矩(oArgs.effectiveDateTo).format('yyyyy/MM/DD 00:00:00');但返回的是添加+1。您可以更改SAP端的服务实现,使其也返回字符串?您能举个例子吗?谢谢。但这不是问题所在,问题是SAP网关返回的内容,我将传递var effectiveTo=矩(oArgs.effectiveDateTo).format('yyyyy/MM/DD 00:00:00');但得到的回报是添加+1。您可以更改SAP端的服务实现,使其也返回字符串吗?