从1.28升级到1.44后,自定义组合框未显示值

2020-09-23 10:07发布

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

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


专家们,

我有一个问题,其中在sap.m.table中使用了自定义组合框。 从1.28升级到1.44版本后,此组合框的下拉列表中没有任何值。 但是选择的键值正确。 同样,两个版本的批处理调用响应都相同。 代码没有变化。 任何帮助将不胜感激。

(20.0 kB)

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

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


专家们,

我有一个问题,其中在sap.m.table中使用了自定义组合框。 从1.28升级到1.44版本后,此组合框的下拉列表中没有任何值。 但是选择的键值正确。 同样,两个版本的批处理调用响应都相同。 代码没有变化。 任何帮助将不胜感激。

(20.0 kB)
付费偷看设置
发送
2条回答
haha101010
1楼-- · 2020-09-23 11:00

请帮助他人添加相关详细信息以帮助您! 您提供的信息根本不够。 也许这些问题可以帮助您提供更多详细信息:

  1. 什么是"自定义组合框"? 也许是扩展sap.m.ComboBox的自定义控件?
  2. 您使用的是OData吗?如果使用的话,您使用的是哪个ODataModel?
  3. 我们可以看到显示数据绑定的视图或片段吗?
  4. 您能否提供一个正在运行的jsbin来说明您的问题? 使用此模板(如果需要)。

数字4真的很容易,它将提高快速获得正确答案的可能性:-)

haha101010
2楼-- · 2020-09-23 10:46

很抱歉,您错过了这些信息。 是的,我们使用了自定义控件扩展sap.m.combobox并使用了v2/ODataModel。 CustomBox用于表中,如下所示:

查看
 /状态",
 格式化程序:'。formatter.isNotCompleted'
 }">
 
 
 
 
 
 
 
 
 
 
  
 EaComboBox.js 
 sap.ui.define([
" sap/umc/xxxxx/util/JsUtil",
 " sap/umc/xxxxx/util/ControlUtil",
 " sap/m/ComboBox",
 " sap/m/ComboBoxRenderer"
 ],函数(JsUtil,ControlUtil,ComboBox,ComboBoxRenderer){
 "使用严格";


/**
 * @class EaComboBox是一个自定义控件,它扩展了sap.m.ComboBox和
 *实现了绑定到模型时添加空项目的功能,并且
 *可以自动换行详细描述
 * @公开访问
 */
 var EaComboBox = ComboBox.extend(" sap.umc.envam.control.EaComboBox",{
 元数据:{
 属性:{
 emptyOptionText:{type:"字符串",defaultValue:" N/A"},
 showEmptyOption:{类型:"布尔值",默认值:false}
 }
 },

/**
 *在控件初始化时调用
 * @访问受保护
 */
 初始化:function(){
 JsUtil.callSuper(ComboBox," init",this,arguments);
 this._oNonEdtiableText = new sap.m.Text({
 maxLines:2
 });
 },


 渲染器:{
 渲染:function(oRm,oControl){
 如果(!oControl.getEditable()){
 oControl._oNonEdtiableText.setText(oControl.getValue());
 oRm.renderControl(oControl._oNonEdtiableText);
 }
 其他{
 ComboBoxRenderer.render(oRm,oControl);
 }
 }
 },

/**
 *在此控件上设置父级
 * @param {string} [sAggregation]聚合名称
 * @param {object} [oInfo]绑定信息
 * @returns {object}与sap.m.ComboBox中的bindaggregation的返回相同
 */
 bindAggregation:function(sAggregation,oInfo){
 var oRet = JsUtil.callSuper(ComboBox," bindAggregation",this,arguments);
 if(sAggregation ===" items"){
 this._attachOnDataReceived();
 }
 返回oRet;
 },

/**
 *附有添加空项目的功能。
 * @访问私人
 * @memberof sap/umc/envam/control/EaComboBox
 * @实例
 */
 _attachOnDataReceived:function(){
 var oBinding = this.getBinding(" items");
 如果(oBinding && this.getShowEmptyOption()){
 var sEmptyText = this.getEmptyOptionText();
 oBinding.attachDataReceived(function(){
 this.insertItem(new sap.ui.core.Item({key:"",text:sEmptyText}),0);
 }, 这个);
 }
 }
 });

 返回EaComboBox;
 });
 

一周热门 更多>