1. 前言
在表单中带有明细表时(如销售单的商品明细),用户通常需要清楚知道自己当前选中的是哪一行。同时,有时需要通过双击某行明细来打开对应的业务单据,查看或修改详细信息。本教程讲解如何利用明细行事件实现选中行颜色变化以及双击打开表单的功能。
2. 操作步骤
(1)理解明细行事件
明细行事件分为两种:明细行单击事件和明细行双击事件。它们都作用于明细表中的行,但触发的动作不同。
进入填表公式设置界面,可以看到明细行相关的事件列在事件列表中。这两个事件都属于"事件群",意味着不能直接在事件下添加公式,而是需要先指定监听哪张明细表,再在该明细表下添加具体的公式操作。
- 明细行单击事件: 用户用鼠标单击选中某一行时触发。常用于在选中行时进行运算,例如改变行的背景颜色,让用户一目了然当前操作的是哪一行。
- 明细行双击事件: 用户用鼠标快速双击某一行时触发。常用于在双击时打开与该行相关的表单,例如双击销售单明细行,打开对应的商品档案。
注意事项:在明细行双击事件下设置公式时,只有双击锁定(不可编辑)**的单元格才能触发公式运行。如果双击的是可编辑单元格,系统会进入单元格编辑状态,不会触发公式。

(2)设置明细选中行颜色
实现在表单中单击选中某行明细时,该行的背景颜色发生变化,松开后其他行恢复默认颜色。
① 在填表公式中选中"明细行单击事件",单击"添加明细表"。在弹出的窗口中,选择你需要监听的明细表名称(如"销售明细")。这一步是指定事件的作用范围——告诉系统监听哪张明细表的单击动作。

② 添加明细表后,在该明细表下点击"添加公式",选择"设置行样式"操作。在设置界面中,选择需要填充的背景颜色。这一步是告诉系统:当用户单击时,用哪种颜色来标识当前行。


③ 再次添加一个公式,选择"清空所有行样式"操作。这个公式的作用是清除明细表中所有行的自定义样式,让它们恢复成默认外观。

④ 将"清空所有行样式"公式上移到"设置行样式"公式的上方。
填表公式是按照从上往下的顺序依次执行的。
如果"设置行样式"在前面,每次单击时系统会先给当前行设置颜色,然后"清空所有行样式"又把颜色全部清掉了,导致颜色无法显示。
将"清空所有行样式"放在上面,执行顺序就变成:先清除所有行的颜色 → 再给当前选中的行设置颜色。这样就能确保只有当前行高亮,其他行保持默认。

使用效果: 单击明细表中的某一行时,该行背景颜色立即变化,其他行恢复默认样式,用户可以清晰定位当前操作行。

(3)明细行双击打开表单的设置
实现双击明细行时,系统自动打开对应的业务表单,无需用户手动查找。
① 在填表公式中选中"明细行双击事件",点击"添加明细表",选择需要监听的明细表名称(如"销售明细")。

② 在该明细表下点击"添加公式",选择"打开表单"操作。在设置界面中,选择双击后需要打开的目标模板(如对应的商品档案)。
/图片/ 需要一张设置"打开表单"公式的截图,标注"目标模板"的选择位置
使用效果: 双击明细行时,系统自动打开该行对应的业务表单,方便用户查看或编辑详细信息。
/图片/ 需要一张表单中双击明细行后弹出对应表单的效果截图
(4)事件与事件群的区分
在设计填表公式时,理解单一事件与事件群的区别,能帮助你判断如何正确添加公式。
- 单一事件: 可以直接在事件下添加公式,不需要额外指定作用对象。例如"新建打开表单后"事件,触发的时机就是新建或打开表单的那一刻,条件明确直接。
- 事件群: 不能直接添加公式,需要先指定具体的数据项或明细表,告诉系统监听哪个对象,再添加公式。例如"值变化事件"需要先指定监听哪个数据项(如"数量");"明细行事件"需要先指定监听哪张明细表。
判断方法:在填表公式的事件列表中,选中事件后,如果可以直接在下方列出公式,则为单一事件;如果需要在事件下先添加数据项或明细表才能添加公式,则为事件群。