Commit c056a1ef authored by msharma's avatar msharma

MF90BHU007 MANOJ SHARMA CYCLIC ITEM CHECKING


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@91479 ce508802-f39f-4f6c-b175-0d175dae99d5
parent ef864aa8
...@@ -126,10 +126,12 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -126,10 +126,12 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
HashMap siteCodeMap = new HashMap(); HashMap siteCodeMap = new HashMap();
HashMap itemHashMap = new HashMap(); HashMap itemHashMap = new HashMap();
Set itemList = new HashSet(); Set itemList = new HashSet();
Set cyclicCheck = null;
String logInSite = ""; String logInSite = "";
String chgUser = ""; String chgUser = "";
String chgTerm = ""; String chgTerm = "";
HashMap hmap=new HashMap();
int level=0;
CommonConstants commonConstants = new CommonConstants(); CommonConstants commonConstants = new CommonConstants();
...@@ -226,11 +228,13 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -226,11 +228,13 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
try try
{ {
//Added by Jiten 07/11/06 //Added by Jiten 07/11/06
this.fw = new FileWriter(CommonConstants.JBOSSHOME+"\\log\\RepeatBom.log"); //this.fw = new FileWriter(CommonConstants.JBOSSHOME+"\\log\\RepeatBom.log");
this.fw=new FileWriter(CommonConstants.JBOSSHOME + File.separator +"log"+File.separator+"RepeatBom.log");
this.fw.write("Site Code Bom Code Item Code CyclicItemCode"+"\r\n"); this.fw.write("Site Code Bom Code Item Code CyclicItemCode"+"\r\n");
//End //End
//Added by jiten 10/11/06 //Added by jiten 10/11/06
this.fw1 = new FileWriter(CommonConstants.JBOSSHOME+"\\log\\SkipItem.log"); //this.fw1 = new FileWriter(CommonConstants.JBOSSHOME+"\\log\\SkipItem.log");
this.fw1=new FileWriter(CommonConstants.JBOSSHOME + File.separator +"log"+File.separator+"SkipItem.log");
this.fw1.write("Site Code Product Code ItemCode Skipped"+"\r\n"); this.fw1.write("Site Code Product Code ItemCode Skipped"+"\r\n");
//End //End
...@@ -476,6 +480,11 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -476,6 +480,11 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
finally finally
{ {
try{ try{
if(conn!=null)
{
conn.close();
conn=null;
}
this.fw.flush();//Added by Jiten 07/11/06 this.fw.flush();//Added by Jiten 07/11/06
this.fw.close();//Added by Jiten 07/11/06 this.fw.close();//Added by Jiten 07/11/06
this.fw1.flush();//Added by JIten 10/11/06 this.fw1.flush();//Added by JIten 10/11/06
...@@ -1120,6 +1129,10 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -1120,6 +1129,10 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
//System.out.println("populateAllItem(): Supp_Sour:..." + suppSour + " Bom Code:..." + bomCode); //System.out.println("populateAllItem(): Supp_Sour:..." + suppSour + " Bom Code:..." + bomCode);
if( ( (suppSour != null) && (!suppSour.equals("P")) ) && (bomCode != null) ) if( ( (suppSour != null) && (!suppSour.equals("P")) ) && (bomCode != null) )
{ {
Set levelBom=new HashSet();
level=1;
levelBom.add(bomCode);
hmap.put(new Integer(level),levelBom);
//itemHashMap.put( (String)itemArr.get(ctr), new Integer(count) ); //itemHashMap.put( (String)itemArr.get(ctr), new Integer(count) );
System.out.println("itemArr.get(ctr)--"+itemArr.get(ctr)); System.out.println("itemArr.get(ctr)--"+itemArr.get(ctr));
itemList.add((String)itemArr.get(ctr)); itemList.add((String)itemArr.get(ctr));
...@@ -1131,7 +1144,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -1131,7 +1144,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
//end //end
validBomItemCode = cyclicItem.itemCode; // 19-01-2007 manoharan validBomItemCode = cyclicItem.itemCode; // 19-01-2007 manoharan
cyclicCheck = new HashSet();
errString = bomExplode((String)siteMapEntry.getKey(), bomCode); errString = bomExplode((String)siteMapEntry.getKey(), bomCode);
itemHashMap.clear(); itemHashMap.clear();
if ( errString != null && errString.trim().length() > 0 ) if ( errString != null && errString.trim().length() > 0 )
...@@ -1139,6 +1152,8 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -1139,6 +1152,8 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
System.out.println("Error While Calling method bomExplode(String, String):..."+errString); System.out.println("Error While Calling method bomExplode(String, String):..."+errString);
return errString; return errString;
} }
level=0;
hmap.clear();
} }
} }
itemList.clear(); itemList.clear();
...@@ -1155,8 +1170,289 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -1155,8 +1170,289 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
} }
return errString; return errString;
} }
private String bomExplode(String siteCode, String bomCode) throws ITMException
{
//PreparedStatement pstmt = null;
Statement pstmt = null;
PreparedStatement pstmtInner1 = null;
PreparedStatement pstmtInner2 = null;
ResultSet rsCount = null;
String sql = "", sqlInner1 = "", sqlInner2 = "";
ResultSet rs = null, rsInner1 = null, rsInner2 = null;
String innerSuppSour = null;
String innerBomCode = null;
PreparedStatement pstmtValidBom = null;
String sqlValidBom = "SELECT CONFIRMED, ACTIVE FROM BOM WHERE BOM_CODE = ?";
ResultSet rsValidBom = null;
boolean bomExists = false;
String logMsg = null;
String confirmedBom = null;
String activeBom = null;
try
{
// 19-01-2007 manoharan
// check whether the bom is valid should be confirmed and active
pstmtValidBom = conn.prepareStatement(sqlValidBom);
pstmtValidBom.setString(1,bomCode);
rsValidBom = pstmtValidBom.executeQuery();
bomExists = false;
while(rsValidBom.next())
{
bomExists = true;
confirmedBom = rsValidBom.getString(1);
activeBom = rsValidBom.getString(2);
}
rsValidBom.close();
pstmtValidBom.close();
//this.fwInvalidBom.write("Site Code Item Code Bom Code Message\r\n");
if(confirmedBom == null || confirmedBom.trim().length() == 0 || confirmedBom.equalsIgnoreCase("N") || activeBom == null || activeBom.trim().length() == 0 || activeBom.equalsIgnoreCase("N"))
{
siteCode = (siteCode.trim() + " ").substring(0,5);
validBomItemCode = (validBomItemCode.trim() + " ").substring(0,10);
bomCode = (bomCode.trim() + " ").substring(0,10);
logMsg = siteCode + " " + validBomItemCode + " " + bomCode + " ";
//========= ========== ========== ========
if(confirmedBom == null || confirmedBom.trim().length() == 0 || confirmedBom.equalsIgnoreCase("N"))
{
logMsg = logMsg + "BOM not confirmed";
}
if(activeBom == null || activeBom.trim().length() == 0 || activeBom.equalsIgnoreCase("N"))
{
logMsg = logMsg + " BOM not active";
}
invaldBomExists = true;
this.fwInvalidBom.write(logMsg + "\r\n");
}
// end 19-01-2007 manoharan
Set levelBom=new HashSet();
sql = "SELECT DISTINCT CASE WHEN ITEM.ITEM_CODE__PLAN IS NULL THEN ITEM.ITEM_CODE ELSE ITEM.ITEM_CODE__PLAN END "
+ " FROM BOMDET, ITEM "
+ " WHERE ITEM.ITEM_CODE = BOMDET.ITEM_CODE "
+" AND BOMDET.BOM_CODE = '"+bomCode+"'";
//pstmt = conn.prepareStatement(sql);
System.out.println(sql);
pstmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
//pstmt.setString(1,bomCode);
rs = pstmt.executeQuery(sql);
int ctr=0;
while(rs.next())
{
System.out.println("rs.getString(1)----"+rs.getString(1));
levelBom.add(rs.getString(1));
ctr=1;
}
level=level+ctr;
hmap.put(new Integer(level),levelBom);
System.out.println("level--"+level);
for(int i=1;i<level;i++)
{
System.out.println("Level Loop Entered---"+i+"---"+hmap.size());
levelBom=(HashSet) hmap.get(new Integer(i));
System.out.println("Level Loop Entered---"+i+"---"+levelBom.size());
Iterator it=levelBom.iterator();
while(it.hasNext())
{
System.out.println("SET Value---"+it.next().toString());
}
}
rs.beforeFirst();
while(rs.next())
{
//System.out.println("Item Code : "+rs.getString(1));
sqlInner1 = "SELECT COUNT(1) FROM ITEM WHERE ITEM_CODE = ?";
pstmtInner1 = conn.prepareStatement(sqlInner1);
pstmtInner1.setString(1,rs.getString(1));
rsCount = pstmtInner1.executeQuery();
//rsCount = stmt.executeQuery("SELECT COUNT(1) FROM ITEM WHERE ITEM_CODE = '" + rs.getString(1) + "'");
if(rsCount.next() && rsCount.getInt(1) > 0)
{
rsCount.close();
pstmtInner1.close();
// Add ItemCode in ItemCodeMap if it not present earlier
innerSuppSour = getSuppSour(siteCode,rs.getString(1));
innerBomCode = getBomCode(siteCode,rs.getString(1));
System.out.println("innerBomCode---------"+innerBomCode);
//System.out.println("bomExplode Function :: Site Code :: "+siteCode+"Bom Code ::"+bomCode+"Item Code ::"+rs.getString(1));
boolean isCyclic=false;
System.out.println("innerSuppSour-----"+innerSuppSour+"----innerBomCode----"+innerBomCode);
// if( ( (innerSuppSour == null) || (innerSuppSour.equals("P")) ) && (innerBomCode == null) )
// {
// System.out.println("level is decremented---"+level);
// level--;
// System.out.println("level is decremented---"+level);
// }
if( ( (innerSuppSour != null) && (!innerSuppSour.equals("P")) ) && (innerBomCode != null) )
{
for(int i=1;i<level;i++)
{
levelBom=(HashSet) hmap.get(new Integer(i));
System.out.println("levelBom.contains(rs.getString(1))--"+level+"---"+i+"---"+levelBom.size()+"--"+levelBom.contains(rs.getString(1)));
if(levelBom.size()>0 && levelBom.contains(rs.getString(1)))
{
System.out.println("levelBom.contains(rs.getString(1))--"+levelBom.contains(rs.getString(1)));
//Added by Jiten 07/11/06//
if(verifier != null && verifier.equalsIgnoreCase("Y"))
{
this.fw.write(cyclicItem.siteCode+" "+cyclicItem.bomCode+" "+cyclicItem.itemCode+" "+rs.getString(1)+"\r\n");
System.out.println("Cyclic Item Code is : " + rs.getString(1));
//return "";
}
else{
System.out.println("Cyclic Item Code is : " + rs.getString(1));
errString = itmDBAccessEJB.getErrorString("","VTMRPITEME","","",conn);
rs.close();
pstmt.close();
return errString;
}
isCyclic=true;
//End//
}
}
if(!itemCodeMap.containsKey(rs.getString(1)))
{
System.out.println("Placing value in itemCodeMap-------"+rs.getString(1));
itemCodeMap.put(rs.getString(1),new Integer(itemCodeMap.size() + 1));
}
/* else
{
itemHashMap.put(rs.getString(1),new Integer(itemHashMap.size()+1));
} */
}
/* if(itemCodeMap.containsKey(rs.getString(1)))
{}
else
{
itemCodeMap.put(rs.getString(1),new Integer(itemCodeMap.size() + 1));
} */
// if( ( (innerSuppSour != null) && (innerSuppSour.equals("P")) ) && (innerBomCode == null) )
// {
// System.out.println("level is decremented-----"+level);
// level--;
// if(level<=0)
// level=0;
// System.out.println("level is decremented-----"+level);
// }
if( ( (innerSuppSour != null) && (!innerSuppSour.equals("P")) ) && (innerBomCode != null) && (isCyclic==false) )
{
//System.out.println("Inner Exploding BOM for site : " + siteCode + " Item : " + rs.getString(1) + " BOM : " + innerBomCode);
validBomItemCode = rs.getString(1);
errString = bomExplode(siteCode, innerBomCode);
if ( errString != null && errString.trim().length() > 0 )
{
System.out.println("Error While Calling method bomExplode(String, String):..."+errString);
rs.close();
pstmt.close();
return errString;
}
}
}
else
{
rsCount.close();
sqlInner2 = "SELECT COUNT(1) FROM BOM WHERE BOM_CODE = ?";
pstmtInner2 = conn.prepareStatement(sqlInner2);
pstmtInner2.setString(1,rs.getString(1));
rsCount = pstmtInner2.executeQuery();
//rsCount = stmt.executeQuery("SELECT COUNT(1) FROM BOM WHERE BOM_CODE = '" + rs.getString(1) + "'");
if(rsCount.next() && rsCount.getInt(1) > 0)
{
rsCount.close();
pstmtInner2.close();
validBomItemCode = "BOMDET:" +rs.getString(1);
errString = bomExplode(siteCode, rs.getString(1));
if ( errString != null && errString.trim().length() > 0 )
{
System.out.println("Error While Calling method bomExplode(String, String):..."+errString);
rs.close();
pstmt.close();
return errString;
}
}
rsCount.close();
}
}
level--;
rs.close();
rs = null;//Added by Jiten 09/11/06 -Sun
}
catch(SQLException se)
{
System.out.println("SQLException :RunMRPPrcEJB :bomExplode(String siteCode, String MatPlan, String bomCode).." +se.getMessage());
se.printStackTrace();
errString = se.getMessage();
throw new ITMException(se);
}
catch(Exception e)
{
System.out.println("Exception :RunMRPPrcEJB :bomExplode(String siteCode, String MatPlan, String bomCode):...." + e.getMessage() + ":");
this.errString = genericUtility.createErrorString(e);
e.printStackTrace();
errString = e.getMessage();
throw new ITMException(e);
}
finally
{
try
{
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
if (rsInner1 != null)
{
rsInner1.close();
rsInner1 = null;
}
if (pstmtInner1 != null)
{
pstmtInner1.close();
pstmtInner1 = null;
}
if (rsInner1 != null){ rsInner1 = null; }
if (pstmtInner2 != null)
{
pstmtInner2.close();
pstmtInner2 = null;
}
if (rsInner2 != null)
{
rsInner2.close();
rsInner2 = null;
}
this.fw.flush();//Added by Jiten 07/11/06
}
catch(Exception e)
{
System.out.println(e);
throw new ITMException(e);
}
}
return errString;//Moved here as finally does not complete - jiten -03/11/06
}
private String bomExplode(String siteCode, String bomCode) throws ITMException /* private String bomExplode(String siteCode, String bomCode) throws ITMException
{ {
PreparedStatement pstmt = null; PreparedStatement pstmt = null;
PreparedStatement pstmtInner1 = null; PreparedStatement pstmtInner1 = null;
...@@ -1217,7 +1513,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -1217,7 +1513,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
this.fwInvalidBom.write(logMsg + "\r\n"); this.fwInvalidBom.write(logMsg + "\r\n");
} }
// end 19-01-2007 manoharan // end 19-01-2007 manoharan
Set levelBom=new HashSet();
sql = "SELECT DISTINCT CASE WHEN ITEM.ITEM_CODE__PLAN IS NULL THEN ITEM.ITEM_CODE ELSE ITEM.ITEM_CODE__PLAN END " sql = "SELECT DISTINCT CASE WHEN ITEM.ITEM_CODE__PLAN IS NULL THEN ITEM.ITEM_CODE ELSE ITEM.ITEM_CODE__PLAN END "
+ " FROM BOMDET, ITEM " + " FROM BOMDET, ITEM "
+ " WHERE ITEM.ITEM_CODE = BOMDET.ITEM_CODE " + " WHERE ITEM.ITEM_CODE = BOMDET.ITEM_CODE "
...@@ -1225,26 +1521,50 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -1225,26 +1521,50 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setString(1,bomCode); pstmt.setString(1,bomCode);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
int ctr=0;
while(rs.next()) while(rs.next())
{ {
System.out.println("Item Code : "+rs.getString(1)); System.out.println("Item Code : "+rs.getString(1));
mainList.add(rs.getString(1)); mainList.add(rs.getString(1));
cyclicCheck.add(rs.getString(1));
levelBom.add(rs.getString(1));
ctr=1;
} }
level=level+ctr;
hmap.put(new Integer(level),levelBom);
System.out.println("level--"+level);
rs.close(); rs.close();
pstmt.close(); pstmt.close();
// for(int i=1;i<level;i++)
// {
// System.out.println("Level Loop Entered---"+i+"---"+hmap.size());
// levelBom=(HashSet) hmap.get(new Integer(i));
// System.out.println("Level Loop Entered---"+i+"---"+levelBom.size());
// Iterator it=levelBom.iterator();
// while(it.hasNext())
// {
// System.out.println("SET Value---"+it.next().toString());
// }
//
//
//
// }
/*for (int mainCtr = 0; mainCtr < mainList.size() ; mainCtr++) for (int mainCtr = 0; mainCtr < mainList.size() ; mainCtr++)
{ {
System.out.println("(String) mainList.get(mainCtr)--"+(String) mainList.get(mainCtr)); System.out.println("(String) mainList.get(mainCtr)--"+(String) mainList.get(mainCtr));
}*/ }
for (int mainCtr = 0; mainCtr < mainList.size() ; mainCtr++) for (int mainCtr = 0; mainCtr < mainList.size() ; mainCtr++)
{ {
tempItemCode = (String) mainList.get(mainCtr); tempItemCode = (String) mainList.get(mainCtr);
mainList.remove(mainCtr);
//System.out.println("Manoj tempItemCode--"+tempItemCode); //System.out.println("Manoj tempItemCode--"+tempItemCode);
setLength=itemList.size(); setLength=itemList.size();
//setLength = cyclicCheck.size();
Iterator itr=itemList.iterator(); Iterator itr=itemList.iterator();
while(itr.hasNext()) while(itr.hasNext())
{ {
...@@ -1279,8 +1599,15 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -1279,8 +1599,15 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
System.out.println("itemList.size()--"+verifier+"--"+setLength+"--"+itemList.size()); System.out.println("itemList.size()--"+verifier+"--"+setLength+"--"+itemList.size());
//14.11.2010 Manoj //14.11.2010 Manoj
if(setLength==itemList.size())
for(int i=1;i<level;i++)
{
levelBom=(HashSet) hmap.get(new Integer(i));
System.out.println("levelBom.contains(tempItemCode)--"+level+"---"+i+"---"+levelBom.size()+"--"+levelBom.contains(tempItemCode));
if(levelBom.size()>0 && levelBom.contains(tempItemCode))
{ {
System.out.println("levelBom.contains(tempItemCode)--"+levelBom.contains(tempItemCode));
if(verifier != null && verifier.equalsIgnoreCase("Y")) if(verifier != null && verifier.equalsIgnoreCase("Y"))
{ {
System.out.println("itemList.size()--"+verifier+"--"+setLength+"--"+itemList.size()); System.out.println("itemList.size()--"+verifier+"--"+setLength+"--"+itemList.size());
...@@ -1298,6 +1625,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -1298,6 +1625,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
itemList.clear(); itemList.clear();
return errString; return errString;
} }
}
} }
// end 14.11.2010 Manoj // end 14.11.2010 Manoj
...@@ -1440,7 +1768,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -1440,7 +1768,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
} }
} }
return errString;//Moved here as finally does not complete - jiten -03/11/06 return errString;//Moved here as finally does not complete - jiten -03/11/06
} } */
// Populating Bom code // Populating Bom code
...@@ -3518,9 +3846,11 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -3518,9 +3846,11 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
{ {
lineNo = " "; lineNo = " ";
} }
System.out.println("adpeList.size()------"+adpeList.size());
for (ctr = 0; ctr < adpeList.size(); ctr++) for (ctr = 0; ctr < adpeList.size(); ctr++)
{ {
adpElement = (ADPElement)adpeList.get(ctr); adpElement = (ADPElement)adpeList.get(ctr);
System.out.println("adpElement------"+adpElement.getSiteCode()+"----"+adpElement.getItemCode()+"----"+adpElement.getSaleOrder()+"----"+adpElement.getLineNo());
if ( (adpElement.getSiteCode().equals(siteCode)) && (adpElement.getItemCode().equals(itemCode)) if ( (adpElement.getSiteCode().equals(siteCode)) && (adpElement.getItemCode().equals(itemCode))
&& (adpElement.getSaleOrder().equals(saleOrder)) && (adpElement.getLineNo().equals(lineNo))) && (adpElement.getSaleOrder().equals(saleOrder)) && (adpElement.getLineNo().equals(lineNo)))
{ {
...@@ -3915,6 +4245,10 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem ...@@ -3915,6 +4245,10 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal,RunMRPPrcRem
horizonDate = new java.sql.Timestamp(System.currentTimeMillis()); horizonDate = new java.sql.Timestamp(System.currentTimeMillis());
horizonDate.setTime( ((java.util.Date)calen.getTime()).getTime()); horizonDate.setTime( ((java.util.Date)calen.getTime()).getTime());
} }
else // 02/05/11 manoharan
{
horizonDate = dueDate;
}
reqQty = timeMrp.getPlanSupply(); //runningDemand - runningSupply - runningPlanSupply; reqQty = timeMrp.getPlanSupply(); //runningDemand - runningSupply - runningPlanSupply;
if (reqQty > 0) if (reqQty > 0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment