zoukankan      html  css  js  c++  java
  • 普通填报表 只对用户修改行更新创建人编号

    具体需求:
    普通填报表  要求页面上修改了那行数据,那么就将从外部接收到的创建人编号 更新到数据库中对应修改行的指定字段中

    难点:
    如果在 update 中直接指定修改  会将所有记录均修改,脚本如下:

    A1.update@uk(employee:employee_old, 员工表, 编号, 部门, 姓名:aa, 性别, 出生日期, 入职日期, 籍贯, 工资; 编号)
    这样就与客户想要实现的效果不太一样。

    解决思路:
    在执行 update 前  对要更新的数据提前处理,大致思路是通过对比新旧对象的记录来实现,如果新旧对象不同,则在新对象中保留不同的记录供后面更新使用,如果新旧对象一致则不参与执行更新,以此达到客户想要的部分更新效果

    以填报教程示例 2.1.sht 为例    数据来源脚本不做任何修改,数据去向脚本修改如下:

    脚本部分注释:
    B1  C1 指明新旧对象参与比较的字段名称;
    2-3 行  使用 for 循环  对比新旧对象记录并从 employee 中删除新旧对象中相同的记录
    A5 中 aa 为模拟外部传入的创建人  showInput.jsp 定义如下:

    按照如上操作即可实现部分更新

    修改前展现效果

    修改后未提交展现效果

    提交更新后展现效果

    通过上述效果可以看到仅将修改行的姓名更换为了创建人编号

  • 相关阅读:
    贪婪大陆
    色板游戏
    11/29 NOIP 模拟赛
    USACO4.4 重叠的图像 Frame Up
    CSP2020 题解
    NOIP前板子复习
    关于我
    【洛谷】【搜索+字符串】
    【洛谷】【动态规划/01背包】P2925 [USACO08DEC]干草出售Hay For Sale
    【洛谷】【二分查找】P1102 A−B数对
  • 原文地址:https://www.cnblogs.com/IBelieve002/p/12082656.html
Copyright © 2011-2022 走看看