首页 > SAP > FIORI > sap netweaver gateway实现odata时换不能为NULL错误
2019
08-27

sap netweaver gateway实现odata时换不能为NULL错误

今天用SEGW做ODATA,生成后我用/IWFND/MAINT_SERVICE做ODATA测试时,总是报一个DATE的字段不能为空

.ERROR_CONTEXT       
..ERROR_INFO        Invalid format (return table): Row Number 1,  Property Name ‘Edate’,  Property Value ‘00000000’
..ERROR_RESOLUTION       
…SAP_NOTE        See SAP Note 1797736 for error analysis
…LINK_TO_SAP_NOTE        https://service.sap.com/sap/support/notes/1797736
../IWCOR/CX_DS_INTERNAL_ERROR       
../IWCOR/CX_DS_EP_ENTITY_ERROR       
…INDEX        1
…PROPERTY        Edate
../IWCOR/CX_DS_EP_PROPERTY_ERROR       
…PROPERTY        Edate
…VALUE        00000000
…TYPE       
…OFFSET        0
..CX_PARAMETER_INVALID_RANGE       
…VALUE        00000000
../IWCOR/CX_DS_EDM_FACET_ERROR       
…VALUE        00000000
…FACET        nullable=false

然后我就在SWEG里的Entity Types里把定义的结构的字段(Edate)设置为可为NULL,然后保存,并重新生成服务对像,可试了很多次,测试结果还是不对,还是报相同的不能为NULL的错误。

最后我只能把结构删除,重新引入结构,并设置字段(Edate)设置为可为NULL,然后生成,结果就对了,

仔细核对发现,我在表结构里定义的字段Edate是DATE类型,但在SEGW的Entity Types自定转换为了DATETIME类型,并且发现ODATA里没有DATE类型,所以以后考虑在ODATA使用时使用TIMESTAMP类型。

最后编辑:
作者:yangsen
有需要可在文章留言或者邮件yan252@163.com给我。

留下一个回复

你的email不会被公开。

1 × 3 =