1 14 package org.compiere.model; 15 16 import java.util.*; 17 import java.sql.*; 18 import java.awt.Point ; 19 20 import org.compiere.util.*; 21 22 28 public class MWFNode extends X_AD_WF_Node 29 { 30 35 public MWFNode(Properties ctx, ResultSet rs) 36 { 37 super (ctx, rs); 38 Log.trace(Log.l5_DData, "MWFNode " + getAD_WF_Node_ID()); 39 loadNext(); 40 loadTrl(); 41 } 43 44 private ArrayList m_next = new ArrayList(); 45 46 private String m_name_trl = null; 47 48 private String m_description_trl = null; 49 50 private String m_help_trl = null; 51 52 private boolean m_translated = false; 53 54 57 private void loadNext() 58 { 59 String sql = "SELECT * FROM AD_WF_NodeNext WHERE AD_WF_Node_ID=? AND IsActive='Y'"; 60 try 61 { 62 PreparedStatement pstmt = DB.prepareStatement(sql); 63 pstmt.setInt(1, getID()); 64 ResultSet rs = pstmt.executeQuery(); 65 while (rs.next()) 66 m_next.add(new MWFNodeNext (getCtx(), rs)); 67 rs.close(); 68 pstmt.close(); 69 } 70 catch (SQLException e) 71 { 72 Log.error("M_WorkFlow.loadNext", e); 73 } 74 Log.trace(Log.l6_Database, "MWFNode.loadNext #" + m_next.size()); 75 } 77 80 private void loadTrl() 81 { 82 if (Env.isBaseLanguage(getCtx(), "AD_Workflow") || getID() == 0) 83 return; 84 String sql = "SELECT Name, Description, Help FROM AD_WF_Node_Trl WHERE AD_WF_Node_ID=? AND AD_Language=?"; 85 try 86 { 87 PreparedStatement pstmt = DB.prepareStatement(sql); 88 pstmt.setInt(1, getID()); 89 pstmt.setString(2, Env.getAD_Language(getCtx())); 90 ResultSet rs = pstmt.executeQuery(); 91 if (rs.next()) 92 { 93 m_name_trl = rs.getString(1); 94 m_description_trl = rs.getString(2); 95 m_help_trl = rs.getString(3); 96 m_translated = true; 97 } 98 rs.close(); 99 pstmt.close(); 100 } 101 catch (SQLException e) 102 { 103 Log.error("MWFNode.loadTrl", e); 104 } 105 Log.trace(Log.l6_Database, "MWFNode.loadTrl " + m_translated); 106 } 108 112 public int getNextNodeCount() 113 { 114 return m_next.size(); 115 } 117 121 public MWFNodeNext[] getNextNodes() 122 { 123 MWFNodeNext[] retValue = new MWFNodeNext [m_next.size()]; 124 m_next.toArray(retValue); 125 return retValue; 126 } 128 129 130 135 public String getName(boolean translated) 136 { 137 if (translated && m_translated) 138 return m_name_trl; 139 return getName(); 140 } 142 147 public String getDescription(boolean translated) 148 { 149 if (translated && m_translated) 150 return m_description_trl; 151 return getDescription(); 152 } 154 159 public String getHelp(boolean translated) 160 { 161 if (translated && m_translated) 162 return m_help_trl; 163 return getHelp(); 164 } 166 170 public void setPosition (Point position) 171 { 172 setXposition(position.x); 173 setYposition(position.y); 174 } 176 180 public Point getPosition () 181 { 182 return new Point (getXposition(), getYposition()); 183 } 185 } | Popular Tags |