Version without my other customizations - sorry
This commit is contained in:
parent
ae24088ba2
commit
9714c3c5c5
|
@ -132,8 +132,8 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
|
|
||||||
/** Logger */
|
/** Logger */
|
||||||
protected CLogger log = CLogger.getCLogger(getClass());
|
protected CLogger log = CLogger.getCLogger(getClass());
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Tab loader for Tabs > 0
|
* Tab loader for Tabs > 0
|
||||||
*/
|
*/
|
||||||
|
@ -285,39 +285,39 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
for (int i = 0; i < list.size(); i++)
|
for (int i = 0; i < list.size(); i++)
|
||||||
m_depOnField.put(list.get(i), field); // ColumnName, Field
|
m_depOnField.put(list.get(i), field); // ColumnName, Field
|
||||||
// Add fields all fields are dependent on
|
// Add fields all fields are dependent on
|
||||||
if (columnName.equals("IsActive")
|
if (columnName.equals("IsActive")
|
||||||
|| columnName.equals("Processed")
|
|| columnName.equals("Processed")
|
||||||
|| columnName.equals("Processing"))
|
|| columnName.equals("Processing"))
|
||||||
m_depOnField.put(columnName, null);
|
m_depOnField.put(columnName, null);
|
||||||
}
|
}
|
||||||
} // for all fields
|
} // for all fields
|
||||||
|
|
||||||
// Add Standard Fields
|
// Add Standard Fields
|
||||||
if (m_mTable.getField("Created") == null)
|
if (m_mTable.getField("Created") == null)
|
||||||
{
|
{
|
||||||
GridField created = new GridField (GridFieldVO.createStdField(m_vo.ctx,
|
GridField created = new GridField (GridFieldVO.createStdField(m_vo.ctx,
|
||||||
m_vo.WindowNo, m_vo.TabNo,
|
m_vo.WindowNo, m_vo.TabNo,
|
||||||
m_vo.AD_Window_ID, m_vo.AD_Tab_ID, false, true, true));
|
m_vo.AD_Window_ID, m_vo.AD_Tab_ID, false, true, true));
|
||||||
m_mTable.addField(created);
|
m_mTable.addField(created);
|
||||||
}
|
}
|
||||||
if (m_mTable.getField("CreatedBy") == null)
|
if (m_mTable.getField("CreatedBy") == null)
|
||||||
{
|
{
|
||||||
GridField createdBy = new GridField (GridFieldVO.createStdField(m_vo.ctx,
|
GridField createdBy = new GridField (GridFieldVO.createStdField(m_vo.ctx,
|
||||||
m_vo.WindowNo, m_vo.TabNo,
|
m_vo.WindowNo, m_vo.TabNo,
|
||||||
m_vo.AD_Window_ID, m_vo.AD_Tab_ID, false, true, false));
|
m_vo.AD_Window_ID, m_vo.AD_Tab_ID, false, true, false));
|
||||||
m_mTable.addField(createdBy);
|
m_mTable.addField(createdBy);
|
||||||
}
|
}
|
||||||
if (m_mTable.getField("Updated") == null)
|
if (m_mTable.getField("Updated") == null)
|
||||||
{
|
{
|
||||||
GridField updated = new GridField (GridFieldVO.createStdField(m_vo.ctx,
|
GridField updated = new GridField (GridFieldVO.createStdField(m_vo.ctx,
|
||||||
m_vo.WindowNo, m_vo.TabNo,
|
m_vo.WindowNo, m_vo.TabNo,
|
||||||
m_vo.AD_Window_ID, m_vo.AD_Tab_ID, false, false, true));
|
m_vo.AD_Window_ID, m_vo.AD_Tab_ID, false, false, true));
|
||||||
m_mTable.addField(updated);
|
m_mTable.addField(updated);
|
||||||
}
|
}
|
||||||
if (m_mTable.getField("UpdatedBy") == null)
|
if (m_mTable.getField("UpdatedBy") == null)
|
||||||
{
|
{
|
||||||
GridField updatedBy = new GridField (GridFieldVO.createStdField(m_vo.ctx,
|
GridField updatedBy = new GridField (GridFieldVO.createStdField(m_vo.ctx,
|
||||||
m_vo.WindowNo, m_vo.TabNo,
|
m_vo.WindowNo, m_vo.TabNo,
|
||||||
m_vo.AD_Window_ID, m_vo.AD_Tab_ID, false, false, false));
|
m_vo.AD_Window_ID, m_vo.AD_Tab_ID, false, false, false));
|
||||||
m_mTable.addField(updatedBy);
|
m_mTable.addField(updatedBy);
|
||||||
}
|
}
|
||||||
|
@ -353,7 +353,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
{
|
{
|
||||||
return m_vo.DisplayLogic;
|
return m_vo.DisplayLogic;
|
||||||
} // getDisplayLogic
|
} // getDisplayLogic
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get TableModel.
|
* Get TableModel.
|
||||||
* <B>Do not directly communicate with the table model,
|
* <B>Do not directly communicate with the table model,
|
||||||
|
@ -378,7 +378,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
return null;
|
return null;
|
||||||
} // getIcon
|
} // getIcon
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Has this field dependents ?
|
* Has this field dependents ?
|
||||||
* @param columnName column name
|
* @param columnName column name
|
||||||
|
@ -400,7 +400,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
return m_depOnField.getValues(columnName);
|
return m_depOnField.getValues(columnName);
|
||||||
} // getDependentFields
|
} // getDependentFields
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Set Query
|
* Set Query
|
||||||
* @param query query
|
* @param query query
|
||||||
|
@ -485,8 +485,8 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
*/
|
*/
|
||||||
public void query (boolean onlyCurrentRows, int onlyCurrentDays, int maxRows)
|
public void query (boolean onlyCurrentRows, int onlyCurrentDays, int maxRows)
|
||||||
{
|
{
|
||||||
log.fine("#" + m_vo.TabNo
|
log.fine("#" + m_vo.TabNo
|
||||||
+ " - Only Current Rows=" + onlyCurrentRows
|
+ " - Only Current Rows=" + onlyCurrentRows
|
||||||
+ ", Days=" + onlyCurrentDays + ", Detail=" + isDetail());
|
+ ", Days=" + onlyCurrentDays + ", Detail=" + isDetail());
|
||||||
// is it same query?
|
// is it same query?
|
||||||
boolean refresh = m_oldQuery.equals(m_query.getWhereClause())
|
boolean refresh = m_oldQuery.equals(m_query.getWhereClause())
|
||||||
|
@ -604,7 +604,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
log.fine("Ignored(Function): " + colName);
|
log.fine("Ignored(Function): " + colName);
|
||||||
return query.getWhereClause();
|
return query.getWhereClause();
|
||||||
}
|
}
|
||||||
// OK - Query is valid
|
// OK - Query is valid
|
||||||
|
|
||||||
// Zooms to the same Window (Parents, ..)
|
// Zooms to the same Window (Parents, ..)
|
||||||
String refColName = null;
|
String refColName = null;
|
||||||
|
@ -622,8 +622,8 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
}
|
}
|
||||||
refColName = null;
|
refColName = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Simple Query.
|
// Simple Query.
|
||||||
if (getField(colName) != null)
|
if (getField(colName) != null)
|
||||||
{
|
{
|
||||||
log.fine("Field Found: " + colName);
|
log.fine("Field Found: " + colName);
|
||||||
|
@ -691,7 +691,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
log.log(Level.SEVERE, "Column=" + colName + ", Key=" + tabKeyColumn, e);
|
log.log(Level.SEVERE, "Column=" + colName + ", Key=" + tabKeyColumn, e);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Special Reference Handling
|
// Special Reference Handling
|
||||||
if (tabKeyColumn.equals("AD_Reference_ID"))
|
if (tabKeyColumn.equals("AD_Reference_ID"))
|
||||||
{
|
{
|
||||||
|
@ -700,13 +700,13 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
int AD_Reference_ID = DB.getSQLValue(null, sql, colName);
|
int AD_Reference_ID = DB.getSQLValue(null, sql, colName);
|
||||||
return "AD_Reference_ID=" + AD_Reference_ID;
|
return "AD_Reference_ID=" + AD_Reference_ID;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Causes could be functions in query
|
// Causes could be functions in query
|
||||||
// e.g. Column=UPPER(Name), Key=AD_Element_ID, Query=UPPER(AD_Element.Name) LIKE '%CUSTOMER%'
|
// e.g. Column=UPPER(Name), Key=AD_Element_ID, Query=UPPER(AD_Element.Name) LIKE '%CUSTOMER%'
|
||||||
if (tableName == null)
|
if (tableName == null)
|
||||||
{
|
{
|
||||||
log.info ("Not successfull - Column="
|
log.info ("Not successfull - Column="
|
||||||
+ colName + ", Key=" + tabKeyColumn
|
+ colName + ", Key=" + tabKeyColumn
|
||||||
+ ", Query=" + query);
|
+ ", Query=" + query);
|
||||||
return query.getWhereClause();
|
return query.getWhereClause();
|
||||||
}
|
}
|
||||||
|
@ -769,7 +769,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
setCurrentRow(row, true);
|
setCurrentRow(row, true);
|
||||||
} // dataRefresh
|
} // dataRefresh
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Uncoditionally Save data
|
* Uncoditionally Save data
|
||||||
* @param manualCmd if true, no vetoable PropertyChange will be fired for save confirmation from MTable
|
* @param manualCmd if true, no vetoable PropertyChange will be fired for save confirmation from MTable
|
||||||
|
@ -826,7 +826,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
log.fine("#" + m_vo.TabNo + "- fini");
|
log.fine("#" + m_vo.TabNo + "- fini");
|
||||||
} // dataIgnore
|
} // dataIgnore
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create (copy) new Row
|
* Create (copy) new Row
|
||||||
* and process Callouts
|
* and process Callouts
|
||||||
|
@ -882,7 +882,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
return retValue;
|
return retValue;
|
||||||
} // dataDelete
|
} // dataDelete
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get Name of Tab
|
* Get Name of Tab
|
||||||
* @return name
|
* @return name
|
||||||
|
@ -1159,14 +1159,14 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
{
|
{
|
||||||
if (m_vo.IsReadOnly)
|
if (m_vo.IsReadOnly)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
// no restrictions
|
// no restrictions
|
||||||
if (m_vo.ReadOnlyLogic == null || m_vo.ReadOnlyLogic.equals(""))
|
if (m_vo.ReadOnlyLogic == null || m_vo.ReadOnlyLogic.equals(""))
|
||||||
return m_vo.IsReadOnly;
|
return m_vo.IsReadOnly;
|
||||||
|
|
||||||
// ** dynamic content ** uses get_ValueAsString
|
// ** dynamic content ** uses get_ValueAsString
|
||||||
boolean retValue = Evaluator.evaluateLogic(this, m_vo.ReadOnlyLogic);
|
boolean retValue = Evaluator.evaluateLogic(this, m_vo.ReadOnlyLogic);
|
||||||
log.finest(m_vo.Name
|
log.finest(m_vo.Name
|
||||||
+ " (" + m_vo.ReadOnlyLogic + ") => " + retValue);
|
+ " (" + m_vo.ReadOnlyLogic + ") => " + retValue);
|
||||||
return retValue;
|
return retValue;
|
||||||
} // isReadOnly
|
} // isReadOnly
|
||||||
|
@ -1185,7 +1185,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
} // isAlwaysUpdateField
|
} // isAlwaysUpdateField
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Can we Insert Records?
|
* Can we Insert Records?
|
||||||
* @return true not read only and allowed
|
* @return true not read only and allowed
|
||||||
|
@ -1205,7 +1205,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
public boolean isDisplayed ()
|
public boolean isDisplayed ()
|
||||||
{
|
{
|
||||||
// no restrictions
|
// no restrictions
|
||||||
String dl = m_vo.DisplayLogic;
|
String dl = m_vo.DisplayLogic;
|
||||||
if (dl == null || dl.equals(""))
|
if (dl == null || dl.equals(""))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
@ -1217,7 +1217,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
log.config(m_vo.Name + " (" + dl + ") => " + retValue);
|
log.config(m_vo.Name + " (" + dl + ") => " + retValue);
|
||||||
return retValue;
|
return retValue;
|
||||||
} // isDisplayed
|
} // isDisplayed
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get Variable Value (Evaluatee)
|
* Get Variable Value (Evaluatee)
|
||||||
* @param variableName name
|
* @param variableName name
|
||||||
|
@ -1338,7 +1338,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
return m_vo.AD_ColumnSortYesNo_ID;
|
return m_vo.AD_ColumnSortYesNo_ID;
|
||||||
} // getAD_ColumnSortYesNo_ID
|
} // getAD_ColumnSortYesNo_ID
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Get extended Where Clause (parent link)
|
* Get extended Where Clause (parent link)
|
||||||
* @return parent link
|
* @return parent link
|
||||||
|
@ -1373,7 +1373,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
}
|
}
|
||||||
if (m_vo.OrderByClause.length() > 0)
|
if (m_vo.OrderByClause.length() > 0)
|
||||||
return m_vo.OrderByClause;
|
return m_vo.OrderByClause;
|
||||||
|
|
||||||
// Third Prio: onlyCurrentRows
|
// Third Prio: onlyCurrentRows
|
||||||
m_vo.OrderByClause = "Created";
|
m_vo.OrderByClause = "Created";
|
||||||
if (onlyCurrentRows && !isDetail()) // first tab only
|
if (onlyCurrentRows && !isDetail()) // first tab only
|
||||||
|
@ -1381,7 +1381,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
return m_vo.OrderByClause;
|
return m_vo.OrderByClause;
|
||||||
} // getOrderByClause
|
} // getOrderByClause
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Transaction support.
|
* Transaction support.
|
||||||
* Depending on Table returns transaction info
|
* Depending on Table returns transaction info
|
||||||
|
@ -1598,7 +1598,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
return " ";
|
return " ";
|
||||||
} // S_TimeExpense
|
} // S_TimeExpense
|
||||||
|
|
||||||
|
|
||||||
// Default - No Trx Info
|
// Default - No Trx Info
|
||||||
return null;
|
return null;
|
||||||
} // getTrxInfo
|
} // getTrxInfo
|
||||||
|
@ -1638,7 +1638,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
} // loadOrderInfo
|
} // loadOrderInfo
|
||||||
} // loadDependentInfo
|
} // loadDependentInfo
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Load Attachments for this table
|
* Load Attachments for this table
|
||||||
*/
|
*/
|
||||||
|
@ -1796,7 +1796,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Load Locks for Table and User
|
* Load Locks for Table and User
|
||||||
*/
|
*/
|
||||||
public void loadLocks()
|
public void loadLocks()
|
||||||
{
|
{
|
||||||
int AD_User_ID = Env.getContextAsInt(Env.getCtx(), "#AD_User_ID");
|
int AD_User_ID = Env.getContextAsInt(Env.getCtx(), "#AD_User_ID");
|
||||||
|
@ -1806,7 +1806,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
|
|
||||||
String sql = "SELECT Record_ID "
|
String sql = "SELECT Record_ID "
|
||||||
+ "FROM AD_Private_Access "
|
+ "FROM AD_Private_Access "
|
||||||
+ "WHERE AD_User_ID=? AND AD_Table_ID=? AND IsActive='Y' "
|
+ "WHERE AD_User_ID=? AND AD_Table_ID=? AND IsActive='Y' "
|
||||||
+ "ORDER BY Record_ID";
|
+ "ORDER BY Record_ID";
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -1832,7 +1832,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
}
|
}
|
||||||
log.fine("#" + m_Lock.size());
|
log.fine("#" + m_Lock.size());
|
||||||
} // loadLooks
|
} // loadLooks
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Record Is Locked
|
* Record Is Locked
|
||||||
* @return true if locked
|
* @return true if locked
|
||||||
|
@ -1849,7 +1849,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
Integer key = new Integer(m_mTable.getKeyID (m_currentRow));
|
Integer key = new Integer(m_mTable.getKeyID (m_currentRow));
|
||||||
return m_Lock.contains(key);
|
return m_Lock.contains(key);
|
||||||
} // isLocked
|
} // isLocked
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Lock Record
|
* Lock Record
|
||||||
* @param ctx context
|
* @param ctx context
|
||||||
|
@ -1859,7 +1859,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
public void lock (Properties ctx, int Record_ID, boolean lock)
|
public void lock (Properties ctx, int Record_ID, boolean lock)
|
||||||
{
|
{
|
||||||
int AD_User_ID = Env.getContextAsInt(ctx, "#AD_User_ID");
|
int AD_User_ID = Env.getContextAsInt(ctx, "#AD_User_ID");
|
||||||
log.fine("Lock=" + lock + ", AD_User_ID=" + AD_User_ID
|
log.fine("Lock=" + lock + ", AD_User_ID=" + AD_User_ID
|
||||||
+ ", AD_Table_ID=" + m_vo.AD_Table_ID + ", Record_ID=" + Record_ID);
|
+ ", AD_Table_ID=" + m_vo.AD_Table_ID + ", Record_ID=" + Record_ID);
|
||||||
MPrivateAccess access = MPrivateAccess.get (ctx, AD_User_ID, m_vo.AD_Table_ID, Record_ID);
|
MPrivateAccess access = MPrivateAccess.get (ctx, AD_User_ID, m_vo.AD_Table_ID, Record_ID);
|
||||||
if (access == null)
|
if (access == null)
|
||||||
|
@ -1870,7 +1870,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
loadLocks();
|
loadLocks();
|
||||||
} // lock
|
} // lock
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Data Status Listener from MTable.
|
* Data Status Listener from MTable.
|
||||||
* - get raw info and add current row information
|
* - get raw info and add current row information
|
||||||
|
@ -1943,7 +1943,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
}
|
}
|
||||||
e.setInserting(m_mTable.isInserting());
|
e.setInserting(m_mTable.isInserting());
|
||||||
// Distribute/fire it
|
// Distribute/fire it
|
||||||
for (int i = 0; i < listeners.length; i++)
|
for (int i = 0; i < listeners.length; i++)
|
||||||
listeners[i].dataStatusChanged(e);
|
listeners[i].dataStatusChanged(e);
|
||||||
// log.fine("fini - " + e.toString());
|
// log.fine("fini - " + e.toString());
|
||||||
} // fireDataStatusChanged
|
} // fireDataStatusChanged
|
||||||
|
@ -2121,8 +2121,8 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
|
|
||||||
// inform APanel/.. -> dataStatus with row updated
|
// inform APanel/.. -> dataStatus with row updated
|
||||||
if (m_DataStatusEvent == null)
|
if (m_DataStatusEvent == null)
|
||||||
m_DataStatusEvent = new DataStatusEvent(this, getRowCount(),
|
m_DataStatusEvent = new DataStatusEvent(this, getRowCount(),
|
||||||
m_mTable.isInserting(), // changed
|
m_mTable.isInserting(), // changed
|
||||||
Env.isAutoCommit(Env.getCtx(), m_vo.WindowNo), m_mTable.isInserting());
|
Env.isAutoCommit(Env.getCtx(), m_vo.WindowNo), m_mTable.isInserting());
|
||||||
//
|
//
|
||||||
m_DataStatusEvent.setCurrentRow(m_currentRow);
|
m_DataStatusEvent.setCurrentRow(m_currentRow);
|
||||||
|
@ -2130,28 +2130,19 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
if (status == null || status.length() == 0)
|
if (status == null || status.length() == 0)
|
||||||
m_DataStatusEvent.setInfo("NavigateOrUpdate", null, false,false);
|
m_DataStatusEvent.setInfo("NavigateOrUpdate", null, false,false);
|
||||||
fireDataStatusChanged(m_DataStatusEvent);
|
fireDataStatusChanged(m_DataStatusEvent);
|
||||||
|
|
||||||
// CHANGED: Vergleich von fpa und selected values BPartnerSelection
|
|
||||||
if (getName().equalsIgnoreCase("BPartner Selection")) {
|
|
||||||
BPartnerSelection.compareWithFpaValues(this, null);
|
|
||||||
return m_currentRow;
|
|
||||||
}// ende changed
|
|
||||||
// CHANGED: Vergleich von actual und customer values in OrderLine
|
|
||||||
else if (getName().equalsIgnoreCase("Order Line")) {
|
|
||||||
CustomValueComparison.compare(this);
|
|
||||||
return m_currentRow;
|
|
||||||
}// ende changed
|
|
||||||
// CHANGED: checks the total order weight
|
|
||||||
else if (getName().equalsIgnoreCase("Purchase Order")) {
|
|
||||||
//besser mit ID - getAD_Tab_ID()
|
|
||||||
OrderWeightCheck.compare(this);
|
|
||||||
return m_currentRow;
|
|
||||||
}// ende changed
|
|
||||||
|
|
||||||
return m_currentRow;
|
return m_currentRow;
|
||||||
} // setCurrentRow
|
} // setCurrentRow
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set current row - used for deleteSelection
|
||||||
|
* @return current row
|
||||||
|
*/
|
||||||
|
public void setCurrentRow(int row){
|
||||||
|
setCurrentRow(row, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Get RowCount
|
* Get RowCount
|
||||||
* @return row count
|
* @return row count
|
||||||
|
@ -2259,7 +2250,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
}
|
}
|
||||||
return "Y".equals(Env.getContext(m_vo.ctx, m_vo.WindowNo, "Processed"));
|
return "Y".equals(Env.getContext(m_vo.ctx, m_vo.WindowNo, "Processed"));
|
||||||
} // isProcessed
|
} // isProcessed
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Process Field Change - evaluate Dependencies and process Callouts.
|
* Process Field Change - evaluate Dependencies and process Callouts.
|
||||||
*
|
*
|
||||||
|
@ -2300,7 +2291,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
// if the lookup is dynamic (i.e. contains this columnName as variable)
|
// if the lookup is dynamic (i.e. contains this columnName as variable)
|
||||||
if (mLookup.getValidation().indexOf("@"+columnName+"@") != -1)
|
if (mLookup.getValidation().indexOf("@"+columnName+"@") != -1)
|
||||||
{
|
{
|
||||||
log.fine(columnName + " changed - "
|
log.fine(columnName + " changed - "
|
||||||
+ dependentField.getColumnName() + " set to null");
|
+ dependentField.getColumnName() + " set to null");
|
||||||
// invalidate current selection
|
// invalidate current selection
|
||||||
setValue(dependentField, null);
|
setValue(dependentField, null);
|
||||||
|
@ -2309,7 +2300,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
} // for all dependent fields
|
} // for all dependent fields
|
||||||
} // processDependencies
|
} // processDependencies
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Process Callout(s).
|
* Process Callout(s).
|
||||||
* <p>
|
* <p>
|
||||||
|
@ -2363,10 +2354,10 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
|
|
||||||
if (call == null || method == null || method.length() == 0)
|
if (call == null || method == null || method.length() == 0)
|
||||||
return "Callout Invalid: " + method;
|
return "Callout Invalid: " + method;
|
||||||
|
|
||||||
String retValue = "";
|
String retValue = "";
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
retValue = call.start(m_vo.ctx, method, m_vo.WindowNo, this, field, value, oldValue);
|
retValue = call.start(m_vo.ctx, method, m_vo.WindowNo, this, field, value, oldValue);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
|
@ -2436,7 +2427,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
return retValue;
|
return retValue;
|
||||||
} // toString
|
} // toString
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* @param l listener
|
* @param l listener
|
||||||
*/
|
*/
|
||||||
|
@ -2466,85 +2457,6 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
{
|
{
|
||||||
m_listenerList.add(DataStatusListener.class, l);
|
m_listenerList.add(DataStatusListener.class, l);
|
||||||
}
|
}
|
||||||
|
|
||||||
// CHANGED: Eigene Methode - für das Umsortieren der Tabellenzeilen
|
|
||||||
/**
|
|
||||||
* Vertauscht zwei Zeilen einer Tabelle.
|
|
||||||
*
|
|
||||||
* @author Karsten Thiemann
|
|
||||||
* @param from
|
|
||||||
* Index der Zeile die verschoben wird
|
|
||||||
* @param to
|
|
||||||
* Index der Zielzeile
|
|
||||||
*/
|
|
||||||
public void moveRow(int from, int to) {
|
|
||||||
// nothing to do
|
|
||||||
if (from == to) {
|
|
||||||
log.fine("nothing to do - from == to");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Row range check
|
|
||||||
int nextRow = verifyRow(to);
|
|
||||||
if (nextRow == -1) {
|
|
||||||
log.fine("Row range check - return");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// Check, if we have old uncommitted data
|
|
||||||
m_mTable.dataSave(nextRow, false);
|
|
||||||
|
|
||||||
int lineCol = m_mTable.findColumn("Line");
|
|
||||||
if (lineCol == -1) {
|
|
||||||
lineCol = m_mTable.findColumn("SeqNo");
|
|
||||||
}
|
|
||||||
Integer lineNoCurrentRow = null;
|
|
||||||
Integer lineNoNextRow = null;
|
|
||||||
if (m_mTable.getValueAt(from, lineCol) instanceof Integer) {
|
|
||||||
// die verschiedenen Ansichten (Tabelle/Grid) liefern verschiedene
|
|
||||||
// Typen...
|
|
||||||
lineNoCurrentRow = (Integer) m_mTable.getValueAt(from, lineCol);
|
|
||||||
lineNoNextRow = (Integer) m_mTable.getValueAt(nextRow, lineCol);
|
|
||||||
} else if (m_mTable.getValueAt(from, lineCol) instanceof BigDecimal) {
|
|
||||||
lineNoCurrentRow = new Integer(((BigDecimal) m_mTable.getValueAt(from, lineCol))
|
|
||||||
.intValue());
|
|
||||||
lineNoNextRow = new Integer(((BigDecimal) m_mTable.getValueAt(nextRow, lineCol))
|
|
||||||
.intValue());
|
|
||||||
} else {
|
|
||||||
log.fine("unknown value format - return");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (lineNoCurrentRow == Constants.FREIGHTCOST_LINENO
|
|
||||||
|| lineNoNextRow == Constants.FREIGHTCOST_LINENO) {
|
|
||||||
return; // Versandkosten nicht mitsortieren!
|
|
||||||
}
|
|
||||||
log.fine("LineIndex from: " + from + " LineIndex to: " + nextRow);
|
|
||||||
log.fine("lineNoCurrentRow: " + lineNoCurrentRow + " lineNoNextRow: " + lineNoNextRow);
|
|
||||||
// switch the lineNo's
|
|
||||||
m_mTable.setValueAt(new Integer(-10), from, lineCol); // wegen der
|
|
||||||
// Dateiumbenennung
|
|
||||||
// (als
|
|
||||||
// Zwischenspeicher)
|
|
||||||
log.fine("LineNo der Zeile " + from + " auf -10 gesetzt.");
|
|
||||||
log.fine("aktueller Wert von LineNo: " + m_mTable.getValueAt(from, lineCol).toString());
|
|
||||||
setCurrentRow(nextRow, false);// speichert alle Werte der Zeile
|
|
||||||
// (fehlerfrei!)
|
|
||||||
m_mTable.dataSave(true);
|
|
||||||
m_mTable.setValueAt(lineNoCurrentRow, nextRow, lineCol);
|
|
||||||
log.fine("LineNo der Zeile " + nextRow + " auf " + lineNoCurrentRow + " gesetzt.");
|
|
||||||
log.fine("aktueller Wert von LineNo: " + m_mTable.getValueAt(nextRow, lineCol).toString());
|
|
||||||
setCurrentRow(from, false);
|
|
||||||
m_mTable.dataSave(true);
|
|
||||||
m_mTable.setValueAt(lineNoNextRow, from, lineCol);
|
|
||||||
log.fine("LineNo der Zeile " + from + " auf " + lineNoNextRow + " gesetzt.");
|
|
||||||
log.fine("aktueller Wert von LineNo: " + m_mTable.getValueAt(from, lineCol).toString());
|
|
||||||
setCurrentRow(nextRow, false);
|
|
||||||
m_mTable.dataSave(true);
|
|
||||||
m_mTable.sort(lineCol, true);
|
|
||||||
navigate(nextRow);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setCurrentRow(int row){
|
|
||||||
setCurrentRow(row, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
} // MTab
|
} // MTab
|
||||||
|
|
Loading…
Reference in New Issue