Commit 056ecc25 authored by smanohar's avatar smanohar

MRP output new sheet with all the exploded demand information added along with code

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@186111 ce508802-f39f-4f6c-b175-0d175dae99d5
parent a9954dab
......@@ -157,7 +157,11 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal, RunMRPPrcRe
private ArrayList mpsList = new ArrayList();
private ArrayList indDemList = new ArrayList();
private ArrayList disList = new ArrayList();
// 07-jun-2018 manoharan
private ArrayList<ExplodedDemandDetail> expDemandList = new ArrayList<ExplodedDemandDetail>();
// end 07-jun-2018 manoharan
Connection conn = null;
//transient GenericUtility genericUtility = null;
......@@ -7818,6 +7822,16 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal, RunMRPPrcRe
/* End Addded by sachin on 25/6/13 */
// 07-jun-2018 manoharan
String bomCode = ""; // bom_code
String compCode = "";
double batchQty = 0; // batch_qty
double quantityRef = 0 ; // quantity_Ref
double qtyPer = 0; // qty_per
String reqType = ""; // req_type
ExplodedDemandDetail explodedDemandDetail = null;
// end 07-jun-2018 manoharan
try
{
System.out.println("In updateDemand xmlString [" + xmlString + "]");
......@@ -7860,10 +7874,37 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal, RunMRPPrcRe
sdate = nodeValue;
}
// 07-jun-2018 manoharan
if(!isDetailReq && !isBomReplace)
{
if (nodeName.equals("bom_code"))
{
bomCode = nodeValue;
}
if (nodeName.equals("batch_qty"))
{
batchQty = Double.parseDouble(nodeValue);
}
if (nodeName.equals("quantity_Ref"))
{
quantityRef = Double.parseDouble(nodeValue);
}
if (nodeName.equals("qty_per"))
{
qtyPer = Double.parseDouble(nodeValue);
}
if (nodeName.equals("req_type"))
{
reqType = nodeValue;
}
// end 07-jun-2018 manoharan
}
}
valueNode = valueNode.getNextSibling();
}
System.out.println("7866 from xmlStringitemCode["+itemCode+"]siteCode["+siteCode+"]quantity["+quantity+"]dueDate["+dueDate+"]");
//Pavan R on 2k18-JAN-29 to check where dueDate is less than stockDate[End]
System.out.println("7825>>>DueDate["+dueDate+"]----stockDate:["+stockDate+"]---quantity["+quantity+"]");
......@@ -7872,6 +7913,44 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal, RunMRPPrcRe
dueDate = dateFrom;
}
//Pavan R on 2k18-JAN-29 to check where dueDate is less than stockDate[End]
// 07-jun-2018 manoharan
if(!isDetailReq && !isBomReplace)
{
sql = "SELECT ITEM_CODE FROM BOM WHERE BOM_CODE = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, bomCode);
rs = pstmt.executeQuery();
if (rs.next())
{
compCode = rs.getString("ITEM_CODE");
}
rs.close();
pstmt.close();
explodedDemandDetail = new ExplodedDemandDetail();
explodedDemandDetail.bomCode = bomCode;
explodedDemandDetail.itemCode = itemCode;
explodedDemandDetail.compCode = compCode;
explodedDemandDetail.batchQty = batchQty;
explodedDemandDetail.quantityRef = quantityRef;
explodedDemandDetail.quantity = quantity;
explodedDemandDetail.dueDate = dueDate;
explodedDemandDetail.qtyPer = qtyPer;
explodedDemandDetail.reqType = reqType;
System.out.println("manohar 07-jun-2018 explodedDemandDetail [" + explodedDemandDetail + "] expDemandList [" + expDemandList + "]");
if (expDemandList == null)
{
expDemandList = new ArrayList<ExplodedDemandDetail>();
System.out.println("expDemandList was null so new created size [" + expDemandList.size() + "]");
}
expDemandList.add(explodedDemandDetail);
}
// end 07-jun-2018 manoharan
if (isBomReplace)
{
System.out.println("12/06/14 itemCode [" + itemCode + "] dueDate [" + dueDate + "] quantity [" + quantity + "]");
......@@ -8443,6 +8522,10 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal, RunMRPPrcRe
demandSupplyList.clear();
rmpmMap.clear();
//Pavan R on 09/oct/17 end
// 07-jun-2018 manoharan
expDemandList.clear();
expDemandList = null;
// end 07-jun-2018 manoharan
}
public String getDateFromTimeStamp(java.sql.Timestamp timeStampDate, String targetFormat) throws ITMException, Exception
......@@ -13351,7 +13434,75 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal, RunMRPPrcRe
}
}
}
////////////////////////////////////////////////////////////////////////
// 07-jun-2018 manoharan write the exploed demand in new sheet
if (expDemandList.size() > 0)
{
final String[] detTitles = { "Bom code", "Componet code", "Item code",
"Batch quantity", "Component quantity", "quantity per batch" , "Required type","Demand","Due date" };
HSSFSheet sheetDet = wb.createSheet("MRPRun BOM exploded detail");
HSSFRow titleRowDet = sheetDet.createRow(0);
titleRowDet.setHeightInPoints(45);
cellStyleDet = wb.createCellStyle();
HSSFCellStyle styleDet = wb.createCellStyle();
styleDet.setBorderTop((short) 6); // double lines border
styleDet.setBorderBottom((short) 1); // single line border
styleDet.setFillBackgroundColor(HSSFColor.GREY_25_PERCENT.index);
HSSFFont fontDet = wb.createFont();
fontDet.setFontName(HSSFFont.FONT_ARIAL);
fontDet.setFontHeightInPoints((short) 20);
fontDet.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
fontDet.setColor(HSSFColor.BLUE.index);
styleDet.setFont(fontDet);
HSSFCell titleCellDet = titleRowDet.createCell((int) 0);
titleCellDet.setCellValue("MRPRun - Input Detail Data");
titleCellDet.setCellStyle(style);
sheetDet.autoSizeColumn((short) 1);
HSSFRow headerRowDet = sheetDet.createRow(1);
headerRowDet.setHeightInPoints(40);
HSSFCell headerCellDet;
for (int cellCtr = 0; cellCtr < detTitles.length; cellCtr++)
{
headerCellDet = headerRowDet.createCell((int) cellCtr);
headerCellDet.setCellValue(detTitles[cellCtr]);
}
int insertRowDet = 1;
for (ExplodedDemandDetail explodedDemandDetail : expDemandList)
{
insertRowDet++;
rowDet = sheetDet.createRow(insertRowDet);
for (int j = 0; j < detTitles.length; j++)
{
cellDet = rowDet.createCell((int) j);
}
rowDet.getCell(0).setCellValue((String) explodedDemandDetail.bomCode);
rowDet.getCell(1).setCellValue((String) explodedDemandDetail.compCode);
rowDet.getCell(2).setCellValue((String) explodedDemandDetail.itemCode);
rowDet.getCell(3).setCellValue((Double) explodedDemandDetail.batchQty);
rowDet.getCell(4).setCellValue((Double) explodedDemandDetail.quantityRef);
rowDet.getCell(5).setCellValue((Double) explodedDemandDetail.qtyPer);
rowDet.getCell(6).setCellValue((String) explodedDemandDetail.reqType);
rowDet.getCell(7).setCellValue((Double) explodedDemandDetail.quantity);
//rowDet.getCell(8).setCellValue((Timestamp) explodedDemandDetail.dueDate);
cellDet = rowDet.getCell(8);
cellDet.setCellValue(HSSFDateUtil.getExcelDate((Timestamp) explodedDemandDetail.dueDate));
cellStyleDet.setDataFormat(HSSFDataFormat.getBuiltinFormat("dd/MM/yy"));
cellDet.setCellStyle(cellStyleDet);
}
}
// end 07-jun-2018 manoharan
////////////////////////////////////////////////////////////////////////
final String[] inputParam = { "Period From", "Period To",
"Site Code From", "Site Code To", "Item Code From",
"Item Code To", "Item Series From", "Item Series To",
......@@ -13424,7 +13575,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal, RunMRPPrcRe
rowDet.getCell(18).setCellValue("N");
}
rowDet.getCell(19).setCellValue(balIntersite);
/* //07-jun-2018 manoharan commented as not required
//Pavan R on 09/oct/17 end
//Added By Pavan R on 22/NOV/17 Start
final String[] inputList = { "BOM Code", "RMPM Item", "Standard Quantity" };
......@@ -13497,6 +13648,7 @@ public class RunMRPPrc extends ProcessEJB implements RunMRPPrcLocal, RunMRPPrcRe
}
}
//End added by Pavan R on 22/NOV/17
*/ // end 07-jun-2018 manoharan commented as not required
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document dom = db.parse("/IBASEHOME/ibase.xml");
......@@ -14992,8 +15144,21 @@ class CyclicItem
public String itemCode;
public String cylicItemCode;
}
// 07-jun-2018 manoharan to show the demand on exploded bom
class ExplodedDemandDetail
{
public String bomCode = ""; // bom_code
public String itemCode = ""; // item_code
public String compCode = "";
public double batchQty = 0; // batch_qty
public double quantityRef = 0 ; // quantity_Ref
public double quantity = 0; // quantity
public Timestamp dueDate = null; // due_date
public double qtyPer = 0; // qty_per
public String reqType = ""; // req_type
}
// end 07-jun-2018 manoharan
//End
/*
......
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