点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
您好社区,
我已经为这个问题苦苦挣扎了一段时间,而我的选项已用完了...希望我能在这里得到一些答案:)
我有一个非常简单的表格来管理到第三方网站的链接,就像这样:
此表的VisibleRowCount为3。
使用3个或更少的条目(没有滚动条)删除或添加链接就可以了,我的模型在更新后刷新,因此我的更改像应该的那样反映在表上。
当我有4条或更多记录时,就会出现问题,因此屏幕上会出现滚动条...
在表格中添加第4个链接后,我看到两种不同的行为:
1。 只要我显示第一行(测试1,滚动条一直向上),如果我删除Test1,Test2或Test3,在模型刷新后,我就会看到滚动条消失了,第四行现在变成了第三行。 一切都很好:
测试4是第4行,由于滚动条一直向上,现在不可见。
删除后:
2。 相反,如果滚动条一直向下(或在任何时候向下,如果我的表中有很多行),则行为如下:
现在例如删除Test4之后:
您可以看到Test4消失了,并且Test5已经向上移动,因此所有行现在都在显示中,但是滚动条仍然在那里。 但是,如果向上滚动使后端再次调用返回正确的行数,则屏幕上显示的是Test5的第4行,因此最后一行有重复。
如果我按任何列排序,或者关闭并打开我的应用程序,或插入另一条记录,则该行消失。
我真的很茫然,我看不出有什么问题。 这是一个非常简单的应用程序,在管理模型方面没有复杂的逻辑,也不会干扰任何奇怪的东西。 这是重要的部分:
//这是我的模型实例。 我在oData操作后没有做任何额外的模型刷新。 //行绑定是在XML视图上完成的 //模型绑定到视图,而不是直接绑定到表(尽管我已经尝试过) this.oModel =新的ODataModel(menu.util.utils.getSystemUrl(this.SERVICE_PATH + this.SERVICE_NAME),{ json:是的, refreshAfterChange:是的, loadMetadataAsync:true, skipMetadataAnnotationParsing:是的, });
//我正在使用commitChanges插入我的新记录 _submitChanges:function(){ var that = this; var sMessages; 如果(this.oModel.hasPendingChanges()){ this.oModel.submitChanges({ ... //然后删除删除 _delete:函数(oData){ var that = this; this.oModel.remove(this.ENTITYSET_NAME +"(LinkId ='" + oData.LinkId +"')",{ ...
我可能在这里错过了一些非常愚蠢的东西……但是我看不到!
如果需要,我可以添加更多详细信息。
编辑:我忘记添加所有后端调用都能按预期工作,并且数据维护正确。 另外,作为故障排除的一部分,我在oData调用中禁用了缓存。
提前谢谢!
(6.7 kB)
如何确定选定的行?
告诉我您调用的代码
您好,
deleteR是在按钮事件上触发的,我只是传递_delete oData路径,并在其中调用oData.remove函数。
成功后,我执行myTable.clearSelection(),因此删除后未选择任何行
谢谢
什么是"
如果我向上滚动,则再次调用后端,返回正确的行数
"
如果加载了数据,又怎么打另一个电话?
这是一个oData模型,我将实例化粘贴到了我的帖子中:
该表是处理对后端的oData调用的表。 定义如下:
在任何情况下,在这种情况下,我都不处理任何手动调用后端的操作。
我已经创建了一个存储库,并将代码放在这里。 如果您可以看一下,那就太好了。
https://github.com/Tukutupap/HelpfulLinks
我非常感谢您在6月解决这个问题上所做的努力。
所以我还无法弄清楚这一点,我真的认为当有滚动条时控件出了点问题 目前,但到目前为止我还无法证明。
我继续做的是,而不是让表执行我自己控制的事情。 我在初始化时获取行,并在每次插入/删除/更新记录时手动刷新模型。
这很好用,但我真的很讨厌把这个问题解决...
谢谢大家!
嗨,文森特,根据我的观察,您需要刷新模型,因为根据我的推断,酒吧将根据 表中的数据量,即在开始时如果有4条记录并且您删除了1条并且您没有刷新模型,则控件将"解释"您仍有4个寄存器并进行另一个调用,但是, 如果在检查时刷新并查看网络,您会注意到它会像这样/背面的那样调用背面/UtilityLinksRecordsSet/$ count,使计数现在变为3,并且不会显示更多的记录。
刷新:
我希望我对您有帮助,问候
一周热门 更多>
点击此处---> 一起学习S4 HANA ...
相关问答
采纳回答
编辑标签
举报内容
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
付费偷看金额在0.1-10元之间