ireport報表制作, 通過節點、產品類型來判斷,當該節點審核通過之後,報表相對應的字段出顯示審核意見及簽名
阿新 • • 發佈:2017-12-18
not body node 代碼 person images bst nature sysdate
1、代碼 (與本內容相關的代碼:7~36)
1 select so.sale_order_no as sale_order_no, 2 (SELECT company_name from CUSTOMER where company_code = so.CUSTOMER_NO) as CUSTOMER_NAME, 3 so.out_order_no as out_order_no, 4 so.required_date, 5 (select sysdate from dual) as system_date, 6 so.quality_note as quality_note,7 (select ‘同意‘ from dual WHERE substr(2,1,1) < substr(wf_node_code,1,1) AND so.pro_type = ‘01‘) as audit_opinion1, -- substr(2,1,1),從2開始,而不是從1開始;是因為審核到2節點了,但,還沒審核通過。(以下7~36行代碼 相同) 8 (select ‘同意‘ from dual WHERE SUBSTR(3,1,1) < SUBSTR(wf_node_code,1,1) AND so.pro_type = ‘01‘) as audit_opinion2,9 (select ‘同意‘ from dual WHERE SUBSTR(4,1,1) < SUBSTR(wf_node_code,1,1) AND so.pro_type = ‘01‘) as audit_opinion3, 10 (select ‘同意‘ from dual WHERE SUBSTR(5,1,1) < SUBSTR(wf_node_code,1,1) AND so.pro_type = ‘01‘) as audit_opinion4, 11 (select ‘同意‘ from dual WHERE SUBSTR(6,1,1) < SUBSTR(wf_node_code,1,1) AND so.pro_type = ‘01‘) as audit_opinion5, 12 (select ‘同意‘ from dual WHERE SUBSTR(7,1,1) < SUBSTR(wf_node_code,1,1) AND so.pro_type = ‘01‘) as audit_opinion6, 13 (SELECT p.person_name FROM personnel p WHERE p.person_code = 14 (SELECT distinct au.person_code FROM APPLICATION_USERS au WHERE au.username = 15 (SELECT distinct w.role_code FROM Work_Flow_Role w WHERE w.wf_code = ‘000180‘ 16 AND SUBSTR(2,1,1) < SUBSTR(so.wf_node_code,1,1) AND w.node_code = DECODE(pro_type,‘01‘,22,‘03‘,2,‘04‘,23) AND w.role_code <> ‘test2‘))) as signature1, 17 (SELECT p.person_name FROM personnel p WHERE p.person_code = 18 (SELECT distinct au.person_code FROM APPLICATION_USERS au WHERE au.username = 19 (SELECT distinct w.role_code FROM Work_Flow_Role w WHERE w.wf_code = ‘000180‘ 20 AND SUBSTR(3,1,1) < SUBSTR(so.wf_node_code,1,1) AND w.node_code = DECODE(pro_type,‘01‘,3) AND w.role_code <> ‘test2‘))) as signature2, 21 (SELECT p.person_name FROM personnel p WHERE p.person_code = 22 (SELECT distinct au.person_code FROM APPLICATION_USERS au WHERE au.username = 23 (SELECT distinct w.role_code FROM Work_Flow_Role w WHERE w.wf_code = ‘000180‘ 24 AND SUBSTR(4,1,1) < SUBSTR(so.wf_node_code,1,1) AND w.node_code = DECODE(pro_type,‘01‘,41) AND w.role_code <> ‘test2‘))) as signature3, 25 (SELECT p.person_name FROM personnel p WHERE p.person_code = 26 (SELECT distinct au.person_code FROM APPLICATION_USERS au WHERE au.username = 27 (SELECT distinct w.role_code FROM Work_Flow_Role w WHERE w.wf_code = ‘000180‘ 28 AND SUBSTR(5,1,1) < SUBSTR(so.wf_node_code,1,1) AND w.node_code = DECODE(pro_type,‘01‘,5) AND w.role_code <> ‘test2‘))) as signature4, 29 (SELECT p.person_name FROM personnel p WHERE p.person_code = 30 (SELECT distinct au.person_code FROM APPLICATION_USERS au WHERE au.username = 31 (SELECT distinct w.role_code FROM Work_Flow_Role w WHERE w.wf_code = ‘000180‘ 32 AND SUBSTR(6,1,1) < SUBSTR(so.wf_node_code,1,1) AND w.node_code = DECODE(pro_type,‘01‘,6) AND w.role_code <> ‘test2‘))) as signature5, 33 (SELECT p.person_name FROM personnel p WHERE p.person_code = 34 (SELECT distinct au.person_code FROM APPLICATION_USERS au WHERE au.username = 35 (SELECT distinct w.role_code FROM Work_Flow_Role w WHERE w.wf_code = ‘000180‘ 36 AND SUBSTR(7,1,1) < SUBSTR(so.wf_node_code,1,1) AND w.node_code = DECODE(pro_type,‘01‘,7) AND w.role_code <> ‘test2‘))) as signature6 37 38 from sale_order so 39 where so.sale_order_no = $P{P_SALE_ORDER_NO} -- $P{P_SALE_ORDER_NO} :需要傳入的參數(單號)
2、圖示
最終效果圖
小結:只要是對應的部門審核通過了,那麽“審核意見”和“簽名/時間”這兩欄 要同時顯示;沒有審核通過的部門,都留空白。
ireport報表制作, 通過節點、產品類型來判斷,當該節點審核通過之後,報表相對應的字段出顯示審核意見及簽名