移动端Container Link切换客户后数据未刷新问题咨询
Container Link 移动端刷新异常问题排查与解决
问题现象
- 首次打开「PIPELINE & CRM」容器时,数据显示正常
- 切换至其他客户后,该容器仍加载上一客户的数据
- 在容器内添加记录时,屏幕可正常更新
- ERP端功能完全正常,仅移动端出现该异常
移动端配置代码
update screen AR303000 { update container "CustomerSummary" { add recordAction "save" update layout "CustomerHeader" { } update layout "OtherTab" { displayName = "CRM" add containerLink "PIPELINE" } } add container "PIPELINE" { fieldsToShow = 4 displayName = "Pipeline" listActionsToExpand = 2 containerActionsToExpand = 2 add field "Date" add field "Origine" add field "Raison" add field "Statut" add field "Article" add field "Description" add field "Commentaire" add containerAction "Insert" { icon = "system://Plus" behavior = Create redirect = True } } }
问题原因
移动端的Container Link默认未配置父容器记录变更时的自动刷新规则,导致子容器(PIPELINE)不会跟随父容器(CustomerSummary)的客户切换重新加载关联数据;而新增记录时的局部刷新逻辑不受此影响,因此能正常更新。
解决方案
在Container Link配置中添加refreshOnParentChange = True,同时确保子容器的数据源正确关联父容器的主键字段,修改后的代码如下:
update screen AR303000 { update container "CustomerSummary" { add recordAction "save" update layout "CustomerHeader" { } update layout "OtherTab" { displayName = "CRM" add containerLink "PIPELINE" { refreshOnParentChange = True // 父容器记录切换时自动刷新子容器 } } } add container "PIPELINE" { fieldsToShow = 4 displayName = "Pipeline" listActionsToExpand = 2 containerActionsToExpand = 2 parentField = "CustomerID" // 关联父容器的客户主键字段,需替换为实际关联字段 add field "Date" add field "Origine" add field "Raison" add field "Statut" add field "Article" add field "Description" add field "Commentaire" add containerAction "Insert" { icon = "system://Plus" behavior = Create redirect = True } } }
关键配置说明
refreshOnParentChange = True:强制子容器在父容器当前记录变更时重新加载数据,适配移动端的容器链接刷新逻辑。parentField:指定子容器数据源中关联父容器的主键字段,确保数据过滤条件随父容器记录同步更新。如果你的PIPELINE实体关联字段不是CustomerID,请替换为实际字段名。
内容的提问来源于stack exchange,提问作者Xavier LARTEM
相关产品推荐
相关产品推荐

