diff --git a/base/src/org/eevolution/model/MPPOrder.java b/base/src/org/eevolution/model/MPPOrder.java index 2d230995d2..8cea3414bc 100644 --- a/base/src/org/eevolution/model/MPPOrder.java +++ b/base/src/org/eevolution/model/MPPOrder.java @@ -24,11 +24,9 @@ import java.sql.Timestamp; import java.util.ArrayList; import java.util.List; import java.util.Properties; -import java.util.Vector; import org.adempiere.exceptions.AdempiereException; import org.adempiere.exceptions.DocTypeNotFoundException; -import org.compiere.apps.ADialog; import org.compiere.minigrid.IDColumn; import org.compiere.model.MAcctSchema; import org.compiere.model.MClient; @@ -629,12 +627,13 @@ public class MPPOrder extends X_PP_Order implements DocAction for (int i = 0; i < getLines().length ; i++) { MPPOrderBOMLine line = m_lines[i]; - IDColumn id = new IDColumn(line.get_ID()); + + KeyNamePair id = null; if(MPPOrderBOMLine.ISSUEMETHOD_Backflush.equals(line.getIssueMethod())) - id.setSelected(true); + id = new KeyNamePair(line.get_ID(),"Y"); else - id.setSelected(false); + id = new KeyNamePair(line.get_ID(),"N"); ArrayList data = new ArrayList(); @@ -1252,8 +1251,9 @@ public class MPPOrder extends X_PP_Order implements DocAction for(int i = 0; i < issue.length; i++ ) { - IDColumn id = (IDColumn) issue[i][0].get(0); - if (id == null || !id.isSelected()) + KeyNamePair key = (KeyNamePair) issue[i][0].get(1); + boolean isSelected = key.getName().equals("Y"); + if (key == null || !isSelected) { continue; } @@ -1270,9 +1270,9 @@ public class MPPOrder extends X_PP_Order implements DocAction if (product != null && product.get_ID() != 0 && product.isStocked()) { int M_AttributeSetInstance_ID = ANY_ASI; - if (value == null && id.isSelected()) + if (value == null && isSelected) { - M_AttributeSetInstance_ID = (Integer)id.getRecord_ID(); + M_AttributeSetInstance_ID = (Integer)key.getKey(); } MStorage[] storages = MPPOrder.getStorages( diff --git a/client/src/org/eevolution/form/VOrderReceiptIssue.java b/client/src/org/eevolution/form/VOrderReceiptIssue.java index d5d250ef5b..b1a77ba2a8 100644 --- a/client/src/org/eevolution/form/VOrderReceiptIssue.java +++ b/client/src/org/eevolution/form/VOrderReceiptIssue.java @@ -1021,8 +1021,9 @@ public class VOrderReceiptIssue extends CPanel implements FormPanel, for (int i = 0; i < issue.getRowCount(); i++) { ArrayList data = new ArrayList(); - - data.add(issue.getValueAt (i, 0)); //0 - ID + IDColumn id = (IDColumn)issue.getValueAt (i, 0); + KeyNamePair key = new KeyNamePair(id.getRecord_ID(),id.isSelected() ? "Y": "N"); + data.add(key); //0 - ID data.add(issue.getValueAt (i, 1)); //1 - IsCritical data.add(issue.getValueAt (i, 2)); //2 - Value data.add(issue.getValueAt (i, 3)); //3 - KeyNamePair Product @@ -1043,8 +1044,9 @@ public class VOrderReceiptIssue extends CPanel implements FormPanel, for(int i = 0; i < m_issue.length; i++ ) { - IDColumn id = (IDColumn) m_issue[i][0].get(0); - if (id == null || !id.isSelected()) + KeyNamePair key = (KeyNamePair) m_issue[i][0].get(1); + boolean isSelected = key.getName().equals("Y"); + if (key == null || !isSelected) { continue; } @@ -1064,17 +1066,17 @@ public class VOrderReceiptIssue extends CPanel implements FormPanel, if (product != null && product.get_ID() != 0 && product.isStocked()) { - if (value == null && id.isSelected()) + if (value == null && isSelected) { - M_AttributeSetInstance_ID = (Integer) id.getRecord_ID(); + M_AttributeSetInstance_ID = (Integer) key.getKey(); //TODO: vpj-cd What happen when a product it more the time in Order String sql = "SELECT PP_Order_BOMLine_ID FROM PP_Order_BOMLine" +" WHERE M_Product_ID=? AND PP_Order_ID=?"; PP_Order_BOMLine_ID = DB.getSQLValue(null, sql, M_Product_ID, getPP_Order_ID()); } - else if (value != null && id.isSelected()) + else if (value != null && isSelected) { - PP_Order_BOMLine_ID = ((Integer) id.getRecord_ID()); + PP_Order_BOMLine_ID = ((Integer) key.getKey()); } MStorage[] storages = MPPOrder.getStorages(