public static List<SAPWeightDef> GetSAPWeightDef(enumMsgType msgType) { List<SAPWeightDef> retList = new List<SAPWeightDef>(); string dataType = (msgType == enumMsgType.Pallet || msgType == enumMsgType.Standard ? msgType.ToString() : enumMsgType.Delivery.ToString()); string strSQL = @"select ID, PlantCode, WeightUnit, VolumnUnit, ConnectionStr, DBName, MsgType, Descr, Cdt, Udt from SAPWeightDef where MsgType=@MsgType order by ID"; DataTable dt = SQLHelper.ExecuteDataFill(SQLHelper.ConnectionString_CFG(), System.Data.CommandType.Text, strSQL, SQLHelper.CreateSqlParameter("@MsgType", 16, dataType)); foreach (DataRow dr in dt.Rows) { SAPWeightDef item =new SAPWeightDef(); item.ID = (int)dr["ID"]; item.PlantCode = dr["PlantCode"].ToString().Trim(); item.WeightUnit = dr["WeightUnit"].ToString().Trim(); item.VolumnUnit = dr["VolumnUnit"] == null ? string.Empty : dr["VolumnUnit"].ToString().Trim(); item.ConnectionStr = dr["ConnectionStr"].ToString().Trim(); item.DBName = dr["DBName"].ToString().Trim(); item.MsgType =dr["MsgType"].ToString().Trim(); item.Descr = dr["Descr"].ToString().Trim(); item.Cdt = (DateTime)dr["Cdt"]; item.Udt = (DateTime)dr["Udt"]; retList.Add(item); } return retList; }
private static void SendSAPDeliveryWeight(SAPWeightDef def, List<SAPDeliveryWeight> weightList) { string methodName = MethodBase.GetCurrentMethod().Name; BaseLog.LoggingBegin(logger, methodName); try { SAPDeliveryWeightWS.ZWS_DELIVERY_WEIGHT_UPLOADClient SAPWeightClient = new SAPDeliveryWeightWS.ZWS_DELIVERY_WEIGHT_UPLOADClient("SAPDeliveryWeight"); SAPWeightClient.ClientCredentials.UserName.UserName = ConfigurationManager.AppSettings["SAPUserName"].ToString(); SAPWeightClient.ClientCredentials.UserName.Password = ConfigurationManager.AppSettings["SAPUserPwd"].ToString(); List<SAPDeliveryWeightWS.ZwsDeliveryWeightLine> weightlist = new List<SAPDeliveryWeightWS.ZwsDeliveryWeightLine>(); //string IDList=""; string TxnId = string.Format("{0:yyMMddHHmmssfff}", DateTime.Now); foreach (SAPDeliveryWeight item in weightList) { SAPDeliveryWeightWS.ZwsDeliveryWeightLine item1 = new SAPDeliveryWeightWS.ZwsDeliveryWeightLine(); item1.Serialnumber = (item.ID.ToString().Trim() + "-" + TxnId).PadRight(25).Substring(0, 25); item1.Plant = def.PlantCode; item1.Id = item.Shippment; item1.Type = item.Type; item1.Grossweight = item.Weight; item1.Unit = def.WeightUnit; item1.Remark1 = ""; weightlist.Add(item1); SQL.InsertSendData("SendDeliveryWeight", item.ID.ToString().Trim(), def.PlantCode, item1.Serialnumber.Trim(), item.Shippment + ";" + item.Type + ";" + item.Weight + ";" + def.WeightUnit + ";" + def.DBName, IMES.Service.Common.EnumMsgState.Sending, DateTime.Now); } SAPDeliveryWeightWS.ZwsDeliveryWeightOutLine[] weightOutList = SAPWeightClient.ZwsDeliveryWeightUpload(weightlist.ToArray()); List<string> IdOKList = new List<string>(); List<string> IdFailList = new List<string>(); foreach (SAPDeliveryWeightWS.ZwsDeliveryWeightOutLine item in weightOutList) { string dataId = (item.Serialnumber.Split(new char[] { '-' }))[0].Trim(); if (item.Result == "I" || item.Result == "U") { IdOKList.Add(dataId); SQL.InsertTxnDataLog(EnumMsgCategory.Receive, "ReceiveDeliveryWeight", dataId, item.Plant.Trim(), item.Serialnumber.Trim(), item.Result, item.Message, EnumMsgState.Success, item.Id + ";" + item.Type); } else { IdFailList.Add(dataId); SQL.InsertTxnDataLog(EnumMsgCategory.Receive, "ReceiveDeliveryWeight", dataId, item.Plant.Trim(), item.Serialnumber.Trim(), item.Result, item.Message, IMES.Service.Common.EnumMsgState.Fail, item.Id + ";" + item.Type); } } //Update FISTOSAP_WEIGHT status if (IdOKList.Count > 0) SQL.UpdateSAPWeightStatus(def.ConnectionStr, def.DBName, IdOKList, "OK"); if (IdFailList.Count > 0) SQL.UpdateSAPWeightStatus(def.ConnectionStr, def.DBName, IdFailList, "Fail"); } catch (Exception e) { BaseLog.LoggingError(logger, MethodBase.GetCurrentMethod(), e); } finally { BaseLog.LoggingEnd(logger, methodName); } }
private static void SendSAPPalletWeight(SAPWeightDef def, List<SAPPalletWeight> weightList) { string methodName = MethodBase.GetCurrentMethod().Name; BaseLog.LoggingBegin(logger, methodName); try { SAPPalletWeightWS.ZWS_PALLET_WEIGHT_UPLOADClient SAPWeightClient = new SAPPalletWeightWS.ZWS_PALLET_WEIGHT_UPLOADClient("SAPPalletWeight"); SAPWeightClient.ClientCredentials.UserName.UserName = ConfigurationManager.AppSettings["SAPUserName"].ToString(); SAPWeightClient.ClientCredentials.UserName.Password = ConfigurationManager.AppSettings["SAPUserPwd"].ToString(); List<SAPPalletWeightWS.ZwsPalletWeightInLine> weightlist = new List<SAPPalletWeightWS.ZwsPalletWeightInLine>(); //string IDList=""; string TxnId = string.Format("{0:yyMMddHHmmssfff}", DateTime.Now); foreach (SAPPalletWeight item in weightList) { SAPPalletWeightWS.ZwsPalletWeightInLine item1 = new SAPPalletWeightWS.ZwsPalletWeightInLine(); item1.Serialnumber = TxnId.PadRight(25); item1.Plant = def.PlantCode; item1.Id = item.ID; item1.Type = item.Type; item1.Palletid = item.PalletNo; item1.Grossweight = item.Weight; item1.Weightunit =def.WeightUnit; item1.Length =item.Length; item1.Width = item.Width; item1.High =item.Height; item1.Volunit = def.VolumnUnit; item1.Remark1 = ""; weightlist.Add(item1); SQL.InsertSendData("SendPalletWeight", item.PalletNo, def.PlantCode, item1.Serialnumber.Trim(), item.ID + ";" + item.Type + ";" + item.Weight + ";" + def.WeightUnit + ";" + item.Length + ";" + item.Width + ";" + item.Height + ";" + def.VolumnUnit + ";" + def.DBName, IMES.Service.Common.EnumMsgState.Sending, DateTime.Now); } SAPPalletWeightWS.ZwsPalletWeightOutLine[] weightOutList= SAPWeightClient.ZwsPalletWeightUpload(weightlist.ToArray()); List<string> IdOKList = new List<string>(); List<string> IdFailList = new List<string>(); foreach (SAPPalletWeightWS.ZwsPalletWeightOutLine item in weightOutList) { string dataId = (item.Serialnumber.Split(new char[] { '-' }))[0].Trim(); if (item.Result == "I" || item.Result == "U") { SQL.InsertTxnDataLog(EnumMsgCategory.Receive, "ReceivePalletWeight", item.Palletid.Trim(), item.Plant.Trim(), item.Serialnumber.Trim(), item.Result, item.Message, EnumMsgState.Success, item.Id.Trim() + ";" + item.Type.Trim() + ";" + item.Palletid.Trim() + ";" + def.DBName); SQL.UpdateSAPPalletStatus(def.ConnectionStr, def.DBName, item.Palletid.Trim(), item.Id.Trim(), item.Type.Trim(), "OK"); } else { IdFailList.Add(dataId); SQL.InsertTxnDataLog(EnumMsgCategory.Receive, "ReceivePalletWeight", item.Palletid.Trim(), item.Plant.Trim(), item.Serialnumber.Trim(), item.Result, item.Message, IMES.Service.Common.EnumMsgState.Fail , item.Id.Trim() + ";" + item.Type.Trim() + ";" + item.Palletid.Trim() + ";" + def.DBName); SQL.UpdateSAPPalletStatus(def.ConnectionStr, def.DBName, item.Palletid.Trim(), item.Id.Trim(), item.Type.Trim(), "FAIL"); } } } catch (Exception e) { BaseLog.LoggingError(logger, MethodBase.GetCurrentMethod(), e); } finally { BaseLog.LoggingEnd(logger, methodName); } }