部署后i18n Fiori App扩展出现问题

2020-09-14 15:43发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 我扩展了批准请假申请...

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

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


你好

我扩展了"批准请假申请" Fiori应用程序,以更改i18n文件的某些文本。

但是,在扩展过程中遇到了一些问题,我无法按照SAP的意图扩展i18n文件夹(新建>扩展> i18n定制)。

因此,我遵循以下主题中的答案(并查阅了本网站上的所有其他相关主题):

i18n用于扩展的Fiori应用

我在扩展项目中添加了一个i18n文件夹,并在其中添加了国际化文件(i18n_en.properties,...)。 在这些文件中,我添加了其他翻译(标准的替代)。 在扩展项目的component.js中,添加了以下代码

 config:{
 " sap.ca.i18Nconfigs":{
 bundleName:" <您的组件名称> .i18n.i18n"
 }
 }
 

我将替换为component.js中指定的扩展组件的名称

因此,在进行了这些更改之后,它可以在我的Web IDE环境中运行,当我在Web IDE中运行索引文件时,将显示新的翻译。

但是,在将应用程序扩展部署到我的ECC,ABAP存储库中并正确配置磁贴以调用该扩展以及LPD_CUST之后,在Web IDE中正确运行的更改在ECC中不起作用。

该应用程序正在运行,调用了该扩展程序,但是在运行该应用程序时无法观察到在扩展程序中所做的更改。 请注意,控制台中没有错误。

对这个问题有任何想法吗?

非常感谢

亚历克斯。

7条回答
哎,真难
2020-09-14 15:57

嘿Alex,

不确定您是否已解决问题:

我遇到了同样的问题,我不得不在扩展程序中扩展Fiori App的i18n模型。 我完全按照韦德拉达(Vedaradhya)在第一个答案中的建议进行了工作,对我有用。

因此,您可能想要尝试的是在扩展应用程序中创建manifest.json(如果您还没有的话)(这样您也可以删除component.js中有关扩展/替换的任何编码) 视图和控制器,并将其放入新清单中

然后返回到S2控制器。

使用建议的Vedaradhya代码

 onBeforeRendering:function(){
 var i18n = this.getModel(" i18n"); //获取标准的i18n文件
 var sBundleURL = this.getModel(" i18nCustom")。getResourceBundle()。oUrlInfo.url;
 i18n.enhance({bundleUrl:sBundleURL}); //将自定义i18n文件与标准文件合并
 },

(确保扩展应用程序manifest.json中的i18n型号名称为" i18nCustom",以使该示例代码对您有用)

据我了解,这里发生的事情是扩展的应用程序将加载原始的i18n模型,然后加载您的自定义i18n模型并覆盖您在此处定义的每个文本。

使用SDK文档中的SAP示例,我遇到了很多有关路径的问题=>我猜相对路径在这里不太好用。 通过使用this.getModel(sName),您就不会遇到这个问题,因为您的应用同时知道原始的i18n模型和新的自定义模型。

我希望它能对您有所帮助(如上所述:如果仍然需要帮助)

一周热门 更多>