fix:修改出库退料

This commit is contained in:
郭飞 2025-03-13 10:38:53 +08:00
parent 7a381c4d68
commit f6821719de
3 changed files with 1597 additions and 5 deletions

View File

@ -156,9 +156,11 @@ public class MESServiceImpl implements MESService{
// if (!"00000".equals(code)) { // if (!"00000".equals(code)) {
// throw new CustomException("ACTSTATEERROR","",""); // throw new CustomException("ACTSTATEERROR","","");
// } // }
String msg = jsonObject.getString("msg"); // String msg = jsonObject.getString("msg");
//JSONObject object = (JSONObject) jsonObject.get("data"); //JSONObject object = (JSONObject) jsonObject.get("data");
boolean success = jsonObject.getBoolean("success");
// 写log // 写log
ErpMessageLog erplog = new ErpMessageLog(); ErpMessageLog erplog = new ErpMessageLog();
erplog.setEventUser(""); erplog.setEventUser("");
@ -171,6 +173,11 @@ public class MESServiceImpl implements MESService{
erplog.setResultCode(code); erplog.setResultCode(code);
MessageLogUtil.writeMessageLog(erplog); MessageLogUtil.writeMessageLog(erplog);
if (!success) {
String msg = jsonObject.getString("msg");
throw new CustomException("发送MES失败");
}
//插入MATERIALPCKINGMDC表 //插入MATERIALPCKINGMDC表
for(int i=0;i<boxList.size();i++) for(int i=0;i<boxList.size();i++)
{ {

File diff suppressed because it is too large Load Diff

View File

@ -373,7 +373,8 @@ public class InvoiceServiceImpl implements InvoiceService {
case "06"://成本中心领料 case "06"://成本中心领料
case "09"://研发领料 case "09"://研发领料
billCode=toSAPService.orderStockOut(shipRequestName, "SDK", eventUser,materialPackingKeyList); // billCode=toSAPService.orderStockOut(shipRequestName, "SDK", eventUser,materialPackingKeyList);
billCode=orderStockOut(shipRequestName, "SDK", eventUser,materialPackingKeyList);
//更新MES管芯数据 //更新MES管芯数据
new MESServiceImpl().updateDurable_ByCostcenter(shipRequestName, "SDK", eventUser, materialPackingKeyList); new MESServiceImpl().updateDurable_ByCostcenter(shipRequestName, "SDK", eventUser, materialPackingKeyList);
//billCode = NCWServiceImpl.SaleOut2(shipRequestName, "SDK", eventUser,materialPackingKeyList,""); //billCode = NCWServiceImpl.SaleOut2(shipRequestName, "SDK", eventUser,materialPackingKeyList,"");
@ -388,12 +389,14 @@ public class InvoiceServiceImpl implements InvoiceService {
case "ZLF6": case "ZLF6":
case "ZLF7": case "ZLF7":
case "ZLF8": case "ZLF8":
billCode=toSAPService.saleStockOut_NEW(shipRequestName, "SDK", eventUser,materialPackingKeyList); // billCode=toSAPService.saleStockOut_NEW(shipRequestName, "SDK", eventUser,materialPackingKeyList);
billCode=saleStockOut_NEW(shipRequestName, "SDK", eventUser,materialPackingKeyList);
untils.SaveUnDoInfo_ForSap(materialPackingKeyList, billCode, makeEventInfo); untils.SaveUnDoInfo_ForSap(materialPackingKeyList, billCode, makeEventInfo);
break; break;
case "OEM": case "OEM":
billCode=toSAPService.oemStockOut_NEW(shipRequestName, "SDK", eventUser,materialPackingKeyList); // billCode=toSAPService.oemStockOut_NEW(shipRequestName, "SDK", eventUser,materialPackingKeyList);
billCode=oemStockOut_NEW(shipRequestName, "SDK", eventUser,materialPackingKeyList);
untils.SaveUnDoInfo_ForSap(materialPackingKeyList, billCode, makeEventInfo); untils.SaveUnDoInfo_ForSap(materialPackingKeyList, billCode, makeEventInfo);
break; break;
default : default :
@ -1573,4 +1576,474 @@ public class InvoiceServiceImpl implements InvoiceService {
return undoId; return undoId;
} }
public String orderStockOut(String shipRequestName, String siteName, String user,List<String> boxList) throws Exception {
String rcode;
String undoId = "";
String rmsg = null;
String sql=" SELECT MP.MATERIALSPECNAME, \r\n" +
" MP.ERPFACTORY, \r\n" +
" MP.ERPLOCATION, \r\n" +
" MS.SHIPREQUESTDETAILTYPE, \r\n" +
" MP.UNIT, \r\n" +
" MD.COSTCENTER, \r\n" +
" MD.RECEIVEPRODUCTIONORDERNUMBER, \r\n" +
" MP.SHIPREQUESTNAME, \r\n" +
" MD.SHIPREQUESTDETAILNAME, \r\n" +
" MD.ERPRECEIVELOCATION, \r\n" +
" MD.ERPRECEIVEFACTORY, \r\n" +
" MD.CAUSEOFMOVEMENT, \r\n" +
" SUM(t.QTY) AS MATERIALQUANTITY \r\n" +
" FROM \r\n" +
" MATERIALPACKING MP \r\n" +
" LEFT JOIN MATERIALPACKINGSUB T\r\n" +
" ON mp.MATERIALPACKINGNAME =t.MATERIALPACKINGNAME \r\n" +
" AND mp.SHIPREQUESTNAME =t.RECEIVEREQUESTNAME \r\n" +
" LEFT JOIN MATERIALSHIPREQUESTDETAIL MD \r\n" +
" ON \r\n" +
" MP.SHIPREQUESTNAME = MD.SHIPREQUESTNAME \r\n" +
" AND MP.SITENAME = MD.SITENAME \r\n" +
" AND t.RECEIVEREQUESTDETAILNAME = MD.SHIPREQUESTDETAILNAME \r\n" +
" LEFT JOIN MATERIALSHIPREQUEST MS \r\n" +
" ON \r\n" +
" MD.SHIPREQUESTNAME = MS.SHIPREQUESTNAME \r\n" +
" WHERE \r\n" +
" MP.SHIPREQUESTNAME = :SHIPREQUESTNAME \r\n" +
" AND MP.SITENAME = :SITENAME \r\n" +
" AND MP.STOCKSTATE = 'Stocked'\r\n" +
" AND MP.MATERIALPACKINGNAME IN (:BOXLIST)\r\n" +
" GROUP BY \r\n" +
" MP.MATERIALSPECNAME, \r\n" +
" MP.ERPFACTORY, \r\n" +
" MP.ERPLOCATION, \r\n" +
" MS.SHIPREQUESTDETAILTYPE, \r\n" +
" MP.UNIT, \r\n" +
" MD.COSTCENTER, \r\n" +
" MD.RECEIVEPRODUCTIONORDERNUMBER, \r\n" +
" MP.SHIPREQUESTNAME, \r\n" +
" MD.SHIPREQUESTDETAILNAME,\r\n" +
" MD.ERPRECEIVELOCATION, \r\n" +
" MD.ERPRECEIVEFACTORY, \r\n" +
" MD.CAUSEOFMOVEMENT ";
Map<String, Object> hashMap = new HashMap<String, Object>();
hashMap.put("SHIPREQUESTNAME", shipRequestName);
hashMap.put("SITENAME", siteName);
hashMap.put("BOXLIST", boxList);
List<Map<String, Object>> queryForList = IDMFrameServiceProxy.getSqlTemplate().queryForList(sql.toString(), hashMap);
try {
JSONObject sendData = new JSONObject(true);
JSONObject header = new JSONObject(true);
sendData.put("HEAD", header);
JSONObject body = new JSONObject(true);
sendData.put("BODY", body);
JSONArray itemArray = new JSONArray();
/*
HEAD
*/
header.put("INTF_ID", "MM067");
String uniqueID = UUID.randomUUID().toString();
header.put("REQ_KEYID", uniqueID);
header.put("SRC_MSGID", uniqueID);
header.put("SRC_SYSTEM", "WMS");
header.put("DEST_SYSTEM", "SAP");
header.put("REQUSER", user);
/*
BODY
*/
body.put("ITEM", itemArray);
body.put("ITEMID", uniqueID);
//过账日期
body.put("BUDAT", TimeStampUtil.getCurrentTime("yyyyMMdd"));
//凭证日期
body.put("BLDAT", TimeStampUtil.getCurrentTime("yyyyMMdd"));
//凭证抬头文本
body.put("BKTXT", uniqueID);
//用户名
body.put("USNAM", user);
for (Map<String, Object> mm : queryForList) {
JSONObject item = new JSONObject(true);
//BWART 移动类型
item.put("BWART", mm.get("SHIPREQUESTDETAILTYPE"));
// MATNR 发货物料号
item.put("MATNR", mm.get("MATERIALSPECNAME"));
// WERKS 收货工厂
item.put("WERKS", mm.get("ERPFACTORY"));
// LGORT 发货库存地点
item.put("LGORT", mm.get("ERPLOCATION"));
//MENGE 数量
item.put("MENGE", mm.get("MATERIALQUANTITY"));
//MENGE 单位
item.put("MEINS", mm.get("UNIT"));
//KOSTL 成本中心
item.put("KOSTL", mm.get("COSTCENTER"));
//AUFNR 订单号
item.put("AUFNR", mm.get("RECEIVEPRODUCTIONORDERNUMBER"));
//GRUND 移动原因 (201,202回传)
item.put("GRUND", mm.get("CAUSEOFMOVEMENT"));
//ZLLORDER 自定义领料单号
item.put("ZLLORDER", mm.get("SHIPREQUESTNAME"));
//ZLLITEM 自定义领料单行号
item.put("ZLLITEM", mm.get("SHIPREQUESTDETAILNAME"));
itemArray.add(item);
}
// log.info("SendTOSAP >>>>" + sendData);
String sapreturn = toSAPMessageUtil.sendHttpPost(toSAPMessageUtil.materialChangeLocationUrl, "", sendData.toJSONString());
org.json.JSONObject receiveJsonObject = new org.json.JSONObject(sapreturn);
org.json.JSONObject returnJsonObject = (org.json.JSONObject) receiveJsonObject.get("RETURN");
rcode = returnJsonObject.get("STATUS").toString();
rmsg = returnJsonObject.get("MSGTXT").toString();
if ("S".equals(rcode)) {
undoId = returnJsonObject.get("MBLNR").toString()+"_"+returnJsonObject.get("MJAHR").toString();//将物料凭证号与凭证年度拼在一起
}
//将log写到表里
ErpMessageLog erplog = new ErpMessageLog();
erplog.setEventUser("");
erplog.setServerName("WmsToErp");
erplog.setEventName("成本中心/研发领料");
erplog.setInterfaceTime(TimeStampUtil.getCurrentTime(TimeStampUtil.FORMAT_DEFAULT));
erplog.setMessageId(UUID.randomUUID().toString());
erplog.setSendMsg2(sendData.toJSONString());
erplog.setReturnMsg2(sapreturn);
erplog.setResultCode(rcode);
MessageLogUtil.writeMessageLog(erplog);
} catch (Exception e) {
// log.info(e.getMessage(), e);
throw new RuntimeException("SAP返回" + rmsg);
}
if (!"S".equals(rcode)) {
throw new RuntimeException("SAP返回" + rmsg);
}
return undoId;
}
//重写销售交货单过账zd.2024.8.14
public String saleStockOut_NEW(String shipRequestName, String siteName, String user,List<String> boxList) throws Exception {
String rcode;
String undoId = "";
String rmsg = null;
String sql=" SELECT \r\n" +
" count(*) AS ZROL, \r\n" +
" m1.SHIPREQUESTDETAILNAME , \r\n" +
" t.ERPLOCATION, \r\n" +
" sum(m.QTY)MATERIALQUANTITY \r\n" +
" FROM \r\n" +
" MATERIALPACKINGSUB m \r\n" +
" LEFT JOIN MATERIALPACKING T ON \r\n" +
" m.MATERIALPACKINGNAME = T.MATERIALPACKINGNAME AND m.RECEIVEREQUESTNAME = T.SHIPREQUESTNAME \r\n" +
" LEFT JOIN MATERIALSHIPREQUESTDETAIL M1 \r\n" +
" ON \r\n" +
" m.RECEIVEREQUESTNAME = M1.SHIPREQUESTNAME \r\n" +
" AND m.RECEIVEREQUESTDETAILNAME = M1.SHIPREQUESTDETAILNAME \r\n" +
" LEFT JOIN MATERIALSHIPREQUEST M2 \r\n" +
" ON \r\n" +
" M1.SHIPREQUESTNAME = M2.SHIPREQUESTNAME \r\n" +
" WHERE \r\n" +
" T.SHIPREQUESTNAME = :SHIPREQUESTNAME \r\n" +
" AND T.SITENAME = :SITENAME \r\n" +
" AND T.STOCKSTATE = 'Stocked' AND T.MATERIALPACKINGNAME IN (:BOXLIST)\r\n" +
" GROUP BY m1.SHIPREQUESTDETAILNAME , t.ERPLOCATION";
Map<String, Object> hashMap = new HashMap<String, Object>();
hashMap.put("SHIPREQUESTNAME", shipRequestName);
hashMap.put("SITENAME", siteName);
hashMap.put("BOXLIST", boxList);
List<Map<String, Object>> queryForList = IDMFrameServiceProxy.getSqlTemplate().queryForList(sql.toString(), hashMap);
try {
JSONObject sendData = new JSONObject(true);
JSONObject header = new JSONObject(true);
sendData.put("HEAD", header);
JSONObject body = new JSONObject(true);
sendData.put("BODY", body);
JSONArray itemArray = new JSONArray();
/*
HEAD
*/
header.put("DEST_SYSTEM", "SAP");
header.put("INTF_ID", "SD023");
header.put("SRC_SYSTEM", "WMS");
String uniqueID = UUID.randomUUID().toString();
header.put("SRC_MSGID", uniqueID);
header.put("BACKUP1", uniqueID);
header.put("BACKUP2", uniqueID);
/*
BODY
*/
//交货单号
body.put("VBELN", shipRequestName);
//实际过账日期
body.put("WADAT_IST", TimeStampUtil.getCurrentTime("yyyyMMdd"));//yyyyMMddhhmmss
//发送日期
body.put("Z_SENDDATE", TimeStampUtil.getCurrentTime("yyyyMMdd"));
//操作类型过账
body.put("Z_OPTION", "1");
if (queryForList.size() >= 1) {
for (Map<String, Object> mm : queryForList) {
JSONObject item = new JSONObject(true);
//交货单行号
item.put("POSNR", mm.get("SHIPREQUESTDETAILNAME"));
//交货数量
item.put("PIKMG", mm.get("MATERIALQUANTITY"));
//库存地点
item.put("LGORT", mm.get("ERPLOCATION"));
//实际发货卷数
item.put("Z_ROL", mm.get("ZROL"));
//实际发货平方米
item.put("Z_SQUE", mm.get("MATERIALQUANTITY"));
itemArray.add(item);
}
body.put("ITEMS", itemArray);//销售过账需放ITEMS
}else {
for (Map<String, Object> mm : queryForList) {
//交货单行号
body.put("POSNR", mm.get("SHIPREQUESTDETAILNAME"));
//交货数量
body.put("PIKMG", mm.get("MATERIALQUANTITY")); //SUM
//库存地点
body.put("LGORT", mm.get("ERPLOCATION"));
//实际发货卷数
body.put("Z_ROL", mm.get("ZROL")); //COUNT
//实际发货平方米
body.put("Z_SQUE", mm.get("MATERIALQUANTITY"));
}
}
// log.info("SendTOSAP >>>>" + sendData);
String sapreturn = toSAPMessageUtil.sendHttpPost(toSAPMessageUtil.DNUrl, "", sendData.toJSONString());
org.json.JSONObject receiveJsonObject = new org.json.JSONObject(sapreturn);
//销售交货单过账不返回物料凭证,且RETURN为JsonArray
org.json.JSONObject returnJsonObject = (org.json.JSONObject) receiveJsonObject.get("RETURN");
rcode = returnJsonObject.get("STATUS").toString();
rmsg = returnJsonObject.get("MSGTXT").toString();
if ("S".equals(rcode)) {
undoId = "S";
}
//将log写到表里
ErpMessageLog erplog = new ErpMessageLog();
erplog.setEventUser("");
erplog.setServerName("WmsToErp");
erplog.setEventName("调拨出库(NLCC)");
erplog.setInterfaceTime(TimeStampUtil.getCurrentTime(TimeStampUtil.FORMAT_DEFAULT));
erplog.setMessageId(UUID.randomUUID().toString());
erplog.setSendMsg2(sendData.toJSONString());
erplog.setReturnMsg2(sapreturn);
erplog.setResultCode(rcode);
MessageLogUtil.writeMessageLog(erplog);
} catch (Exception e) {
// log.info(e.getMessage(), e);
throw new RuntimeException("SAP返回" + rmsg);
}
if (!"S".equals(rcode)) {
throw new RuntimeException("SAP返回" + rmsg);
}
return undoId;
}
//重写委外发料zd.2024.8.17
public String oemStockOut_NEW(String shipRequestName, String siteName, String user,List<String> boxList) throws Exception
{
String rcode;
String undoId = "";
String rmsg = null;
String sql="SELECT \r\n" +
" MS.DELIVERYADDRESS, \r\n" +
" MP.MATERIALSPECNAME, \r\n" +
" MP.ERPFACTORY, \r\n" +
" MP.ERPLOCATION, \r\n" +
" MS.SHIPREQUESTDETAILTYPE, \r\n" +
" MP.UNIT, \r\n" +
" MD.COSTCENTER, \r\n" +
" MD.RECEIVEPRODUCTIONORDERNUMBER, \r\n" +
" MP.SHIPREQUESTNAME, \r\n" +
" MP.SHIPREQUESTDETAILNAME, \r\n" +
" MD.ERPRECEIVELOCATION, \r\n" +
" MD.ERPRECEIVEFACTORY, \r\n" +
" SUM(M.QTY) AS MATERIALQUANTITY \r\n" +
" FROM \r\n" +
" MATERIALPACKING MP \r\n" +
" LEFT JOIN MATERIALPACKINGSUB m \r\n" +
" ON mp.MATERIALPACKINGNAME =m.MATERIALPACKINGNAME \r\n" +
" AND mp.SHIPREQUESTNAME =m.RECEIVEREQUESTNAME \r\n" +
" LEFT JOIN MATERIALSHIPREQUESTDETAIL MD \r\n" +
" ON \r\n" +
" MP.SHIPREQUESTNAME = MD.SHIPREQUESTNAME \r\n" +
" AND MP.SITENAME = MD.SITENAME \r\n" +
" AND m.RECEIVEREQUESTDETAILNAME =md.SHIPREQUESTDETAILNAME \r\n" +
" LEFT JOIN MATERIALSHIPREQUEST MS \r\n" +
" ON \r\n" +
" MD.SHIPREQUESTNAME = MS.SHIPREQUESTNAME \r\n" +
" WHERE \r\n" +
" MP.SHIPREQUESTNAME = :SHIPREQUESTNAME \r\n" +
" AND MP.SITENAME = :SITENAME \r\n" +
" AND MP.STOCKSTATE = 'Stocked'\r\n" +
" AND mp.MATERIALPACKINGNAME IN (:BOXLIST)\r\n" +
" GROUP BY \r\n" +
" MS.DELIVERYADDRESS, \r\n" +
" MP.MATERIALSPECNAME, \r\n" +
" MP.ERPFACTORY, \r\n" +
" MP.ERPLOCATION, \r\n" +
" MS.SHIPREQUESTDETAILTYPE, \r\n" +
" MP.UNIT, \r\n" +
" MD.COSTCENTER, \r\n" +
" MD.RECEIVEPRODUCTIONORDERNUMBER, \r\n" +
" MP.SHIPREQUESTNAME, \r\n" +
" MP.SHIPREQUESTDETAILNAME, \r\n" +
" MD.ERPRECEIVELOCATION, \r\n" +
" MD.ERPRECEIVEFACTORY ";
Map<String, Object> hashMap = new HashMap<String, Object>();
hashMap.put("SHIPREQUESTNAME", shipRequestName);
hashMap.put("SITENAME", siteName);
hashMap.put("BOXLIST", boxList);
List<Map<String, Object>> queryForList = IDMFrameServiceProxy.getSqlTemplate().queryForList(sql.toString(), hashMap);
try {
JSONObject sendData = new JSONObject(true);
JSONObject header = new JSONObject(true);
sendData.put("HEAD", header);
JSONObject body = new JSONObject(true);
sendData.put("BODY", body);
JSONArray itemArray = new JSONArray();
/*
HEAD
*/
header.put("INTF_ID", "MM067");
String uniqueID = UUID.randomUUID().toString();
header.put("REQ_KEYID", uniqueID);
header.put("SRC_MSGID", uniqueID);
header.put("SRC_SYSTEM", "WMS");
header.put("DEST_SYSTEM", "SAP");
header.put("REQUSER", user);
/*
BODY
*/
body.put("ITEM", itemArray);
body.put("ITEMID", uniqueID);
//过账日期
body.put("BUDAT", TimeStampUtil.getCurrentTime("yyyyMMdd"));
//凭证日期
body.put("BLDAT", TimeStampUtil.getCurrentTime("yyyyMMdd"));
//凭证抬头文本
body.put("BKTXT", uniqueID);
//用户名
body.put("USNAM", user);
for (Map<String, Object> mm : queryForList) {
JSONObject item = new JSONObject(true);
// MATNR 发货物料号
item.put("MATNR", mm.get("MATERIALSPECNAME"));
// WERKS 收货工厂
item.put("WERKS", mm.get("ERPFACTORY"));
// LGORT 发货库存地点
item.put("LGORT", mm.get("ERPLOCATION"));
//BWART 移动类型
item.put("BWART", "541O");
//SOBKZ 特殊库存标识
// item.put("SOBKZ", "O");
//LIFNR 供应商编码
item.put("LIFNR", mm.get("DELIVERYADDRESS"));
//MENGE 数量
item.put("MENGE", mm.get("MATERIALQUANTITY"));
//MENGE 单位
item.put("MEINS", mm.get("UNIT"));
itemArray.add(item);
updateOEMINVENTORY(mm.get("ERPFACTORY").toString(),mm.get("DELIVERYADDRESS").toString(),
mm.get("MATERIALSPECNAME").toString(),mm.get("MATERIALQUANTITY").toString());
}
// log.info("SendTOSAP >>>>" + sendData);
String sapreturn = toSAPMessageUtil.sendHttpPost(toSAPMessageUtil.materialChangeLocationUrl, "", sendData.toJSONString());
org.json.JSONObject receiveJsonObject = new org.json.JSONObject(sapreturn);
org.json.JSONObject returnJsonObject = (org.json.JSONObject) receiveJsonObject.get("RETURN");
rcode = returnJsonObject.get("STATUS").toString();
rmsg = returnJsonObject.get("MSGTXT").toString();
if ("S".equals(rcode)) {
undoId = returnJsonObject.get("MBLNR").toString()+"_"+returnJsonObject.get("MJAHR").toString();//将物料凭证号与凭证年度拼在一起
}
//将log写到表里
UUID uuid = UUID.randomUUID();
ErpMessageLog erplog = new ErpMessageLog();
erplog.setEventUser("");
erplog.setServerName("WmsToErp");
erplog.setEventName("委外发料541O");
erplog.setId(uuid.toString());
erplog.setInterfaceTime(TimeStampUtil.getCurrentTime(TimeStampUtil.FORMAT_DEFAULT));
erplog.setMessageId(UUID.randomUUID().toString());
erplog.setSendMsg2(sendData.toJSONString());
erplog.setReturnMsg2(sapreturn);
erplog.setResultCode(rcode);
MessageLogUtil.writeMessageLog(erplog);
} catch (Exception e) {
// log.info(e.getMessage(), e);
throw new RuntimeException("SAP返回" + rmsg);
}
if (!"S".equals(rcode)) {
throw new RuntimeException("SAP返回" + rmsg);
}
return undoId;
}
//更新OEMINVENTORYzd.2024.8.7
public void updateOEMINVENTORY(String erpFactory,String supplierNo,String materialSpecName,String qty) throws Exception
{
String sqls="SELECT o.MATERIALSPECNAME FROM OEMINVENTORY o \r\n" +
" WHERE o.ERPFACTORY =:ERPFACTORY\r\n" +
" AND o.MATERIALSPECNAME =:MATERIALSPECNAME\r\n" +
" AND o.SUPPLIERNO =:SUPPLIERNO";
Map<String, Object> bp=new HashMap<>();
bp.put("ERPFACTORY", erpFactory);
bp.put("MATERIALSPECNAME", materialSpecName);
bp.put("SUPPLIERNO", supplierNo);
bp.put("QTY", qty);
List<Map<String, Object>> sr=IDMFrameServiceProxy.getSqlTemplate().queryForList(sqls, bp);
if(sr.size()>0)
{
String sqlu="UPDATE OEMINVENTORY o SET o.QTY =o.QTY + :QTY\r\n" +
" WHERE o.ERPFACTORY =:ERPFACTORY\r\n" +
" AND o.MATERIALSPECNAME =:MATERIALSPECNAME\r\n" +
" AND o.SUPPLIERNO =:SUPPLIERNO";
IDMFrameServiceProxy.getSqlTemplate().update(sqlu, bp);
}
else
{
String sqli="INSERT INTO OEMINVENTORY(ERPFACTORY,MATERIALSPECNAME,SUPPLIERNO,QTY)\r\n" +
" VALUES (:ERPFACTORY,:MATERIALSPECNAME,:SUPPLIERNO,:QTY)";
IDMFrameServiceProxy.getSqlTemplate().update(sqli, bp);
}
}
} }