错误:" [object Object]"对于ManagedObject的聚合" persoService"无效

2020-08-31 20:37发布

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

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


嗨,

我正在实现表个性化(sap.m.TablePersoController),该个性化将用户特定的设置保留在ushell服务上。 代码是:

 var oPersonalizationService = window.parent.sap.ushell.Container.getService(" Personalization");
 var oPersId = {
 容器:" AppPersSample2",
 项目:"可移动"
 };

 var oMobileTable = sap.ui.getCore()。byId(" idTable");
 var oStartPersButton = sap.ui.getCore()。byId(" idButton");
 var oPersonalizer = oPersonalizationService.getPersonalizer(oPersId);
 console.log(" oPersonalizer是:" + oPersonalizer);
//创建表个性化控制器
 jQuery.sap.require(" sap.m.TablePersoController");
 jQuery.sap.require(" sap.m.TablePersoDialog");
 var oTablePersoController = new sap.m.TablePersoController(" oTablePerso",{
 表格:oMobileTable,
 persoService:oPersonalizer
 });
//使用个性化数据相应地配置表
 oTablePersoController.activate(); 

但是我在Fiori Launchpad中运行应用程序时看到以下错误。

错误:" [object Object]"对于ManagedObject sap.m.TablePersoController#oTablePerso的聚合" persoService"无效

您能让我知道问题是什么以及如何解决它。

此致

Teja。

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

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


嗨,

我正在实现表个性化(sap.m.TablePersoController),该个性化将用户特定的设置保留在ushell服务上。 代码是:

 var oPersonalizationService = window.parent.sap.ushell.Container.getService(" Personalization");
 var oPersId = {
 容器:" AppPersSample2",
 项目:"可移动"
 };

 var oMobileTable = sap.ui.getCore()。byId(" idTable");
 var oStartPersButton = sap.ui.getCore()。byId(" idButton");
 var oPersonalizer = oPersonalizationService.getPersonalizer(oPersId);
 console.log(" oPersonalizer是:" + oPersonalizer);
//创建表个性化控制器
 jQuery.sap.require(" sap.m.TablePersoController");
 jQuery.sap.require(" sap.m.TablePersoDialog");
 var oTablePersoController = new sap.m.TablePersoController(" oTablePerso",{
 表格:oMobileTable,
 persoService:oPersonalizer
 });
//使用个性化数据相应地配置表
 oTablePersoController.activate(); 

但是我在Fiori Launchpad中运行应用程序时看到以下错误。

错误:" [object Object]"对于ManagedObject sap.m.TablePersoController#oTablePerso的聚合" persoService"无效

您能让我知道问题是什么以及如何解决它。

此致

Teja。

付费偷看设置
发送
5条回答
bbpeas
1楼-- · 2020-08-31 20:47

hi Teza,

不是使用window.parent,而是直接使用外壳容器来获取服务

 var oPersonalizationService = sap.ushell.Container.getService("个性化")  ; 

我也照做了,为我工作。 请在下面找到我使用的示例代码:

//创建一个持久性密钥
 var oPersId = {
 容器:" FBS",
 项目:" idBlendCompTable"
 };
//从外壳中获取个性化服务提供商(或创建自己的服务)
 var oProvider = sap.ushell.Container.getService("个性化").getPersonalizer(oPersId);

 var table = this.getView()。byId(" idBlendTable");

//实例化连接表和持久性服务的控制器
 this._oTPC = new TablePersoController({
 桌子:桌子,
 persoService:oProvider
 })。activate(); 

谢谢

Vaibhav

Nan4612
2楼-- · 2020-08-31 20:59

嗨,

请对此问题提出任何建议。

此致

Teja

昵称总是被占用
3楼-- · 2020-08-31 20:47

嗨Teja,

您应该将oPersonalizationService对象传递给persoService聚合

干杯

穆罕默德

SKY徐
4楼-- · 2020-08-31 20:57

您的输出似乎正常。

我附加的输出是针对Personalizer的。 sap.ushell.Container.getService("个性化").getPersonalizer(oPersId)

检查其输出并进行一次比较。

否则,您将不得不调试并检查基类:ManagedObject,以查看代码失败的地方

谢谢

Vaibhav

空代码
5楼-- · 2020-08-31 20:56

嗨,

我尝试设置persoService:oPersonalizationService,但是仍然出现相同的错误。 如果我做错了方法,请告诉我。

此致

Teja。

一周热门 更多>