node.js重新启动后,第一个GET请求未返回任何数据

2020-08-23 01:34发布

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

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


Hello SAP社区

我正在尝试仅使用SAP Web IDE在局域网SAP HANA安装上构建应用程序。 在我的数据模型中,我有几种类型的数据对象(例如活动,玩家)可以通过使用"标记"相互链接。

为此,我为对象创建了表(此处为2),并为另一个表创建了标签,例如:

实体活动{
         key id:始终以身份生成的整数(以1递增1);
             名称:字符串(30);
     };

     实体玩家​​{
         key id:始终以身份生成的整数(以1递增1);
             名称:字符串(30);
     };

     实体players_activities_assignment {
         key id:始终以身份生成的整数(以1递增1);
             playerId:整数;
             activityId:整数;
     };
 

数据通过node.js模块中的.xsodata公开。 我正在使用"计算视图"向其他表中的对象(例如ActivityCalculationView)和分配(例如acitivityPlayerTags;不使用单独的ID)添加其他数据,到目前为止效果还不错。

由于标签列表的长度可以是0到n之间的任何长度,因此我真的无法在带有标签列表的Calculation View中创建一列(这等同于将表格放在的单元格内 一张桌子)。 我发现可以通过使用.xsodata文件中的关联来解决该问题:

服务{
 " x.xx :: activityPlayerTags"作为" ActivityPlayerTags"键生成本地" GenID";
 " x.xx :: ActivityCalculationView"作为"活动"键(" id")导航(" APtags"作为" playerTags");
 关联" APtags"主体" Activities"(" id")多重性" 1"从属" ActivityPlayerTags"(" activityId")多重性" *";
 

该解决方案工作得很好,但是自从我实施该解决方案以来,每当我重新启动node.js模块时,我的应用程序中就没有数据,直到刷新为止(可能对后端执行另一个GET请求)。 此后,对于我添加到应用程序中的所有其他关联,刷新所需的次数才能使数据显示在屏幕上。 我在使用邮递员时遇到了同样的问题。 这是我发送足够的GET请求之前得到的消息:

 {
     "错误":{
         "代码":500,
         "信息": {
             " lang":" en-US",
             " value":"不能为源指定键,因为它是表对象。
         }
     }
 }
 

问题似乎与.xsodata中的关联有关。 我想知道是否有人知道我在这里做错了什么?

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

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


Hello SAP社区

我正在尝试仅使用SAP Web IDE在局域网SAP HANA安装上构建应用程序。 在我的数据模型中,我有几种类型的数据对象(例如活动,玩家)可以通过使用"标记"相互链接。

为此,我为对象创建了表(此处为2),并为另一个表创建了标签,例如:

实体活动{
         key id:始终以身份生成的整数(以1递增1);
             名称:字符串(30);
     };

     实体玩家​​{
         key id:始终以身份生成的整数(以1递增1);
             名称:字符串(30);
     };

     实体players_activities_assignment {
         key id:始终以身份生成的整数(以1递增1);
             playerId:整数;
             activityId:整数;
     };
 

数据通过node.js模块中的.xsodata公开。 我正在使用"计算视图"向其他表中的对象(例如ActivityCalculationView)和分配(例如acitivityPlayerTags;不使用单独的ID)添加其他数据,到目前为止效果还不错。

由于标签列表的长度可以是0到n之间的任何长度,因此我真的无法在带有标签列表的Calculation View中创建一列(这等同于将表格放在的单元格内 一张桌子)。 我发现可以通过使用.xsodata文件中的关联来解决该问题:

服务{
 " x.xx :: activityPlayerTags"作为" ActivityPlayerTags"键生成本地" GenID";
 " x.xx :: ActivityCalculationView"作为"活动"键(" id")导航(" APtags"作为" playerTags");
 关联" APtags"主体" Activities"(" id")多重性" 1"从属" ActivityPlayerTags"(" activityId")多重性" *";
 

该解决方案工作得很好,但是自从我实施该解决方案以来,每当我重新启动node.js模块时,我的应用程序中就没有数据,直到刷新为止(可能对后端执行另一个GET请求)。 此后,对于我添加到应用程序中的所有其他关联,刷新所需的次数才能使数据显示在屏幕上。 我在使用邮递员时遇到了同样的问题。 这是我发送足够的GET请求之前得到的消息:

 {
     "错误":{
         "代码":500,
         "信息": {
             " lang":" en-US",
             " value":"不能为源指定键,因为它是表对象。
         }
     }
 }
 

问题似乎与.xsodata中的关联有关。 我想知道是否有人知道我在这里做错了什么?

付费偷看设置
发送
2条回答
Alawn_Xu
1楼-- · 2020-08-23 02:29

嗨,

大约一年前,但是,您设法解决了吗? 找到原因了?

我有同样的事情。

Kr,

闻人可可
2楼-- · 2020-08-23 02:17

我找到了原因,但它不在提供的代码示例中。

错误消息指出,我没有将任何键分配给中间的CalculationViews。 在ui中查看数据所需的刷新次数与.xsodata中没有指定键的CalculationView的次数完全相同。


一周热门 更多>