泛微E9 担当只能查看与自己相关的明细表数据,无关数据隐藏不显示

功能背景

我们在完成一些大型的任务时,会涉及到多个担当来分工,每个担当都有自己的工作范围,但是在担当确认自己的工作时,其他担当的工作内容需要保密。

实例

  1. 申请人在填报时,需要填写类型、项目名、担当,预计金额、预计完成日期是担当确认的。在这里插入图片描述
  2. 下图是担当1和担当2填写确认信息的画面,只需要确认自己的数据,无权查看其他担当的信息。
    在这里插入图片描述
    在这里插入图片描述
    3.所有担当确认完成后,申请人查看到的数据画面(预计金额和预计完成时间应该是只读的,但是忘了设置字段的属性了)。
    在这里插入图片描述

代码块(担当节点)

控制明细数据行的显示及隐藏

:只是界面效果隐藏,序号不会变化,即被隐藏行的前后行序号会断层不连续

WfForm.controlDetailRowDisplay(“detail_1”, “3,5”, true); //明细1行标为3,5的隐藏不显示
WfForm.controlDetailRowDisplay(“detail_1”, “all”, false); //明细1所有行不隐藏都显示

获取当前打开请求的基础信息

//获取当前操作人员
WfForm.getGlobalStore().commonParam.currentUserid
//获取当前操作人员名称
WfForm.getGlobalStore().commonParam.lastname
//获取当前节点名称
WfForm.getGlobalStore().commonParam.nodename

<script>
  var ddField = WfForm.convertFieldNameToId("dd","detail_1");
  var yjjeField = WfForm.convertFieldNameToId("yjje","detail_1");
  var yjwcsjField = WfForm.convertFieldNameToId("yjwcsj","detail_1");
  
  function Init(){
    var currentUser = WfForm.getGlobalStore().commonParam.currentUserid;    
    var detailCount = WfForm.getDetailRowCount("detail_1");
    for(let i = 0; i<detailCount ; i++){
      var ddValue = WfForm.getFieldValue(ddField+"_"+i);
      //如果明细表的担当不是当前用户,该行隐藏并且修改该行字段的属性
      //如果字段属性是必填,只隐藏该行但是不修改属性,提交的时候会报错,提示有隐藏的字段未填写数据
      if(ddValue != currentUser){   
        WfForm.controlDetailRowDisplay("detail_1", i.toString(), true); 
        WfForm.changeFieldAttr(yjjeField+"_"+i,2); 
        WfForm.changeFieldAttr(yjwcsjField+"_"+i,2); 
      }
    }
  }
  
  jQuery(document).ready(function(){
    debugger;    
    Init();
  })
</script>
  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值