如何绑定注释文件和智能表

2020-08-18 13:33发布

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

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


你好同事。

我有一个问题。 我在JS Controller中创建智能表。 如何将智能表与批注文件绑定在一起,在哪里开列?

智能表创建代码:

 var mytable =新的SmartTable({
     EntitySet:" vGatewayStatuses",
     id:" st",
     smartFilterId:" smartFilterBar",
     tableType:"表格",
     useExportToExcel:是的,
     useVariantManagement:true,
     useTablePersonalisation:是的,
     标头:"订单项",
     showRowCount:true,
     persistencyKey:" SmartTableAnalytical_Explored",
     enableAutoBinding:true
 }); 

我尝试设置entitySet,但是什么也没有发生。 启动UI应用程序时,我的智能表带有"无数据"。

可能是什么问题?

感谢答案。

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

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


你好同事。

我有一个问题。 我在JS Controller中创建智能表。 如何将智能表与批注文件绑定在一起,在哪里开列?

智能表创建代码:

 var mytable =新的SmartTable({
     EntitySet:" vGatewayStatuses",
     id:" st",
     smartFilterId:" smartFilterBar",
     tableType:"表格",
     useExportToExcel:是的,
     useVariantManagement:true,
     useTablePersonalisation:是的,
     标头:"订单项",
     showRowCount:true,
     persistencyKey:" SmartTableAnalytical_Explored",
     enableAutoBinding:true
 }); 

我尝试设置entitySet,但是什么也没有发生。 启动UI应用程序时,我的智能表带有"无数据"。

可能是什么问题?

感谢答案。

付费偷看设置
发送
6条回答
落灬小鱼
1楼-- · 2020-08-18 14:03

您好基里尔·索科洛夫

如果您通过 oide服务的webide,然后注释将自动链接到manifest.json中的odata服务。 您无需再次为智能表显式绑定。 但是,如果它是通过词汇服务来自odata服务的,那么您需要在manifest.json中手动链接它。

它将以以下格式添加:

< a hraf=" https://ui5.sap.com/#/topic/fd715d97ebf842739697c9a0f276f0c0"> https://ui5.sap.com/#/topic/fd715d97ebf842739697c9a0f276f0c0

谢谢,

马赫什语

wang628962
2楼-- · 2020-08-18 13:49

基里尔·索科洛夫,请使用 下面的语法将智能表插入页面。

this.getView()。byId(" page")。insertContent(mytable); "我的示例使用的是m.page,所以我使用了insertContent方法。

如果您使用语法,则模型,注释将不会传播到smarttable,这是您的问题。

还建议使用像 Vedaradhya Agrahar 一样的功能名称,如下所示:

 eforeRebindTable:" onBeforeRebindTable",
 

谢谢,
Mahesh

hongfeng1314
3楼-- · 2020-08-18 13:51

您好 Mahesh 库玛·帕拉瓦利(Kumar Palavalli)

感谢您的回答。 我的注释与manifest.json中的odata服务链接。 但是,当我用XML创建Smart Table时,会得到以下结果:

 
 
 
 
 

当我在JS Controller中创建智能表时,我得到以下结果:

 var mytable =新的SmartTable({
 id:" smtable",
 EntitySet:" vGatewayStatuses",
 可编辑:false,
 sistenceencyKey:" varianttable",
 tableType:" ResponsiveTable",
 useExportToExcel:是的,
 beforeExport:" onBeforeExport",
 editTogglable:false,
 useVariantManagement:是的,
 useTablePersonalisation:是的,
 标头:"订单项",
 showRowCount:是的,
 enableAutoBinding:true,
 demandPopin:错误,
 showFullScreenButton:true,
 beforeRebindTable:" onBeforeRebindTable",
 可见:真
 });
 mytable.placeAt(" container-DirectoriesEditor --- detail--detailPage-page-content"); 

为什么当我在XML中创建智能表时,我看到了我的列和智能表接口,而当我在JS控制器中创建了智能表时,却只看到了"没有数据"?

compass1988
4楼-- · 2020-08-18 13:42

一个小技巧 关于评论和回答的规则:

仅在提出解决海报问题的方法时才应提交答案。 如果您希望张贴者澄清问题或提供更多信息,请留下评论,要求其他详细信息。 回答时,请包括详细信息,例如分步说明,解决方案的上下文以及指向有用资源的链接。 另外,请确保您的回答符合我们的参与规则。

现在是您的问题,请使用以下语法将智能表插入页面。

此 .getView()。byId(" page")。insertContent(mytable); "我的示例使用的是m.page,所以我使用了insertContent方法。

如果您使用语法,模型,则注释将不会传播到smarttable,这是您的问题。

还建议使用像 Vedaradhya Agrahar 一样的功能名称,如下所示:

 eforeRebindTable:" onBeforeRebindTable",

谢谢,
Mahesh

亦是此间程序员
5楼-- · 2020-08-18 13:56

嗨,基里尔·索科洛夫

在javascript中定义控件时,控件的名称必须绑定到函数。

在您的情况下。 它定义为字符串

 beforeExport:" onBeforeExport",
//必须像beforeExport这样定义:this.onBeforeExport

 beforeRebindTable:" onBeforeRebindTable",
//必须像beforeRebindTable这样定义:this.onBeforeRebindTable 

按如下所示修改您的代码,然后尝试

您可以删除事件名称并尝试。.

 var mytable = new SmartTable({id:" smtable",
 EntitySet:" vGatewayStatuses",
 可编辑:false,
 sistenceencyKey:" varianttable",
 tableType:" ResponsiveTable",
 useExportToExcel:是的,
 editTogglable:false,
 useVariantManagement:是的,
 useTablePersonalisation:是的,
 标头:"订单项",
 showRowCount:是的,
 enableAutoBinding:true,
 demandPopin:错误,
 showFullScreenButton:true,
 可见:真
 });
 mytable.placeAt(" container-DirectoriesEditor --- detail--detailPage-page-content"); 

如果需要事件,请定义事件处理功能。

 onInit:function(){
 var mytable = new SmartTable({id:" smtable",
 EntitySet:" vGatewayStatuses",
 可编辑:false,
 sistenceencyKey:" varianttable",
 tableType:" ResponsiveTable",
 useExportToExcel:是的,
 beforeExport:this.onBeforeExport,
 editTogglable:false,
 useVariantManagement:是的,
 useTablePersonalisation:是的,
 标头:"订单项",
 showRowCount:是的,
 enableAutoBinding:是的,
 demandPopin:错误,
 showFullScreenButton:true,
 beforeRebindTable:this.onBeforeRebindTable,
 可见:真
 });
 mytable.placeAt(" container-DirectoriesEditor --- detail--detailPage-page-content");
 },

 onBeforeRebindTable:function(){

 },

 onBeforeExport:function(){

 }

 

此致

Vedaradhya。

浮生未央
6楼-- · 2020-08-18 14:09

嗨, Vedaradhya Agraha 。 >

创建智能表时,我尝试删除所有事件名称,并且结果相同。 我不知道为什么没有设置标题,行数和其他属性。 也许有人有一个在JS Controller中声明智能表的可行示例?

一周热门 更多>