/// <summary> /// 加載配置參數 /// </summary> void InitPara() { bu = ConfigGet("BU"); plant = ConfigGet("PLANT"); dbstr = ConfigGet("DB"); cust = ConfigGet("CUST"); dnBase = new DnBase(bu, plant, dbstr, cust); }
void SaveDn(string dn) { try { var sdDnDetail = dnBase.sdDnDetailList.Where(x => x.VBELN == dn).Distinct().ToList(); var sdToDetail = dnBase.sdToDetailList.Where(x => x.VBELN == dn).Distinct().LastOrDefault(); var sdToHead = dnBase.sdToHeadList.Where(x => x.TKNUM == sdToDetail.TKNUM).LastOrDefault(); var GtRoute = dnBase.GetGtRoute(sdToDetail.KUNNR.Trim()); #region CustmerCode未配置GtRoute的Dn忽略 if (GtRoute.Count == 0) { WriteLog.WriteIntoMESLog(dbstr, bu, "Interface", "MESInterface.VERTIV.VertivDownloadDn", "VertivDownloadDn", $@"Dn:{dn};To:{sdToDetail.TKNUM};CustmerCode:{sdToDetail.KUNNR}未配置GtRoute", "", sdToDetail.TKNUM, dn, sdToDetail.KUNNR, "system", "N"); return; } #endregion using (var db = OleExec.GetSqlSugarClient(dbstr, true)) { var result = db.Ado.UseTran(() => { db.Deleteable <R_DN_STATUS>().Where(x => x.DN_NO == dn).ExecuteCommand(); foreach (var item in sdDnDetail) { db.Insertable <R_DN_STATUS>(new R_DN_STATUS() { ID = MesDbBase.GetNewID(db, bu, "R_DN_STATUS"), DN_NO = dn, DN_LINE = item.POSNR, PO_NO = dnBase.sdCustmerSoList.Where(x => x.VBELN == dn && x.POSNR == item.POSNR).Single().BSTKD, PO_LINE = dnBase.sdCustmerSoList.Where(x => x.VBELN == dn && x.POSNR == item.POSNR).Single().POSEX, SO_NO = item.VGBEL, SKUNO = DnBase.SkunoNameHandle(item.MATNR), QTY = double.Parse(item.LFIMG), GTTYPE = GtRoute.LastOrDefault().ROUTENAME, GT_FLAG = "0", DN_FLAG = "0", DN_PLANT = sdToHead.WERKS, GTEVENT = GtRoute.FirstOrDefault().SEQ, CREATETIME = System.DateTime.Now, EDITTIME = System.DateTime.Now }).ExecuteCommand(); } }); if (!result.IsSuccess) { WriteLog.WriteIntoMESLog(dbstr, bu, "Interface", "MESInterface.VERTIV.VertivDownloadDn", "VertivDownloadDn", $@"Dn:{dn};Err:{result.ErrorMessage}", "", "SaveDn", dn, "", "system", "N"); } } } catch (Exception e) { WriteLog.WriteIntoMESLog(dbstr, bu, "Interface", "MESInterface.VERTIV.VertivDownloadDn", "VertivDownloadDn", $@"Dn:{dn};Err:{e.Message}", "", "SaveDn", dn, "", "system", "N"); } }