1 14 package org.compiere.model; 15 16 import java.sql.*; 17 import java.util.*; 18 19 import org.compiere.util.*; 20 21 27 public class MColumnAccess extends X_AD_Column_Access 28 { 29 34 public MColumnAccess(Properties ctx, ResultSet rs) 35 { 36 super(ctx, rs); 37 } 39 43 public String toString() 44 { 45 StringBuffer sb = new StringBuffer ("MColumnAccess["); 46 sb.append("AD_Role_ID=").append(getAD_Role_ID()) 47 .append(",AD_Table_ID=").append(getAD_Table_ID()) 48 .append(",AD_Column_ID=").append(getAD_Column_ID()) 49 .append(",Exclude=").append(isExclude()); 50 sb.append("]"); 51 return sb.toString(); 52 } 54 58 public String toStringX (Properties ctx) 59 { 60 String in = Msg.getMsg(ctx, "Include"); 61 String ex = Msg.getMsg(ctx, "Exclude"); 62 StringBuffer sb = new StringBuffer (); 63 sb.append(Msg.translate(ctx, "AD_Table_ID")) 64 .append("=").append(getTableName(ctx)).append(", ") 65 .append(Msg.translate(ctx, "AD_Column_ID")) 66 .append("=").append(getColumnName(ctx)) 67 .append(" (").append(Msg.translate(ctx, "IsReadOnly")).append("=").append(isReadOnly()) 68 .append(") - ").append(isExclude() ? ex : in); 69 return sb.toString(); 70 } 72 73 private String m_tableName; 74 75 private String m_columnName; 76 77 83 public String getTableName (Properties ctx) 84 { 85 if (m_tableName == null) 86 getColumnName(ctx); 87 return m_tableName; 88 } 90 95 public String getColumnName (Properties ctx) 96 { 97 if (m_columnName == null) 98 { 99 String sql = "SELECT t.TableName,c.ColumnName, t.AD_Table_ID " 100 + "FROM AD_Table t INNER JOIN AD_Column c ON (t.AD_Table_ID=c.AD_Table_ID) " 101 + "WHERE AD_Column_ID=?"; 102 PreparedStatement pstmt = null; 103 try 104 { 105 pstmt = DB.prepareCall(sql); 106 pstmt.setInt(1, getAD_Column_ID()); 107 ResultSet rs = pstmt.executeQuery(); 108 if (rs.next()) 109 { 110 m_tableName = rs.getString(1); 111 m_columnName = rs.getString(2); 112 if (rs.getInt(3) != getAD_Table_ID()) 113 log.error("getColumnName - AD_Table_ID inconsistent - Access=" + getAD_Table_ID() + " - Table=" + rs.getInt(3)); 114 } 115 rs.close(); 116 pstmt.close(); 117 pstmt = null; 118 } 119 catch (Exception e) 120 { 121 log.error("getColumnName", e); 122 } 123 try 124 { 125 if (pstmt != null) 126 pstmt.close(); 127 pstmt = null; 128 } 129 catch (Exception e) 130 { 131 pstmt = null; 132 } 133 String realName = Msg.translate(ctx, m_tableName + "_ID"); 135 if (!realName.equals(m_tableName + "_ID")) 136 m_tableName = realName; 137 m_columnName = Msg.translate(ctx, m_columnName); 138 } 139 return m_columnName; 140 } 142 }
| Popular Tags
|