点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
我有一个简单的演示情况:
- Hana试用数据库
- 具有3个键和其他字段的表
- 在线编辑器工具中的向导工具创建的odata服务
我的文件是:
xsodata:
服务{ " DB"。" CA01"为" Ca01"; ... }
xsaccess:
{ "暴露":是, "身份验证":[{ " method":" Form" }], " mime_mapping":[{ "扩展名":" jpg", " mimetype":" image/jpeg" }], " force_ssl":否, " enable_etags":是的, " prevent_xsrf":是的, " anonymous_connection":null, " cors":[{ "已启用":false }], " cache_control":"无缓存,无存储", " default_file":" index.html" }
我使用带有sapui5的odata模型对包装进行操作。
当我阅读(GET)没问题时,当我创建(POST)时没问题(数据已成功写入),当我更新(PUT)时,我得到了答案:
{" error":{" code":""," message":{" lang":" en-US"," value":" URI对于PUT操作无效。URI必须指向 用于PUT操作的单个资源。"}}}
带有状态码:
405方法不允许
创建或更新时,我使用的是相同的js obj:
var saveObj = { KEY1:1 KEY2:1 KEY3:1 VALUE1:"某物", ... }
odata创建调用为:
odataServ.create('Ca01',saveObj,null,函数(odata,resp){ console.log(odata); console.log(resp); });
odata更新调用为:
odataServ.update('Ca01',saveObj,null,函数(odata,resp){ console.log(odata); console.log(resp); });
如您所见,唯一的区别是方法。
很明显,我尝试在创建完成后进行更新,该行出现在表中,填充了键,重新加载了sapui5应用程序以及其他基本测试。
如果有人可以帮助我,我将非常感激
该错误表示您无法调用表示多个实体的Ca01方法。 您必须将路径设置为特定实体。
此致
杰米
我不明白您的要求。 您必须提供带有ID的路径来更新值,否则系统将永远不会知道您要调用的内容。
此致
Jamie
你好,
您的答案是正确的,如果我阅读__metadata URL是用这种方式编写的。 我的错。
服务器的回答是:
那是一个更好的答案,但不是解决方案:(
如何在hana xsodata服务中激活此功能?
无论如何,谢谢您的回答!
一周热门 更多>