小技巧 - 如何把基础资料单据体数据返回到单据字段上
金蝶云社区-JohnnyDing
JohnnyDing
12人赞赏了该文章 5,520次浏览 未经作者许可,禁止转载编辑于2016年04月27日 09:47:38

需求背景:

供应商包含了单据体 - 供应商联系人,每个供应商有多个联系人。
单据上,有供应商与联系人两个字段,需要先选择供应商,然后选择此供应商下的联系人;

技术难点:
基础资料的单据体数据,并不是基础资料,不能返回填写到字段上。
需要采用变通方案实现此需求。

实现方案:
基于单据体表格,独立开发一个新的基础资料:供应商联系人。
单据上的联系人字段,引用的是供应商联系人基础资料。

理论基础:
1. 用户创建供应商,维护好供应商联系人,数据会存储到联系人单据体表格;
2. 供应商联系人基础资料,使用相同的数据表,自动就有了数据;
3. 联系人单据体,会自动创建外键:FSupplierId,关联单据头主键;
4. 而供应商联系人基础资料,可以把 FSupplierId 字段,包装为供应商基础资料字段,据此筛选联系人;

实际设计图:

图一:供应商设计图

说明:
此时,供应商联系人只是单据体,不能被字段引用
1. 物理表格 : t_BD_SupplierContact
2. 主键 : FContactId
3. 系统会在单据体表格上,自动创建外键,关联到单据头主键FSupplierId 上;

图二:供应商联系人设计图

说明:
此时,供应商联系人,已经被包装为独立的基础资料,可以被字段引用
1. 单据头表格:t_BD_SupplierContact
2. 主键:FContactId
3. FSupplierId 字段引用供应商基础资料:据此关联供应删,过滤联系人