联系
我们

工作日 9:00-18:00

13632615190

引用字段时复制到其他字段

经常会有这样的需求,选择引用某单据记录的时候,需要将引用的这一条记录的其他字段复制到本表单上的字段,下面以一个例子来进行说明:

如下图,假设我有这么一个被保险人表单,可以选择被保险人属于哪个客户(点击客户名称后面的按钮),这就是表示引用客户表单的数据。现在我的需求是,点选引用了某一条客户数据后,能不能把这条客户记录的“姓名”,“电话”,“邮箱”,“出生日期”,“备注”等等也自动填写到“被保险人”上的对应字段中。

image.png


解决方案:

在开发平台中打开这个“被保险人”表单,如下图选择“所属客户”字段后,由于本字段引用的是“客户信息”表单的客户名称字段,所以在属性中可以看到当设置了“选择引用数据”属性为True后,下面会出现“字段填充规则”属性:

image.png

点击“字段填充规则”属性后面的按钮进入“字段填充规则”窗口,列表“源字段”列显示的是“客户信息”表单上的字段,右侧“目标字段”列可选择当前表单上的字段,表示选择引用的时候自动把源字段填入目标字段,如下图设置好即可。

image.png

动图参考下:

20250730-170009.gif


提示:

本功能为2025-07-30后新增的功能,以前的版本没有这功能,如果您需要请扫码加微信后获得最新版本。


以前的做法是:

在开发平台中右键选择引用字段的时候也把“客户信息”表单上的这几个需要复制的字段引用进来设置为隐藏,然后在“客户名称”字段的“选择后事件”中使用脚本进行复制。如下图红框中的字段和“所属客户”这个字段都引用了“客户信息”表单上的字段(引用字段都会有“所属单据”属性值)。

image.png

然后再在“客户名称”字段的“选中后事件”中使用如下脚本进行值复制:

SetValue("__Name__", GetValue("Customer\__Name__"));
SetValue("__Tel__", GetValue("Customer\__Tel__"));
SetValue("__Email__", GetValue("Customer\__Email__"));
SetValue("__Birthday__", GetValue("Customer\__Birthday__"));
SetValue("__Comment__", GetValue("Customer\__Comment__"));

image.png

可以看到相对于以前的实现方法,现在就太简单了。