点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我正在尝试为使用列表报告模板创建的Firoi应用程序的对象页面上的可编辑字段创建值帮助。 我使用了SAP Fiori的ABAP编程模型来创建应用,并使用了 https://help.sap.com/viewer/cc0c305d2fab47bd808adcad3ca7ee9d/7.5.14/zh-CN/1b9a9e9d759e4302890c44cf5e10b5b1.html 字段,用于创建值帮助(计数)。 运行该应用程序后,在字段的值列表弹出窗口上没有看到任何数据,并且还看到以下错误" 在元数据中找不到值列表ZDEMO_C_COMPANY_CDS.ZDEMO_C_COMPANYType/CountryKey " 网关系统中的错误日志。 有人可以查看我的步骤,并可能在这里解释我可能会缺少的内容。
用作文本提供者的CDS视图:
@ AbapCatalog.sqlViewName:'ZDEMO_I_BUKRS' @ AbapCatalog.compiler.compareFilter:是 @ AccessControl.authorizationCheck:#NOT_REQUIRED @ EndUserText.label:"公司代码" 将视图ZDEMO_I_COMPANY定义为从t001 { 作为公司代码, butxt作为CompanyName, land1作为CountryKey, 叫CurrencyKey }
用作价值帮助提供者的CDS视图:
@ AbapCatalog.sqlViewName:'ZDEMO_I_LAND_VH' @ Search.searchable:是 @ EndUserText.label:"国家/地区帮助" 定义视图ZDEMO_I_COUNTRY_VH 从t005中选择作为CountryValueProvider 将[0 .. *]与_CountryText关联到ZDEMO_I_COUNTRY_VH 在$ projection.CountryKey = _CountryText.CountryKey上 { @ ObjectModel.text.association:'_CountryText' @ Search.defaultSearchElement:true 键CountryValueProvider.land1作为CountryKey, -协会 _CountryText }
CDS模型视图:
@ AbapCatalog.sqlViewName:'ZDEMO_I_BUKRS' @ AbapCatalog.compiler.compareFilter:是 @ AccessControl.authorizationCheck:#NOT_REQUIRED @ EndUserText.label:"公司代码" 将视图ZDEMO_I_COMPANY定义为从t001 { 作为公司代码, butxt作为CompanyName, land1作为CountryKey, 叫CurrencyKey }
CDS消费视图:
@ AbapCatalog.sqlViewName:'ZDEMO_C_BUKRS' @ AbapCatalog.compiler.compareFilter:是 @ AccessControl.authorizationCheck:#NOT_REQUIRED @ EndUserText.label:"公司代码" @ Search.searchable:是 @ ObjectModel.semanticKey:'公司代码' @ ObjectModel.representativeKey:'公司代码' @ ObjectModel.createEnabled:是 @ ObjectModel.deleteEnabled:是 @ ObjectModel.updateEnabled:是 @ UI.headerInfo.title.value:'CompanyCode' @ UI.headerInfo:{typeName:"公司代码",typeNamePlural:"公司代码"} @ OData.publish:正确 定义视图ZDEMO_C_COMPANY 作为公司从ZDEMO_I_COMPANY中选择 关联[0..1]与ZDEMO_I_COUNTRY_VH作为$ projection.CountryKey = _CountryValueHelp.CountryKey上的_CountryValueHelp { @ Search.defaultSearchElement:true @ UI.lineItem.position:10 @ UI.identification.position:10 @ UI.selectionField.position:10 @ ObjectModel.readOnly:正确 关键的Company.CompanyCode作为CompanyCode, @ UI.lineItem.position:20 @ UI.identification.position:20 @ UI.selectionField.position:20 Company.CompanyName作为CompanyName, @ ObjectModel.foreignKey.association:'_CountryValueHelp' @ UI.lineItem.position:30 @ UI.identification.position:30 @ UI.selectionField.position:30 Company.CountryKey作为CountryKey, @ UI.lineItem.position:40 @ UI.identification.position:40 Company.CurrencyKey作为CurrencyKey, - 协会 _CountryValueHelp }
服务元数据:
<?xml version =" 1.0" encoding =" UTF-8"?> -- - -<架构xml:lang =" zh-CN"命名空间=" ZDEMO_C_COMPANY_CDS" xmlns =" http://schemas.microsoft.com/ado/2008/09/edm" sap:schema-version =" 1"> - -<键> -<关联sap:content-version =" 1" Name =" assoc_70D10BB6340D56E151B1D73DD37537A5"><属性sap:label ="公司代码" Name =" CompanyCode" sap:updatable =" false" sap:creatable =" false" sap:display-format =" UpperCase" MaxLength =" 4" Nullable =" false" Type = " Edm.String"/> <属性sap:label =" Company Name" Name =" CompanyName" MaxLength =" 25" Type =" Edm.String"/> <属性sap:label ="国家/地区代码" Name =" CountryKey" sap:display-format =" UpperCase" MaxLength =" 3" Type =" Edm.String" sap:value-list =" standard"/> <属性sap:label =" Currency" Name =" CurrencyKey" MaxLength =" 5" Type =" Edm.String" sap:semantics =" currency-code"/> -<键> <属性sap:label ="国家/地区键" Name =" CountryKey" sap:display-format =" UpperCase" MaxLength =" 3" Nullable =" false" Type =" Edm.String"/> - - - -<注释条款=" Common.ValueList"> -<记录> -- -<集合> -<记录类型=" Common.ValueListParameterInOut"> 记录>记录> - -<集合> 公司代码
(22.3 kB)
连接ZDEMO_I_COUNTRY_VH有什么意义?
这是一个不错的选择,但不幸的是无法解决我的问题。 另外,我原始帖子中的文本提供程序代码不正确。 附加正确的文本提供程序CDS视图代码以及更正的CDS视图代码,以提供价值帮助提供者。
用作文本提供者的CDS视图:
用作价值帮助提供者的CDS视图:
一周热门 更多>