起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3802|回复: 9

[结贴] 关于怎么在待办任务中加入自定义列

[复制链接]

58

主题

193

帖子

358

积分

中级会员

Rank: 3Rank: 3

积分
358
QQ
发表于 2018-5-21 10:27:58 | 显示全部楼层 |阅读模式
我需要在待办任务列表里加入一些字段,我就想把值写到SESFILED1里,然后我在流程的启动规则里这么配的,但是在代办理这一列的值一直为空,请教怎么解决


待办自定义标题列.png

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35918
发表于 2018-5-21 11:46:19 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

58

主题

193

帖子

358

积分

中级会员

Rank: 3Rank: 3

积分
358
QQ
 楼主| 发表于 2018-5-21 14:15:05 | 显示全部楼层
本帖最后由 eqwfrfsky 于 2018-5-21 14:25 编辑

这个只能实现把值放到当前流程的前一个流程环节的SESFILED1,当前流程的SESFILED1依然是空,我需要的是流转以后,把值写到下一个环节的SESFILED1里
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35918
发表于 2018-5-21 14:32:56 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

58

主题

193

帖子

358

积分

中级会员

Rank: 3Rank: 3

积分
358
QQ
 楼主| 发表于 2018-5-21 15:27:44 | 显示全部楼层
  1. public static void modifyPlanProcessBeforeAdvance() {
  2.                  Task task=ProcessUtils.getTaskInProcessContext();
  3.                  String Sql="select T_JH_DZB.* from T_JH_DZB where T_JH_DZB.fID='"+task.getData1()+"'";
  4. //         //执行select取得数据。Table是返回的数据集
  5.          com.justep.system.data.Table table = SQL.select(Sql, null, "/projectPlanning/planTable/data", null);
  6.          Iterator<Row> rows = table.iterator();
  7.          Row row;
  8.          row = rows.next();
  9.          ProcessControl flowControl = (ProcessControl) ProcessUtils.getProcessContext().getProcessControl();
  10.          String sESField01 = row.getString("FLSXMMC");// 获取信息
  11.          for (ProcessControlItem to : flowControl.getFlowTos()) {// 获取环节相应的流转信息
  12.             to.getTask().setRelationValue("sESField01",sESField01 ); // 获取附言信息,并把附言信息保存到任务的扩展字段sESField01中
  13.          }
  14.         }
复制代码

以上是我的代码,现在businessActivity1以后的环节数据都能在待办里正常加载,但是在mainActivity启动流程弹出流转确认对话框,点取消,流程进入businessActivity1而不是businessActivity2,这个时候代办理关于businessActivity1的待办信息里还是没有这条数据
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35918
发表于 2018-5-21 16:00:19 | 显示全部楼层
businessActivity1是启动的时候就进入的,在流转事件中操作肯定不行
在启动后事件中获取打开task,通过ksql或者sql操作数据库
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

58

主题

193

帖子

358

积分

中级会员

Rank: 3Rank: 3

积分
358
QQ
 楼主| 发表于 2018-5-21 16:10:01 | 显示全部楼层
ProcessAfterStart()里写?Task task=ProcessUtils.getTaskInProcessContext();报错为空
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35918
发表于 2018-5-21 16:30:48 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

58

主题

193

帖子

358

积分

中级会员

Rank: 3Rank: 3

积分
358
QQ
 楼主| 发表于 2018-5-21 17:45:05 | 显示全部楼层
  1. public static void modifyPlanProcessAfterStart() {
  2.                 List<Map<String, String>> list = (List<Map<String, String>>)ContextHelper.getActionContext().getActionResult();
  3.                 for(Map<String, String> map: list){
  4.                        // System.out.println(map.get("task")+"输入生成的任务ID");
  5.                 }
  6.                 String SID=list.get(0).get("task");
  7.                 //取SID
  8.                 String Sql="select SA_TASK.* from SA_TASK where SA_TASK.sID='"+SID+"'";
  9.                 com.justep.system.data.Table table = SQL.select(Sql, null, "/projectPlanning/planTable/data", null);
  10.                 Iterator<Row> rows = table.iterator();
  11.                 Row row;
  12.                 row = rows.next();
  13.                 //用SID取SDATA1过滤出项目信息
  14.                 String Sql1="select T_JH_DZB.* from T_JH_DZB where T_JH_DZB.fID='"+row.getString("SDATA1")+"'";
  15.                 System.out.println(Sql1);
  16.                 com.justep.system.data.Table table1 = SQL.select(Sql1, null, "/projectPlanning/planTable/data", null);
  17.                 Iterator<Row> rows1 = table1.iterator();
  18.                 Row row1;
  19.                 row1 = rows1.next();
  20.                 //用SID和过滤出的项目信息更新SA_TASK表
  21.                 String update="update SA_TASK set sESField01='"+row1.getString("FLSXMMC")+"',sESField02='"+row1.getString("FLSXMBH")+"',sESField03='"+row1.getString("FLSYSLX")+"',sESField04='"+row1.getString("FLSXMXZ")+"',sESField05='"+row1.getString("FLSXMCDDW")+"',sESField06='"+row1.getString("FLSXMFZR")+"'  where SA_TASK.sID='" + SID+"'";
  22.                 SQL.select(update, null, "/projectPlanning/planTable/data", null);
  23.         }
复制代码

报错
Caused by: com.justep.exception.BusinessException: 编码: JUSTEP050006; 提示: 参数"name,type"不允许为空
        at com.justep.exception.BusinessException.create(Unknown Source)
        at com.justep.util.Utils.check(Unknown Source)
        at com.justep.system.data.impl.TableImpl.addColumns(Unknown Source)
        at com.justep.system.data.impl.TableImpl.createTable(Unknown Source)
        at com.justep.system.data.impl.TableUtilsImplement.createTable(Unknown Source)
        at com.justep.system.data.TableUtils.createTable(Unknown Source)
回复 支持 反对

使用道具 举报

58

主题

193

帖子

358

积分

中级会员

Rank: 3Rank: 3

积分
358
QQ
 楼主| 发表于 2018-5-21 17:56:45 | 显示全部楼层
已解决,谢谢,请结帖
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-4-27 10:34 , Processed in 0.075193 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表