我在调用OData读操作时使用的日期格式很困惑,其中参数在entityset括号中提到。如果您可以粘贴每个答案,那将会很棒
read()
方法?
var sPath ="/EMP_DETAILSSet(Empid='50160458'/*, ...*/)";
oBackEndModel.read(sPath, {
success: this._fGetDetailsSuccess.bind(this),
error: this._fBackEndInvocationError.bind(this)
});
这是遵循的方法吗?或者我们还有其他方法吗?dBegDate
和dEndDate
是JS标准日期对象。
var sPath ="/EMP_DETAILSSet(Empid='50160458',Begdate="+ dBegDate.toJSON() + ",Enddate=" + dEndDate.toJSON() + ",HAFId=' ')";
oBackEndModel.read(sPath, {
success: this._fGetDetailsSuccess.bind(this),
error: this._fBackEndInvocationError.bind(this)
});
var sPath ="/EMP_DETAILSSet(Empid='50160458',Begdate="+ dBegDate.toJSON() + ",Enddate=" + dEndDate.toJSON() + ",HAFId=' ')";
oBackEndModel.read(sPath, {
urlParameters: {
$expand: "NAVTODETAIL,NAVTOPROFILE,NAVTOREPORTEES"
},
success: this._fGetDetailsSuccess.bind(this),
error: this._fBackEndInvocationError.bind(this)
});
我遵循了Sunil的建议。 sPath
在运行时看起来如下:
"/EMP_DETAILSSet(Empid='50160458',Begdate=datetime'2014-03-11T14:49:52',Enddate=datetime'9999-12-31T14:49:52',HAFId=' ')"
当我尝试这个时,它给了我以下错误:
2018-06-13 10:56:31.872300发生以下问题:HTTP请求失败404,未找到,{“错误”:{“code”:“005056A509B11EE1B9A8FEC11C21D78E”,“message”:{“lang”:“en”,“值“:”未找到段'49:52'的资源,Enddate = datetime'9999-12-31T14:49:52',HAFId =''。“},”innererror“:{”transactionid“:”5B20F78A93457852E10000000ACD4014 “,”timestamp“:”20180613052610.2725590“,”Error_Resolution“:{”SAP_Transaction“:”在SAP Gateway集线器系统上运行事务/ IWFND / ERROR_LOG并搜索上面带有时间戳的条目以获取更多详细信息“,”SAP_Note“:”请参阅SAP Note 1797736用于错误分析...“}}}}
你知道为什么吗?
请注意,以下URL工作正常,并在从SAP Gateway Client执行时返回结果:/ sap / opu / odata / XXX / YYYY_SRV / EMP_DETAILSSet(Empid ='50160458',Begdate = datetime'2014-03-11T14:49: 52',Enddate = datetime'9999-12-31T14:49:52',HAFId ='')?$ expandNAVTODETAIL,NAVTOPROFILE,NAVTOREPORTEES&$ format = json
primitive type
是什么。最有可能的是,它将是qqxxswpoi。您可以使用Edm.DateTime
服务电话获取此信息。$metdata
的标准表示Edm.DateTime
注意:datetime'yyyy-mm-ddThh:mm[:ss[.fffffff]]'
和引用部分之间不允许有空格。 datetime不区分大小写
示例:datetime
如果它的datetime'2000-12-12T12:00'
表示,
示例:JSON Format
它应该看起来像:
"FlightDate": "/Date(1354665600000)/"