如何在SAPUI5变体管理中实现showShare属性?

2020-09-09 12:41发布

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

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


大家好,

我们正在进行定制SAPUI5应用程序开发。 根据我的要求,我需要实现变体管理功能。 我通过关注以下博客来实现它。

博客网址:

使用Shell服务进行变体管理

变体管理

我没有使用SmartControls和"筛选器"栏。

我大部分都是通过关注上述博客来完成的。 但是我无法使我的变体用户特定。

当我读取变体管理控件的属性时,它具有 showShare属性(公共和私有)。 我在视图中启用了它。

但是我不知道如何实现它。 我看不到有任何方法可以在shell personlaizarion服务中将其设置为全局或私有。

屏幕1:

创建时,我选择了"公开":

屏幕2:

从FLP重新打开我的应用。

代码:

 saveVariant:函数(sVariantName,bDefault,bGlobal,oFilterData,fnCallBack){
//将变体保存在个性化容器中
 this._oPersonalizationContainer.fail(function(){
//失败时回调函数
 fnCallBack(false);
 });
 this._oPersonalizationContainer.done(function(oPersonalizationContainer){
 var oPersonalizationVariantSet = {},
 oVariant = {},
 sVariantKey ="";
//检查当前变量集是否存在,如果不存在,则将新变量集添加到容器中
 如果(!(oPersonalizationContainer.containsVariantSet(" MyApplicationVariants"))){
 oPersonalizationContainer.addVariantSet('MyApplicationVariants');
 }
//获取变量集
 oPersonalizationVariantSet = oPersonalizationContainer.getVariantSet('MyApplicationVariants');


//获取变体是否存在或添加新变体
 sVariantKey = oPersonalizationVariantSet.getVariantKeyByName(sVariantName);
 如果(sVariantKey){
 oVariant = oPersonalizationVariantSet.getVariant(sVariantKey);
 }其他{
 oVariant = oPersonalizationVariantSet.addVariant(sVariantName);
 如果(bDefault === true){
 oPersonalizationVariantSet.setCurrentVariantKey(oVariant.getVariantKey());
 }
//如果(bGlobal === true){
//oVariant.setShowShare(true);
//}
 }
 如果(oFilterData){
 oVariant.setItemValue(" Filter",oFilterData);
 }
 oPersonalizationContainer.save()。fail(function(){
//用false调用回调fn
 fnCallBack(false);
 })。done(function(){
//用true回调
 fnCallBack(true);
 } .bind(this));
 } .bind(this));
 },
 

我该如何处理?

谢谢

此致

JK。

(29.7 kB)

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

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


大家好,

我们正在进行定制SAPUI5应用程序开发。 根据我的要求,我需要实现变体管理功能。 我通过关注以下博客来实现它。

博客网址:

使用Shell服务进行变体管理

变体管理

我没有使用SmartControls和"筛选器"栏。

我大部分都是通过关注上述博客来完成的。 但是我无法使我的变体用户特定。

当我读取变体管理控件的属性时,它具有 showShare属性(公共和私有)。 我在视图中启用了它。

但是我不知道如何实现它。 我看不到有任何方法可以在shell personlaizarion服务中将其设置为全局或私有。

屏幕1:

创建时,我选择了"公开":

屏幕2:

从FLP重新打开我的应用。

代码:

 saveVariant:函数(sVariantName,bDefault,bGlobal,oFilterData,fnCallBack){
//将变体保存在个性化容器中
 this._oPersonalizationContainer.fail(function(){
//失败时回调函数
 fnCallBack(false);
 });
 this._oPersonalizationContainer.done(function(oPersonalizationContainer){
 var oPersonalizationVariantSet = {},
 oVariant = {},
 sVariantKey ="";
//检查当前变量集是否存在,如果不存在,则将新变量集添加到容器中
 如果(!(oPersonalizationContainer.containsVariantSet(" MyApplicationVariants"))){
 oPersonalizationContainer.addVariantSet('MyApplicationVariants');
 }
//获取变量集
 oPersonalizationVariantSet = oPersonalizationContainer.getVariantSet('MyApplicationVariants');


//获取变体是否存在或添加新变体
 sVariantKey = oPersonalizationVariantSet.getVariantKeyByName(sVariantName);
 如果(sVariantKey){
 oVariant = oPersonalizationVariantSet.getVariant(sVariantKey);
 }其他{
 oVariant = oPersonalizationVariantSet.addVariant(sVariantName);
 如果(bDefault === true){
 oPersonalizationVariantSet.setCurrentVariantKey(oVariant.getVariantKey());
 }
//如果(bGlobal === true){
//oVariant.setShowShare(true);
//}
 }
 如果(oFilterData){
 oVariant.setItemValue(" Filter",oFilterData);
 }
 oPersonalizationContainer.save()。fail(function(){
//用false调用回调fn
 fnCallBack(false);
 })。done(function(){
//用true回调
 fnCallBack(true);
 } .bind(this));
 } .bind(this));
 },
 

我该如何处理?

谢谢

此致

JK。

(29.7 kB)
付费偷看设置
发送
1条回答
clever101
1楼 · 2020-09-09 13:13.采纳回答

根据SAP Note的以下信息,我们无法使用非智能ui控件实现showShare功能。 是吗?

https://apps.support.sap.com/ sap/support/knowledge/preview/zh/2569161

一周热门 更多>