设计变更流程卡死查询方法

1. 导出设计变更表单
查看填写了“需要”和“是”字眼的文本框


 
2.打开进程管理器
显示流程卡死的地方,确定哪里出错导致没法执行下一步


 
3.打开设计变更流程图,里面可以查看有条件的代码
 
“执行测试部评估”执行条件:测试部测试填写“需要”
“知识产权部评估”执行条件:知识产权审核填写“需要”
“PMC评估”执行条件:旧品库存调查、一次性成本调查或单机成本调查,任一条件需填写“需要”
“技术部评估”执行条件:是否修模填写“需要”
“ROHS工程师评估”执行条件:Rohs及有毒有害物质审核需填写“需要”
“认证工程师评估”执行条件:认证审核需填写“是”
“售后工程师评估”执行条件:售后审核需填写“是”
当以上都填写不需要时,则执行下面这一条路
 

4.查看LOG文件
BackgroundMethodServer.log文件中查询01128为设计变更号
LOG文件会显示有哪些文本框符合条件
 

5.查看的JSP页面如下
此JSP页面显示了流程图里面的文档框ID值
 

6.JAVA代码如下:
 

7.查询所有符合条件的节点,再结合流程图,逐一进行排查

select attValue,attKey ,changeRequestId from dbo.PntDesignECDataDetail detail,
dbo.PntDesignECData data where detail.ecDataId=data.ecDataId
and data.changeRequestId like '%92833931%'  -- 92833931代表OID号
and (attValue=N'是' or attValue=N'需要')


 

根据查询出来的attkey值和JSP页面中的文本框ID值,可以知道是“先行确认”文本框填写了“需要”,而流程图又没作出此判断,这就是导致流程卡死的原因。

2.问题产生的原因:

“先行确认”文本框填写了“需要”,而流程图又没作出此判断,导致流程卡死。

3.解决方案:

后面节点已经有对“先行确认”进行判断,在不修改流程图的情况下,建议优化二次开发的代码,在此处节点排除“先行确认”条件的数据。

head_FirstConfirmCombo为 “先行确认”文本框的textbox ID值

Windchill 设计变更流程卡死查询方法的更多相关文章

  1. tp5 中 model 的查询方法

    实例化模型后调用查询方法,可以写任何想要的查询(推荐) public function select(){ $user = model('User'); $data = $user -> ) - ...

  2. 【Java EE 学习 17 下】【数据库导出到Excel】【多条件查询方法】

    一.导出到Excel 1.使用DatabaseMetaData分析数据库的数据结构和相关信息. (1)测试得到所有数据库名: private static DataSource ds=DataSour ...

  3. <五>JDBC_利用反射及JDBC元数据编写通用的查询方法

    此类针对javaBean类写了一个通用的查询方法,List<javaBean> 通用查询更新中...:通过学习,深刻体会到学会反射就等于掌握了java基础的半壁江山! 一.使用JDBC驱动 ...

  4. Thinkphp回顾之(四)查询方法深入学习

    本次讲的查询方法主要有:表达式查询,模糊查询,between语句,in语句,区间查询,统计数据,普通方式查询,但大多数都只是引入数组而已,明白了第一个,其他的也就差不多全明白了,唯一要注意的是在后台中 ...

  5. MyBaits一对一的查询方法

    MyBaits一对一的查询方法 一:表数据与表结构 CREATE TABLE teacher( t_id INT PRIMARY KEY AUTO_INCREMENT, t_name ) ); CRE ...

  6. Asp.net MVC的Model Binder工作流程以及扩展方法(2) - Binder Attribute

    上篇文章中分析了Custom Binder的弊端: 由于Custom Binder是和具体的类型相关,比如指定类型A由我们的Custom Binder解析,那么导致系统运行中的所有Action的访问参 ...

  7. php标签云制作——数据表的结构和查询方法

    1.数据表的结构: 创建建两张数据表,结构如下: 标签tag表: 文章mood表: 其中mood表中的tag字段,以tag表的id字段+“,”+tag表的id字段, 2.查询方法: 例如:如果需要某篇 ...

  8. JAVA 模糊查询方法

    当我们需要开发一个方法用来查询数据库的时候,往往会遇到这样一个问题:就是不知道用户到底会输入什么条件,那么怎么样处理sql语句才能让我们开发的方法不管接受到什么样的条件都可以正常工作呢?这时where ...

  9. 使用ResultSet,写了一个通用的查询方法

    此方法很烂,以后优化 /** * 通用的查询方法:SELECT */ @SuppressWarnings({ "unchecked", "rawtypes" } ...

随机推荐

  1. 开源项目Universal Image Loader for Android 说明文档 (1) 简介

     When developing applications for Android, one often facesthe problem of displaying some graphical ...

  2. Helix Server 支持的文件格式

    比如,对于WMV格式的文件,访问路径可以是:mms://192.168.1.1/mov/music.wmv 对于rm格式的文件rtsp://192.168.1.1/mov/123.rm 但,比如对于格 ...

  3. C 时间函数总结

    头文件 time.h 处理器时间函数 clock_t clock(void) 处理器的处理时间,如可以在 main开始的地方 使用这个函数,然后再 完毕后 调用这个函数 并 减去 之前的返回值,为了 ...

  4. INIT: vesion 2.88 booting

    /***************************************************************************** * INIT: vesion 2.88 b ...

  5. (九)jsMath

    1.Math对象 作用:用于执行数学任务,把Math作为对象就可以调用其方法和属性. eg:    typeof Math); 2.Math属性     PI:圆周率(约等于 3.1415926); ...

  6. Linux paste 命令

    Linux paste命令用于合并文件的列. paste指令会把每个文件以列对列的方式,一列列地加以合并. 语法 paste [-s][-d <间隔字符>][--help][--versi ...

  7. ACM ICPC 2018 青岛赛区 部分金牌题题解(K,L,I,G)

     目录: K Airdrop I Soldier Game L Sub-cycle Graph G Repair the Artwork ———————————————————— ps:楼主脑残有点严 ...

  8. linux之管道

    1. 进程间通信概述 进程是一个独立的资源分配单元,不同进程之间的资源是独立的,没有关联,不能在一个进程中直接访问另一个进程的资源.进程不是孤立的,不同的进程需要进行信息的交互和状态的传递等,因此需要 ...

  9. python之random库

    random库是用于产生并运用随机数的标准库 1. random库函数 (1)random.seed(a) 设置随机种子数,可以是浮点数或整数,如果不设置的话,则random库默认以系统时间产生当作随 ...

  10. selenium - css 定位

    前言: CSS(Cascading Style Sheets)是一种语言,它被用来描述 HTML 和 XML 文档的表现. CSS 使用选择器来为页面元素绑定属性.这些选择器可以被 selenium ...