点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我们如何从数据库中检索数据作为SmartEdit for Preview and Maintenance中下拉组件的值列表?
当前,我们要求根据客户所访问的国家/地区,以不同的形式维护内容页面。
例如,如果某个客户正在访问国家A的站点,他们将看到一个页面,其中包含为国家A维护的内容。相似的另一客户在访问国家X的站点时也会看到相同的页面,但内容不同。
基于此,我们将国家进一步分类为不同的"区域"(称为内容区域),例如,国家A,B和C位于区域1下,X,Y和Z位于区域2下。目标是 基于"区域"维护有不同"版本"(页面上具有不同内容)的单个页面。
为了更好地遵守SmartEdit中的预览功能,我们将使用自定义类型的页面限制(称为区域限制)在每个"区域"中创建不同的页面。 由于用户可以自行引入新区域,因此我们希望从数据库中检索所有可用区域,并在用户出现时显示为值列表。
-
在SmartEdit中将"区域"限制定义为页面级别限制
-
选择要在SmartEdit中预览的"区域"
为此,我们想了解如何在SmartEdit中从数据库中检索数据(即可用区域列表),以便可以将其用作上述情况下SmartEdit中的值列表? 是否需要在SmartEdit中使用对Hybris后端的API调用?
看看是否可以提供帮助。
p.s。,当前我们使用的是1811版。
谢谢。
塞恩
嗨,肖恩,SmartEdit中显示的所有数据都是通过API检索的。 就是说,有两种方法可以获取可用区域列表,具体取决于您的区域类型层次结构。
如果区域类型扩展了CMSItem类型模型,则可以使用现有的CMS项目搜索API
否则,您将需要公开一个新的API以返回可用区域的列表。
嗨,我在查看1905 SmartEdit下拉选择器中的语言和产品目录时遇到问题。 有人可以让我知道我是否想念什么。
嗨,Chhunry,
感谢您的反馈,我们是否可以进一步阐明如何(1)在SmartEdit中调用API,然后(2)将作为值列表检索的数据填充到SmartEdit中的UI控件?
例如,如果您参考所附的屏幕截图,我们希望将数据填充到新的下拉框中,如图所示。 实际上,我们要实现的功能与"预览"对话框上的其他OOTB控件(例如"目录"和"目录版本")相似吗?
我们可以了解如何自定义SmartEdit来实现这一点吗?
此外,除了下拉框之外,SmartEdit中是否还有用于文本框输入字段的OOTB UI控件?
谢谢。
Sean
嗨,肖恩,
我希望你做得很好。
有三种方法可以解决您正在谈论的问题:
选项1:静态如果您希望下拉列表中的值是静态的(例如,不是来自数据库),则可以为您的字段创建一个枚举。 有了SmartEdit,它将可以处理所有事情。
选项2:来自DB-URI如果希望值是动态的(例如,来自DB),则可以为遵循分页协定的REST服务指定URI( https://help.sap.com/viewer/86dd1373053a4c2da8f9885cc9fbe55d/b181768 )。
选项3:从数据库-自定义填充器如果要从不遵循分页协定的后端检索值,或者需要在前端进一步处理值,则可以使用此选项 (根据您的屏幕截图,我认为这是您遵循的方法)。 这是必需的代码:
后端配置:
前端代码(在打字稿中):
... @SeInjectable()导出类PreviewDatapageZoneDropdownPopulator扩展了DropdownPopulatorInterface {
注意:系统期望Angular拥有名称为PreviewDatapageZoneDropdownPopulator的服务(必须与此大小写匹配)。 您可以在打字稿中这样注册它
希望这对您有帮助,亚历杭德罗
您好,亚历杭德罗,我们已经尝试了第二个选项,并且可以使用!
感谢您的支持!
一周热门 更多>