Acumatica移动应用Shipments部件Allocations界面无法弹出报404错误
问题根因
你遇到的404错误、多行场景下Allocations界面无法弹出的问题,核心是Acumatica移动端父子容器的关联配置缺失,具体问题如下:
- 子容器
Allocations未明确声明主键字段,服务端无法为其生成符合移动端规范的访问路由 DocumentDetails到Allocations的容器跳转未配置父记录字段映射,多行场景下跳转时没有带上当前选中发货行的唯一标识参数,服务端无法定位要加载的分配数据,直接返回404- 父容器
DocumentDetails未明确声明主键,移动端传递父行参数时存在字段缺失风险
修复方案
按照以下步骤修改代码即可解决问题:
- 为
DocumentDetails容器添加主键声明,对应发货行表SOShipLine的主键字段
add container "DocumentDetails" { // 新增主键配置 primaryKeys = ["CompanyID", "ShipmentNbr", "LineNbr"] fieldsToShow = 2 listActionsToExpand = 1 formActionsToExpand = 2 containerActionsToExpand = 1 // 原有剩余配置保持不变 ... }
- 修改
DocumentDetails中Allocations标签的容器链接配置,添加父容器关联和字段映射
add layout "AllocationsTab" { displayName = "Allocations" layout = "DataTab" // 修改容器链接,添加父级关联 add containerLink "Allocations" { parent = "DocumentDetails" fieldsMap { map "ShipmentNbr" = "ShipmentNbr" map "LineNbr" = "LineNbr" } } }
- 为
Allocations容器添加主键声明,对应发货分配表SOShipLineSplit的主键字段
add container "Allocations" { visible = False // 新增主键配置 primaryKeys = ["CompanyID", "ShipmentNbr", "LineNbr", "SplitLineNbr"] fieldsToShow = 3 listActionsToExpand = 2 formActionsToExpand = 3 containerActionsToExpand = 2 // 原有剩余配置保持不变 ... }
修改完成后重新发布移动端配置,清除移动端缓存后再测试,不管发货行有多少条,都能正确加载对应行的序列号/库位分配界面。
内容的提问来源于stack exchange,提问作者Net Admin
相关产品推荐
相关产品推荐

