Skip to content

PC主从表填报

alt textalt text

主从表关联方式1:uuid

方案一:文本框、数据源给 uuid 作为formld 值 填入主表和明细表 拖一个单行文本框: alt textalt text 数据源 alt text 按钮提交时传递uuid: alt text 明细表关联formId: 明细表table配置 alt text 缺点:uuid是字符串,查的慢

主从表关联方式2:计数器

新增计数器:

alt text 新增计数器 alt text

配置计数器

拖一个计数器组件;数据源配置刚刚新建的计数器 alt text 配置其他: alt text 绑定formId,给默认值,隐藏 单独搜索,关联组件,这样编辑查看进入主从表填报页,可以查出子表数据 同步数据字段 a.formID;因为主表保存按钮事件里,为防止页面变量重名,配置了主表前缀:alt text

计数器组件int关联,查询效率更快

主从表新增 主表配置

保存按钮

配置 新增事件和 返回上一页事件(用户新增后立刻返回上一页,避免重复新增)

新增事件

下面多种,选一个即可 alt textalt text 明细表字段加detail前缀后,这里不用配前缀,其他配置: alt text 这里,自定义了退货单号的规则,和主表自动填充的隐藏参数 alt text 返回上一页事件,执行条件是新增成功

提交按钮

新增事件,注意配置状态等参数,也要自定义规则 返回上一页事件,执行条件是修改成功 alt textalt text

退出按钮

配置 手写SQL事件、返回上一页事件(执行条件是手写SQL成功) alt text DELETE FROM hd_pur_order_detail WHERE detailFormId = #{formId} 目的是在新增操作下,主表未保存,直接退出,需要删除已保存的子表记录

主从表新增 明细表配置

alt text 表格组件,开启 支持表内新增 alt text 开启后效果:表格右上角,出现:新增、保存 按钮 为了让 新增、保存 按钮 正常显示,表格 设置成相对定位 明细表SQL:

SELECT
        d.detailId,
        d.detailFormId,
        d.detailMaterialId,
        m.materialName as detailMaterialName,
        d.detailBatchNo,
        d.detailGrade,
        d.detailQuantity,
        d.detailWeight,
        d.detailRate,
        d.detailPrice,
        d.detailAmount,
        d.detailTaxAmount,
        d.detailRemark 
FROM
        hd_pur_order_detail AS d
        LEFT JOIN hd_sys_material AS m ON d.detailMaterialId = m.materialId 
WHERE
        1 =1  and detailFormId = #{formId}

且 单行文本框 formId 同步detailFormId 明细表新增 表格组件配置 表内新增 事件: alt text 设置明细表新增记录时,设置明细表不用填写的隐藏参数值;

注意:默认已经关联了formId; 隐藏参数不要 绑定 formId,否则子表提交会传2次formId

SQL方式 alt text

明细表编辑 明细表需要支持输入的列,设置可编辑: alt textalt text 注意:编辑框类型一定要选,不然不生效 依次把所有需要编辑的列都加上,效果: alt text 上图 物料编号:编辑框类型是弹框,弹框选择物料,把值带给 物料名称字段

表格组件配置 表内修改 事件: alt text 注意:不需要绑定 formId 参数,但需要明细表数据源有id字段,因为编辑是根据id字段编辑的: alt text 明细表 字段加detail后,id改成 detailId 明细表删除 明细表已添加数据,支持删除操作,表格组件配置删除事件: alt text 明细表字段有前缀时,id改成 detailId 效果: alt text 点击 删除,会弹框提示确定删除吗?点击 确定,删除记录 条件删除 alt text 明细表字段有前缀时,id改成 detailId 明细表 未完结记录才显示删除,已完结记录不显示删除

表格列计算 表内数据联动方案:8点方法模板即可生成样例只需row.xxx按需赋值即可如row.quantity=value*100 alt textalt text 暂时只支持 第一个 输入框 类型??

主表列表

alt text 查询:查询主表记录 新增:新增主表记录,同时填报子表的记录 编辑:编辑主表记录,同时编辑子表记录 查看:查看主表记录,同时查看子表记录

构建主表: alt text 可以快速构建表格列,主表只有客户id,获取客户名称,需要联表查询,改成SQL: alt text

SELECT
      r.id as zbId,
        r.formId,
        r.orderNo,
        r.orderDate,
        c.customerName ,
        r.salesman,
        r.STATUS,
        r.deliveryDate,
        r.remark,
        r.m_creator_account,
        r.m_updater_account,
        DATE_FORMAT(r.m_create_time,'%Y-%m-%d') as m_create_time,
        DATE_FORMAT(r.m_update_time,'%Y-%m-%d') as m_update_time,
        r.type 
FROM
        hd_sales_returnorder AS r
        left JOIN hd_sales_customer AS c ON r.customerId = c.id 
WHERE
        1 =1

注意:r.id, r.formId别忘了,修改主表时需要用id;关联子表需要用formId 新增 新增按钮事件配置: alt text 灰色表示还没发布

编辑 查看 主表 表格组件,配置事件: alt textalt text

主从表编辑页

把主从表新建页 复制一份,改名成编辑页 方式1:单行文本框 的uuid 数据源配置 清空,改成从列表带过来,不用配置 方式2:计数器组件改成单行文本框,不用配置数据源,改成从列表带过来,不用配置 alt text 开启单独搜索,且关联表格组件,才能触发子表的查询SQL执行(新增页也需要) 同步数据字段,看需求设置,多为 detailFormId

保存按钮修改

改成修改事件,记得传参:

注意: 可以不配置返回上一页事件,配置记得执行条件改成 修改 alt text 注意:修改的是主表,不是明细表, 注意:这种方式是根据主表id修改主表数据的,F12: alt text 主表主键是id时,很容易被覆盖,建议改成 hdId

或SQL方式:主表 insert 语句改成 update语句: alt text 注意:

主表字段: alt text 新增单行文本框匹配 id alt text

遵循页面传参规则,主从表

提交按钮修改

改成修改事件,记得传参:

注意: 后面的返回上一页事件执行条件,改成修改 退出按钮 去掉 手写SQL事件(里面删除不需要的子表数据) 返回上一页事件, 明细表字段无前缀时,明细表字段会和主表字段重名,导致冲突,上面 id 需要改成 zbId 明细表字段有前缀时,直接用id即可

主从表详情页

把主从表编辑页 复制一份,改名成详情页 页面 带编辑的地方 改成详情 formId 单独搜索 关联的 删除可修改的按钮 明细表 列表组件 关闭表内新增,删除事件

表格列编辑关掉