private IRfcTable CreateIrfcTableForTaskInfo(SAP_Common.SAP_Common sap_comm, DeliveryReceive_Model DeliveryInfo, UserInfo userModel, string functionName, string strRfcTableName) { IRfcTable rfcTable = sap_comm.CreateIrfcTable(functionName, strRfcTableName); //过账前,过滤掉收货数量为零的数据 var lstDeliveryDetail = DeliveryInfo.lstDeliveryDetail.Where(t => t.CurrentPostQty > 0).ToList(); foreach (var item in lstDeliveryDetail) { rfcTable.Insert(); rfcTable.CurrentRow.SetValue("MATERIAL", item.MaterialNo); rfcTable.CurrentRow.SetValue("PLANT", item.Plant); rfcTable.CurrentRow.SetValue("STGE_LOC", item.StorageLoc); rfcTable.CurrentRow.SetValue("PO_NUMBER", item.VoucherNo); rfcTable.CurrentRow.SetValue("PO_ITEM", item.RowNo); rfcTable.CurrentRow.SetValue("MOVE_TYPE", "105"); rfcTable.CurrentRow.SetValue("ENTRY_QNT", item.CurrentPostQty); rfcTable.CurrentRow.SetValue("BASE_UOM", item.Unit); rfcTable.CurrentRow.SetValue("MVT_IND", "B"); //rfcTable.CurrentRow.SetValue("GR_RCPT", userModel.Name); rfcTable.CurrentRow.SetValue("GR_RCPT", string.Empty); rfcTable.CurrentRow.SetValue("REF_DOC", DeliveryInfo.MaterialDoc); rfcTable.CurrentRow.SetValue("REF_DOC_YR", DeliveryInfo.DocDate); } return(rfcTable); }
public bool PrintQuality(DeliveryReceive_Model deliveryMdl, UserInfo userModel, ref string strErrMsg) { try { string strSql = ""; strSql = string.Format("update t_receive set printqty = ISNULL(printqty,0) + {0} where ID = {1} ", 1, deliveryMdl.ID); int i = OperationSql.ExecuteNonQuery2(CommandType.Text, strSql); if (i <= 0) { strErrMsg = string.Format("未更新质检主表任何行:{0}", strSql); return(false); } strSql = string.Format("update t_receivedetails set printqty = ISNULL(printqty,0) + {0}, printtime = sysdate where receive_id = {1} and voucherno = '{2}' ", 1, deliveryMdl.ID, deliveryMdl.VoucherNo); i = OperationSql.ExecuteNonQuery2(CommandType.Text, strSql); if (i <= 0) { strErrMsg = string.Format("未更新质检子表任何行:{0}", strSql); return(false); } return(true); } catch (Exception ex) { throw ex; } }
//public bool TaskInfoPostToSAP(ref DeliveryReceive_Model ProductionModel, UserInfo userModel, ref string strErrMsg) //{ // try // { // Production_SAP PSAP = new Production_SAP(); // return PSAP.PostProductionInfoToSAP(ref ProductionModel, userModel, ref strErrMsg); // } // catch (Exception ex) // { // throw ex; // } //} public override bool CreateReceiveAndShelveTask(ref DeliveryReceive_Model DeliveryInfo, UserInfo userModel, ref string strErrMsg) { try { bool bSucc = false; string strTaskNo = string.Empty; ReceiveGoods_DB RGD = new ReceiveGoods_DB(); string strReceiveGoodsXml = XMLUtil.XmlUtil.Serializer(typeof(DeliveryReceive_Model), DeliveryInfo); string strUserWareHouseXml = XMLUtil.XmlUtil.Serializer(typeof(UserInfo), userModel); TOOL.WriteLogMethod.WriteLog("方法:CreateReceiveAndShelveTask---Prd---操作人:" + userModel.UserName + strReceiveGoodsXml); bSucc = RGD.CreateReceiveAndShelveTask(strReceiveGoodsXml, strUserWareHouseXml, userModel, ref strTaskNo, ref strErrMsg); if (bSucc == true) { DeliveryInfo.TaskNo = strTaskNo; } return(bSucc); } catch (Exception ex) { throw ex; } }
public FrmCensorshipPrinting(DeliveryReceive_Model drMain, List <DeliveryReceiveDetail_Model> lstDetail) { InitializeComponent(); _header = drMain; _detail = lstDetail; }
private void dgvList_CellContentClick(object sender, DataGridViewCellEventArgs e) { try { bool bSucc = false; string strErrMsg = string.Empty; string strHeaderText = this.dgvList.Columns[e.ColumnIndex].HeaderText; //if (AllowShowEditFormText.IndexOf(strHeaderText) < 0) return; if (e.RowIndex >= 0 && e.RowIndex < this.dgvList.Rows.Count && AllowShowEditFormText.IndexOf(strHeaderText) >= 0) { DeliveryReceive_Model item = this.lstDelivery[e.RowIndex]; bSucc = Quality_Func.GetQualityDetails(item, ref lstDeliveryDetails, ref strErrMsg); if (bSucc == false) { Common.Common_Func.ErrorMessage(strErrMsg, "编辑失败"); return; } using (FrmQuality FQ = new FrmQuality(item, lstDeliveryDetails)) { FQ.ShowDialog(); } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public List <DeliveryReceiveDetail_Model> GetQualityDetailInfo(DeliveryReceive_Model DeliveryInfo) { try { string strSql = string.Format("select * from V_GETQUALITYDETAILINFO where receive_id = {0} and voucherno = '{1}' order by rowno asc ", DeliveryInfo.ID, DeliveryInfo.VoucherNo); List <DeliveryReceiveDetail_Model> lstDeliveryDetailInfo = new List <DeliveryReceiveDetail_Model>(); using (SqlDataReader dr = OperationSql.ExecuteReader(System.Data.CommandType.Text, strSql)) { while (dr.Read()) { DeliveryReceiveDetail_Model DRM = new DeliveryReceiveDetail_Model(); DRM.ID = dr["ID"].ToInt32(); DRM.RowNo = dr["RowNo"].ToDBString(); DRM.MaterialNo = dr["MaterialNo"].ToDBString(); DRM.MaterialDesc = dr["MaterialDesc"].ToDBString(); DRM.ReceiveQty = (decimal)dr["ReceiveQty"]; DRM.Unit = dr["Unit"].ToDBString(); DRM.PrdVersion = dr["PrdVersion"].ToDBString(); DRM.QualityQty = (decimal)dr["QualityQty"]; DRM.UnQualityQty = (decimal)dr["UnQualityQty"]; DRM.VoucherNo = dr["VoucherNo"].ToDBString(); DRM.QualityType = dr["qualitytype"].ToDBString();//string.Empty;//Common_Func.GetComboBoxItem(Common_Func.GetParentMenuByMenu); lstDeliveryDetailInfo.Add(DRM); } } return(lstDeliveryDetailInfo); } catch (Exception ex) { throw ex; } }
/// <summary> /// 获取检验通知书表头数据 /// </summary> /// <param name="strErrMsg"></param> /// <returns></returns> public bool GetQualityListByPage(ref List <DeliveryReceive_Model> modelList, DeliveryReceive_Model model, ref DividPage page, UserInfo user, ref string strError) { if (page == null) { page = new DividPage(); } List <DeliveryReceive_Model> lstModel = new List <DeliveryReceive_Model>(); try { using (SqlDataReader dr = Common_DB.QueryByDividPage(ref page, "V_GETQUALITYINFO", GetFilterSql(model, user))) { while (dr.Read()) { lstModel.Add(GetDeliveryReceive_ModelFromDataReader(dr)); } } modelList = lstModel; return(true); } catch (Exception ex) { strError = ex.Message; return(false); } finally { } }
public bool PostOutSideByDeliveryAndPOToSAP(ref DeliveryReceive_Model DeliveryInfo, UserInfo userModel, ref string strErrMsg) { try { var sap_comm = SAP_Common.SAP_Common.CreateInstance(); string strMaterialDoc = string.Empty; string functionName = "ZBAPI_GOODSMVT_CREATE_WX"; Dictionary <string, string> lstParameters = new Dictionary <string, string>(); Dictionary <string, Dictionary <string, object> > lstStructures = new Dictionary <string, Dictionary <string, object> >(); Dictionary <string, object> header = new Dictionary <string, object>(); header.Add("PSTNG_DATE", DateTime.Now.ToString("yyyy-MM-dd"));//.ToString("yyyy-MM-dd HH:mm:ss") header.Add("DOC_DATE", DateTime.Now.ToString("yyyy-MM-dd")); header.Add("REF_DOC_NO", DeliveryInfo.DeliveryNo); header.Add("BILL_OF_LADING", string.Empty); header.Add("GR_GI_SLIP_NO", userModel.UserName); header.Add("PR_UNAME", string.Empty); header.Add("HEADER_TXT", DeliveryInfo.OsDeliveryRemark); header.Add("BAR_CODE", string.Empty); lstStructures.Add("GOODSMVT_HEADER", header); Dictionary <string, string> ParametersOutput = null; Dictionary <string, IRfcStructure> StructureOutputs = new Dictionary <string, IRfcStructure>(); StructureOutputs.Add("GOODSMVT_HEADRET_01", null); StructureOutputs.Add("GOODSMVT_HEADRET_04", null); Dictionary <string, IRfcTable> rtbsOutput = new Dictionary <string, IRfcTable>(); rtbsOutput.Add("RETURN", null); Dictionary <string, IRfcTable> lstTable = new Dictionary <string, IRfcTable>(); lstTable.Add("GOODSMVT_ITEM_01", CreateIrfcTableForDeliveryInfo(sap_comm, DeliveryInfo, userModel, functionName, "GOODSMVT_ITEM_01")); lstTable.Add("GOODSMVT_ITEM_04", CreateIrfcTableForPOInfo(sap_comm, DeliveryInfo, userModel, functionName, "GOODSMVT_ITEM_04")); string strMaterialNo = string.Empty; bool bSucc = sap_comm.PostSapFunctionFromListTable(functionName, lstParameters, lstStructures, ref ParametersOutput, ref StructureOutputs, ref rtbsOutput , lstTable, ref strErrMsg); if (bSucc == true) { DeliveryInfo.lstMaterialDoc = new List <MaterialDocument.MaterialDoc_Model>(); MaterialDocument.MaterialDoc_Model MDM = new MaterialDocument.MaterialDoc_Model(); MDM = sap_comm.GetMaterialDoc(70, StructureOutputs["GOODSMVT_HEADRET_01"]); DeliveryInfo.lstMaterialDoc.Add(MDM); MaterialDocument.MaterialDoc_Model MDMPO = new MaterialDocument.MaterialDoc_Model(); MDMPO = sap_comm.GetMaterialDoc(70, StructureOutputs["GOODSMVT_HEADRET_04"]); DeliveryInfo.lstMaterialDoc.Add(MDMPO); } return(bSucc); } catch (RfcAbapRuntimeException ex) { throw ex; } }
private void CreateHeader(ref DeliveryReceive_Model DeliveryModel, IRfcStructure iRfcStructure) { if (iRfcStructure != null) { DeliveryModel.VoucherNo = iRfcStructure.GetString("EBELN"); DeliveryModel.SupCode = iRfcStructure.GetString("LIFNR"); DeliveryModel.SupName = iRfcStructure.GetString("NAME1"); } }
private void GetQueryMain() { if (queryMain == null) { queryMain = new DeliveryReceive_Model(); bsMain.DataSource = queryMain; } queryMain.DeliveryNo = txtDeliveryNo.Text.Trim(); //queryMain.Operator = Common_Var.CurrentUser.UserNo; }
public FrmQuality(DeliveryReceive_Model DeliveryModel, List <DeliveryReceiveDetail_Model> lstDeliveryDetails) { InitializeComponent(); this.bsDelivery.DataSource = DeliveryModel; DeliveryModel.lstDeliveryDetail = lstDeliveryDetails; this.bindListDeliveryDetails = new System.ComponentModel.BindingList <DeliveryReceiveDetail_Model>(DeliveryModel.lstDeliveryDetail); this.dgvList.DataSource = this.bindListDeliveryDetails; this.DeliveryModel = DeliveryModel; this.dgvList.EditMode = DataGridViewEditMode.EditOnKeystrokeOrF2; }
private void InitMainQuery() { _serverMainPage = new DividPage(); queryMain = new DeliveryReceive_Model(); lstMain = new List <DeliveryReceive_Model>(); pageList.GetShowCountsByDGV(dgvList); pageDetail.GetShowCountsByDGV(dgvDetail); bsMain.DataSource = queryMain; }
private List <DeliveryReceiveDetail_Model> CreateProductionDetails(ref DeliveryReceive_Model ProductionModel, IRfcTable rtb) { List <DeliveryReceiveDetail_Model> lstPrdReturnDetails = null; if (rtb != null) { if (rtb.RowCount > 0) { lstPrdReturnDetails = new List <DeliveryReceiveDetail_Model>(); } foreach (var itemRtb in rtb) { ProductionModel.Plant = itemRtb.GetString("WERKS"); ProductionModel.PlantName = itemRtb.GetString("NAME1"); ProductionModel.MoveType = string.Empty; DeliveryReceiveDetail_Model item = new DeliveryReceiveDetail_Model(); item.DeliveryNo = itemRtb.GetString("AUFNR").TrimStart('0'); item.CreateTime = string.Empty; item.RowNo = string.Empty; item.VoucherNo = itemRtb.GetString("AUFNR").TrimStart('0'); item.MaterialNo = itemRtb.GetString("MATNR"); item.MaterialDesc = itemRtb.GetString("MAKTX"); item.ClaimArriveTime = string.Empty; item.Unit = string.Empty; item.CurrentlyDeliveryNum = itemRtb.GetInt("GAMNG"); item.ClaimDeliveryNum = 0; item.ReadyDeliveryNum = 0; item.WaitDeliveryNum = 0; item.InRoadDeliveryNum = 0; item.ReceiveTime = string.Empty; item.DeliveryAddress = string.Empty; item.CorrespondDepartment = string.Empty; item.WorkCode = string.Empty; item.JingxinName = string.Empty; item.Plant = itemRtb.GetString("WERKS"); item.PlantName = itemRtb.GetString("NAME1"); item.PrdVersion = string.Empty; item.ReceiveQty = 0; item.IsUrgent = 1; item.PackCount = 0; item.StorageLoc = string.Empty; item.PrdReturnReason = string.Empty; item.Barcode = string.Empty; item.SerialNo = string.Empty; item.ReserveNumber = string.Empty; item.ReserveRowNo = string.Empty; item.OldReceiveQty = itemRtb.GetInt("WEMNG"); item.TrackNo = string.Empty; lstPrdReturnDetails.Add(item); } } return(lstPrdReturnDetails); }
public override string CreateMessage(DeliveryReceive_Model DeliveryInfo, bool bTask, string strTaskErrMsg) { if (bTask) { return("上架任务创建成功!" + "\r\n上架任务号:" + DeliveryInfo.TaskNo); } else { return("上架任务创建失败:" + strTaskErrMsg); } }
public bool GetProductionReturnInfoForSAP(string strPrdReturnNo, ref DeliveryReceive_Model PrdReturnModel, ref string strErrMsg) { try { var sap_comm = SAP_Common.SAP_Common.CreateInstance(); IRfcTable rtbInput = null; string tableindex = null; string functionName = "ZLS_TL_DETAIL_READ"; Dictionary <string, string> lstParameters = new Dictionary <string, string>(); lstParameters.Add("BEDNR", strPrdReturnNo); Dictionary <string, Dictionary <string, object> > lstStructures = null; List <string> ParameterNamesForOut = null; Dictionary <string, string> ParametersOutput = null; List <string> StructureNamesForOut = null; Dictionary <string, IRfcStructure> StructureOutputs = null; List <string> tableNamesForOut = new List <string>() { "IT_SCTL", "RETURN" }; Dictionary <string, IRfcTable> rtbsOutput = null; bool bSucc = sap_comm.getSapFunctionToTable(functionName, lstParameters, lstStructures, rtbInput, tableindex, ParameterNamesForOut, out ParametersOutput, StructureNamesForOut, out StructureOutputs, tableNamesForOut, out rtbsOutput, ref strErrMsg); if (bSucc == false) { return(bSucc); } PrdReturnModel.DeliveryNo = strPrdReturnNo; PrdReturnModel.VoucherType = 30; PrdReturnModel.IsReceivePost = 1; //不过账 PrdReturnModel.IsShelvePost = 2; PrdReturnModel.IsQuality = 1; //不质检 PrdReturnModel.SupName = string.Empty; PrdReturnModel.SupCode = string.Empty; //PrdReturnModel.Plant = string.Empty; PrdReturnModel.PlantName = string.Empty; PrdReturnModel.materialDocModel = new MaterialDocument.MaterialDoc_Model() { MaterialDoc = string.Empty, MaterialDocDate = string.Empty }; //PrdReturnModel.materialDocModel.MaterialDoc = string.Empty; PrdReturnModel.lstDeliveryDetail = CreateProductionReturnDetails(ref PrdReturnModel, rtbsOutput["IT_SCTL"]); return(true); } catch (Exception ex) { throw ex; } }
//public bool PostOutSideByDeliveryToSAP(ref DeliveryReceive_Model DeliveryInfo, UserInfo userModel, ref string strErrMsg) //{ // try // { // bool bSucc = false; // OutSideReceive_SAP ORSAP = new OutSideReceive_SAP(); // DeliveryReceive_DB DRD = new DeliveryReceive_DB(); // if (DRD.CheckDeliveryNoIsExist(DeliveryInfo.DeliveryNo) >= 1) // { // strErrMsg = "送货单已经收货,送货单号:" + DeliveryInfo.DeliveryNo; // return false; // } // if (DeliveryInfo.lstDeliveryDetail.Where(t => t.OKSelect == true).Count() == 0) // { // strErrMsg = "请选中过账行!"; // return false; // } // DeliveryInfo.lstDeliveryDetail = DeliveryInfo.lstDeliveryDetail.Where(t => t.OKSelect == true).ToList(); // bSucc = ORSAP.PostOutSideByDeliveryToSAP(ref DeliveryInfo, userModel, ref strErrMsg); // if (bSucc == false) // { // return bSucc; // } // bSucc = ORSAP.PostOutSideByPOToSAP(ref DeliveryInfo, userModel, ref strErrMsg); // if (bSucc == true) // { // strErrMsg = GetMaterialDoc(DeliveryInfo); // } // else // { // return bSucc; // } // DeliveryInfo.VoucherType = 70;//外协送货单 // DeliveryInfo.IsQuality = 1; // DeliveryInfo.IsReceivePost = 2; // DeliveryInfo.IsShelvePost = 1; // string strSaveMsg = string.Empty; // string strOutSideDelivery = XMLUtil.XmlUtil.Serializer(typeof(DeliveryReceive_Model), DeliveryInfo); // OutSideReceive_DB OSRD=new OutSideReceive_DB(); // TOOL.WriteLogMethod.WriteLog("方法:PostOutSideByDeliveryToSAP---操作人:" + userModel.UserName + strOutSideDelivery); // //过账成功,插入数据库 // bSucc=OSRD.SaveOutSideDeliveryInfo(strOutSideDelivery, userModel, ref strSaveMsg); // if (bSucc == false) // { // strErrMsg = strErrMsg + "\r\n" + "数据写入失败:" + strSaveMsg; // } // return bSucc; // } // catch (Exception ex) // { // strErrMsg = "Web异常:" + ex.Message; // return false; // } //} //public bool PostOutSideByDeliveryAndPOToSAP(ref DeliveryReceive_Model DeliveryInfo, UserInfo userModel, ref string strErrMsg) //{ // try // { // bool bSucc = false; // OutSideReceive_SAP ORSAP = new OutSideReceive_SAP(); // DeliveryReceive_DB DRD = new DeliveryReceive_DB(); // if (DRD.CheckDeliveryNoIsExist(DeliveryInfo.DeliveryNo) >= 1) // { // strErrMsg = "送货单已经收货,送货单号:" + DeliveryInfo.DeliveryNo; // return false; // } // if (DeliveryInfo.lstDeliveryDetail.Where(t => t.OKSelect == true).Count() == 0) // { // strErrMsg = "请选中过账行!"; // return false; // } // DeliveryInfo.lstDeliveryDetail = DeliveryInfo.lstDeliveryDetail.Where(t => t.OKSelect == true).ToList(); // bSucc = ORSAP.PostOutSideByDeliveryAndPOToSAP(ref DeliveryInfo, userModel, ref strErrMsg); // if (bSucc == false) // { // return bSucc; // } // strErrMsg = GetMaterialDoc(DeliveryInfo); // DeliveryInfo.VoucherType = 70;//外协送货单 // DeliveryInfo.IsQuality = 1; // DeliveryInfo.IsReceivePost = 2; // DeliveryInfo.IsShelvePost = 1; // string strSaveMsg = string.Empty; // string strOutSideDelivery = XMLUtil.XmlUtil.Serializer(typeof(DeliveryReceive_Model), DeliveryInfo); // OutSideReceive_DB OSRD = new OutSideReceive_DB(); // TOOL.WriteLogMethod.WriteLog("方法:PostOutSideByDeliveryAndPOToSAP---操作人:" + userModel.UserName + strOutSideDelivery); // //过账成功,插入数据库 // bSucc = OSRD.SaveOutSideDeliveryInfo(strOutSideDelivery, userModel, ref strSaveMsg); // if (bSucc == false) // { // strErrMsg = strErrMsg + "\r\n" + "数据写入失败:" + strSaveMsg; // } // return bSucc; // } // catch (Exception ex) // { // strErrMsg = "Web异常:" + ex.Message; // return false; // } //} public string GetMaterialDoc(DeliveryReceive_Model DeliveryInfo) { string strMsgDoc = "过账成功!\r\n"; foreach (var item in DeliveryInfo.lstMaterialDoc) { strMsgDoc = strMsgDoc + "物料凭证:" + item.MaterialDoc + "\r\n" + "凭证年度:" + item.MaterialDocDate + "\r\n"; } return(strMsgDoc); }
//public bool TaskInfoPostToSAP(ref DeliveryReceive_Model PrdReturnModel, UserInfo userModel, ref string strErrMsg) //{ // try // { // bool bSucc = false; // ProductionReturn_SAP PSAP = new ProductionReturn_SAP(); // //var lstNewPrdReturnDetails = PrdReturnModel.lstDeliveryDetail.GroupBy(t => t.TrackNo); // //foreach (var item in lstNewPrdReturnDetails) // //{ // // PrdReturnModel.lstDeliveryDetail.Where(t => t.TrackNo == item.FirstOrDefault().TrackNo); // // bSucc = PSAP.PostProductionReturnInfoToSAP(ref PrdReturnModel, userModel, ref strErrMsg); // //} // //return bSucc; // return PSAP.PostProductionReturnInfoToSAP(ref PrdReturnModel, userModel, ref strErrMsg); // } // catch (Exception ex) // { // strErrMsg = "Web异常:" + ex; // return false; // } //} public override bool CreateReceiveAndShelveTask(ref DeliveryReceive_Model DeliveryInfo, UserInfo userModel, ref string strErrMsg) { try { bool bSucc = false; string strTaskNo = string.Empty; ReceiveGoods_DB RGD = new ReceiveGoods_DB(); string strReceiveGoodsXml = XMLUtil.XmlUtil.Serializer(typeof(DeliveryReceive_Model), DeliveryInfo); string strUserWareHouseXml = XMLUtil.XmlUtil.Serializer(typeof(UserInfo), userModel); TOOL.WriteLogMethod.WriteLog("方法:CreateReceiveAndShelveTask--PrdRet---操作人:" + userModel.UserName + strReceiveGoodsXml); bSucc = RGD.CreateReceiveAndShelveTask(strReceiveGoodsXml, strUserWareHouseXml, userModel, ref strTaskNo, ref strErrMsg); if (bSucc == true) { DeliveryInfo.TaskNo = strTaskNo; } return(bSucc); //DeliveryInfo.lstDeliveryDetail = DeliveryInfo.lstDeliveryDetail.GroupBy(s => s.MaterialNo).Select(g => new DeliveryReceiveDetail_Model() //{ // MaterialNo = g.Key, // MaterialDesc = g.FirstOrDefault().MaterialDesc, // ReceiveQty = g.Sum(a => a.ReceiveQty), // PackCount = g.Sum(a => a.PackCount), // CurrentlyDeliveryNum = g.Sum(a=>a.CurrentlyDeliveryNum), // VoucherNo = g.FirstOrDefault().VoucherNo, // Unit = g.FirstOrDefault().Unit, // Plant = g.FirstOrDefault().Plant, // RowNo=string.Empty,ClaimArriveTime = g.FirstOrDefault().ClaimArriveTime, // ClaimDeliveryNum = g.FirstOrDefault().ClaimDeliveryNum, // ReadyDeliveryNum = g.FirstOrDefault().ReadyDeliveryNum, // WaitDeliveryNum = g.FirstOrDefault().WaitDeliveryNum, // InRoadDeliveryNum = g.FirstOrDefault().InRoadDeliveryNum, // ReceiveTime = g.FirstOrDefault().ReceiveTime, // DeliveryAddress = g.FirstOrDefault().DeliveryAddress, // CorrespondDepartment = g.FirstOrDefault().CorrespondDepartment, // WorkCode = g.FirstOrDefault().WorkCode, // JingxinName = g.FirstOrDefault().JingxinName, // PlantName = g.FirstOrDefault().PlantName, // PrdVersion = g.FirstOrDefault().PrdVersion, // StorageLoc =g.FirstOrDefault().StorageLoc, // IsUrgent = g.FirstOrDefault().IsUrgent, // PrdReturnReason = g.FirstOrDefault().PrdReturnReason, //}).ToList(); } catch (Exception ex) { throw ex; } }
public bool PrintQuality(DeliveryReceive_Model deliveryMdl, UserInfo userModel, ref string strErrMsg) { ReceiveGoods_DB RGD = new ReceiveGoods_DB(); if (!RGD.PrintQuality(deliveryMdl, userModel, ref strErrMsg)) { strErrMsg = "更新打印次数失败!" + strErrMsg; return(false); } return(true); }
public bool PostProductionReturnInfoToSAP(ref DeliveryReceive_Model PrdReturnModel, UserInfo userModel, ref string strErrMsg) { try { var sap_comm = SAP_Common.SAP_Common.CreateInstance(); string strMaterialDoc = string.Empty; string functionName = "ZBAPI_GOODSMVT_CREATE_03"; Dictionary <string, string> lstParameters = new Dictionary <string, string>(); lstParameters.Add("I_BEDNR", PrdReturnModel.DeliveryNo); Dictionary <string, Dictionary <string, object> > lstStructures = new Dictionary <string, Dictionary <string, object> >(); Dictionary <string, object> header = new Dictionary <string, object>(); header.Add("PSTNG_DATE", DateTime.Now.ToString("yyyy-MM-dd")); header.Add("DOC_DATE", DateTime.Now.ToString("yyyy-MM-dd")); header.Add("REF_DOC_NO", PrdReturnModel.DeliveryNo); header.Add("BILL_OF_LADING", string.Empty); header.Add("GR_GI_SLIP_NO", userModel.UserName); header.Add("PR_UNAME", string.Empty); header.Add("HEADER_TXT", string.Empty); header.Add("BAR_CODE", string.Empty); lstStructures.Add("GOODSMVT_HEADER", header); Dictionary <string, string> ParametersOutput = null; Dictionary <string, IRfcStructure> StructureOutputs = new Dictionary <string, IRfcStructure>(); StructureOutputs.Add("GOODSMVT_HEADRET", null); Dictionary <string, IRfcTable> rtbsOutput = new Dictionary <string, IRfcTable>(); rtbsOutput.Add("RETURN", null); string strRfcTableName = "GOODSMVT_ITEM"; IRfcTable rfcTable = CreateIrfcTableForProductionReturnInfo(sap_comm, PrdReturnModel, userModel, functionName, strRfcTableName); string strMaterialNo = string.Empty; bool bSucc = sap_comm.PostSapFunctionFromTable(functionName, lstParameters, lstStructures, ref ParametersOutput, ref StructureOutputs, ref rtbsOutput , "GOODSMVT_ITEM", rfcTable, ref strErrMsg); if (bSucc == true) { //PrdReturnModel.materialDocModel = new MaterialDoc_Model(); PrdReturnModel.materialDocModel = sap_comm.GetMaterialDoc(30, StructureOutputs["GOODSMVT_HEADRET"]); } return(bSucc); } catch (RfcAbapRuntimeException ex) { throw ex; } }
private void InitMainQuery() { supplier = null; _serverMainPage = new DividPage(); queryMain = new DeliveryReceive_Model(); lstMain = new BindingList <DeliveryReceiveDetail_Model>(); bsMain.DataSource = queryMain; txtOutSideSupCode.Text = ""; txtOutSideSupCode.Enabled = false; cbxSelectAll.Width = colSelect.Width; cbxSelectAll.BackColor = dgvList.ColumnHeadersDefaultCellStyle.BackColor; cbxSelectAll.Font = dgvList.ColumnHeadersDefaultCellStyle.Font; }
/// <summary> /// 获取检验通知书表体数据 /// </summary> /// <param name="DeliveryInfo"></param> /// <param name="strErrMsg"></param> /// <returns></returns> public bool GetQualityDetailInfo(DeliveryReceive_Model DeliveryInfo, ref List <DeliveryReceiveDetail_Model> lstDeliveryDetailInfo, UserInfo userModel, ref string strErrMsg) { try { ReceiveGoods_DB RGD = new ReceiveGoods_DB(); lstDeliveryDetailInfo = RGD.GetQualityDetailInfo(DeliveryInfo); if (lstDeliveryDetailInfo == null || lstDeliveryDetailInfo.Count == 0) { strErrMsg = "没有获取到质检数据!"; return(false); } return(true); } catch (Exception ex) { strErrMsg = "Web异常:" + ex.Message; return(false); } }
private void PrintLabel() { if (lstMain == null || lstMain.Count <= 0) { return; } if (lstDetails == null || lstDetails.Count <= 0) { return; } if (!Common.Common_Func.CheckDgvOper(dgvDetail)) { return; } List <DeliveryReceiveDetail_Model> lstPrintDetail = new List <DeliveryReceiveDetail_Model>(); lstPrintDetail = lstDetails.FindAll(delegate(DeliveryReceiveDetail_Model temp) { return(temp.ReceiveQty >= 1); }); if (lstPrintDetail == null || lstPrintDetail.Count <= 0) { MessageBox.Show("当前单据没有任何行收货", "提示"); return; } int PrintRow = 0; foreach (DeliveryReceiveDetail_Model m in lstPrintDetail) { m.RowNumber = ++PrintRow; } string strError = string.Empty; DeliveryReceive_Model header = lstMain[dgvList.CurrentCell.RowIndex]; //using (ReportView.FrmCensorshipPrinting frm = new ReportView.FrmCensorshipPrinting(header, lstPrintDetail)) //{ // frm.ShowDialog(); //} ReportView.FrmCensorshipPrinting frm = new ReportView.FrmCensorshipPrinting(header, lstPrintDetail); Common.Common_Func.ShowTabPageForm(this, frm, 2); }
/// <summary> /// 获取SAP PO信息 /// </summary> /// <param name="strPONo"></param> /// <param name="DelivryModel"></param> /// <param name="strErrMsg"></param> public bool GetPOInfoForSAP(string strPONo, ref DeliveryReceive_Model DelivryModel, ref string strErrMsg) { try { var sap_comm = SAP_Common.SAP_Common.CreateInstance(); IRfcTable rtbInput = null; string tableindex = null; string functionName = "ZLS_EBELN_READ"; Dictionary <string, string> lstParameters = new Dictionary <string, string>(); lstParameters.Add("I_EBELN", strPONo); Dictionary <string, Dictionary <string, object> > lstStructures = null; List <string> ParameterNamesForOut = null; Dictionary <string, string> ParametersOutput = null; List <string> StructureNamesForOut = new List <string>() { "EBELN_HEAD" }; Dictionary <string, IRfcStructure> StructureOutputs = null; List <string> tableNamesForOut = new List <string>() { "E_EBELN", "RETURN" }; Dictionary <string, IRfcTable> rtbsOutput = null; bool bSucc = sap_comm.getSapFunctionToTable(functionName, lstParameters, lstStructures, rtbInput, tableindex, ParameterNamesForOut, out ParametersOutput, StructureNamesForOut, out StructureOutputs, tableNamesForOut, out rtbsOutput, ref strErrMsg); if (bSucc == false) { return(bSucc); } CreateHeader(ref DelivryModel, StructureOutputs["EBELN_HEAD"]); DelivryModel.lstDeliveryDetail = CreateDetail(rtbsOutput["E_EBELN"]); return(true); } catch (Exception ex) { throw ex; } }
public bool GetOutSideByDeliveryToSRM(ref DeliveryReceive_Model DeliveryModel, UserInfo userModel, ref string strErrMsg) { try { DeliveryReceive_DB DRD = new DeliveryReceive_DB(); if (DRD.CheckDeliveryNoIsExist(DeliveryModel.DeliveryNo) >= 1) { strErrMsg = "送货单已经收货,送货单号:" + DeliveryModel.DeliveryNo; return(false); } DeliveryReceive_Func DRF = new DeliveryReceive_Func(); return(DRF.GetDeliveryInfoToSRM(ref DeliveryModel, userModel, ref strErrMsg)); } catch (Exception ex) { strErrMsg = "Web异常:" + ex.Message; return(false); } }
public DeliveryReceive_Model GetTaskInfoByID(string strTaskID, UserInfo userModel) { try { DeliveryReceive_Model deliveryModel = new DeliveryReceive_Model(); deliveryModel.lstDeliveryDetail = new List <DeliveryReceiveDetail_Model>(); string strSql = string.Format("select * from v_gettaskinfobyid where id = '{0}' and operatoruserno = '{1}'", strTaskID, userModel.UserNo); using (SqlDataReader dr = OperationSql.ExecuteReader(System.Data.CommandType.Text, strSql)) { while (dr.Read()) { deliveryModel.ID = dr["id"].ToInt32(); deliveryModel.VoucherType = dr["VoucherType"].ToInt32(); deliveryModel.IsShelvePost = dr["IsShelvePost"].ToInt32(); deliveryModel.VoucherNo = dr["taskno"].ToDBString(); deliveryModel.DeliveryNo = dr["deliveryno"].ToDBString(); deliveryModel.MaterialDoc = dr["MaterialDoc"].ToDBString(); deliveryModel.DocDate = dr["docdate"].ToDateTimeNull(); deliveryModel.MoveType = dr["movetype"].ToDBString(); DeliveryReceiveDetail_Model deliveryDetailModel = new DeliveryReceiveDetail_Model(); deliveryDetailModel.ID = dr["taskdetailid"].ToInt32(); deliveryDetailModel.Plant = dr["plant"].ToDBString(); deliveryDetailModel.MaterialNo = dr["materialno"].ToDBString(); deliveryDetailModel.CurrentPostQty = dr["currentpostqty"].ToDecimal(); deliveryDetailModel.VoucherNo = dr["VoucherNo"].ToDBString(); deliveryDetailModel.RowNo = dr["RowNo"].ToDBString(); deliveryDetailModel.ReserveNumber = dr["ReserveNumber"].ToDBString(); deliveryDetailModel.TrackNo = dr["trackno"].ToDBString(); deliveryDetailModel.ReserveRowNo = dr["ReserveRowNo"].ToDBString(); deliveryModel.lstDeliveryDetail.Add(deliveryDetailModel); } } return(deliveryModel); } catch (Exception ex) { throw new Exception(ex.Message + ex.TargetSite); } }
private DeliveryReceive_Model GetDeliveryReceive_ModelFromDataReader(SqlDataReader dr) { DeliveryReceive_Model model = new DeliveryReceive_Model(); model.ID = dr["ID"].ToInt32(); model.CreateDate = dr["createdate"].ToDateTime(); model.DocDate = dr["PostDate"].ToDateTime(); model.PostDate = dr["PostDate"].ToDateTime(); model.VoucherNo = dr["VoucherNo"].ToDBString(); model.DeliveryNo = dr["DeliveryNo"].ToDBString(); model.SupCode = dr["SupplierNo"].ToDBString(); model.SupName = dr["SupplierName"].ToDBString(); model.Plant = dr["Plant"].ToDBString(); model.MoveType = dr["MoveType"].ToDBString(); model.MaterialDoc = dr["MaterialDoc"].ToDBString(); model.PrintedQty = dr["PrintedQty"].ToInt32(); model.PrintTime = dr["PrintTime"].ToDateTimeNull(); model.Barcode = Common_Func.StrToCode128B(model.MaterialDoc); return(model); }
public bool SaveQualityDetailInfo(DeliveryReceive_Model DeliveryModel, UserInfo userModel, ref string strErrMsg) { try { if (DeliveryModel.lstDeliveryDetail == null || DeliveryModel.lstDeliveryDetail.Count == 0) { strErrMsg = "没有质检数据!"; return(false); } if (DeliveryModel.lstDeliveryDetail.Where(t => t.OKSelect == true).Count() == 0) { strErrMsg = "请选中质检行!"; return(false); } if (DeliveryModel.lstDeliveryDetail.Where(t => t.CurrentQualityQty > 0 || t.CurrentUnQualityQty > 0).Count() == 0) { strErrMsg = "合格数量和不合格数量都为零,不能保存!"; return(false); } if (CheckQualityQty(DeliveryModel.lstDeliveryDetail.Where(t => t.CurrentQualityQty > 0 || t.CurrentUnQualityQty > 0).ToList(), ref strErrMsg) == false) { return(false); } DeliveryModel.lstDeliveryDetail = DeliveryModel.lstDeliveryDetail.Where(t => t.OKSelect == true).ToList(); string strDeliveryDetailXml = XMLUtil.XmlUtil.Serializer(typeof(DeliveryReceive_Model), DeliveryModel); TOOL.WriteLogMethod.WriteLog("方法:SaveQualityDetailInfo" + strDeliveryDetailXml); ReceiveGoods_DB RGD = new ReceiveGoods_DB(); return(RGD.SaveQualityDetailInfo(strDeliveryDetailXml, userModel, ref strErrMsg)); } catch (Exception ex) { strErrMsg = ex.Message; return(false); } }
private IRfcTable CreateIrfcTableForPOInfo(SAP_Common.SAP_Common sap_comm, DeliveryReceive_Model DeliveryInfo, UserInfo userModel, string functionName, string strRfcTableName) { IRfcTable rfcTable = sap_comm.CreateIrfcTable(functionName, strRfcTableName); //过账前,过滤掉收货数量为零的数据 var lstDeliveryDetail = DeliveryInfo.lstDeliveryDetail.Where(t => t.ReceiveQty > 0).ToList(); foreach (var item in lstDeliveryDetail) { rfcTable.Insert(); //rfcTable.CurrentRow.SetValue("ORDERID", item.VoucherNo); rfcTable.CurrentRow.SetValue("MATERIAL", item.MaterialNo); rfcTable.CurrentRow.SetValue("PLANT", item.Plant); rfcTable.CurrentRow.SetValue("STGE_LOC", item.StorageLoc); //rfcTable.CurrentRow.SetValue("PO_ITEM", item.RowNo); rfcTable.CurrentRow.SetValue("MOVE_TYPE", "541"); rfcTable.CurrentRow.SetValue("ENTRY_QNT", item.ReceiveQty); rfcTable.CurrentRow.SetValue("BASE_UOM", item.Unit); rfcTable.CurrentRow.SetValue("VENDOR", DeliveryInfo.OutSideSupCode.PadLeft(10, '0')); //rfcTable.CurrentRow.SetValue("MVT_IND", "B"); rfcTable.CurrentRow.SetValue("GR_RCPT", string.Empty); } return(rfcTable); }
private void GetQueryMain() { if (queryMain == null) { queryMain = new DeliveryReceive_Model(); bsMain.DataSource = queryMain; } if (dtpStartDate.Checked) { queryMain.StartTime = dtpStartDate.Value; } else { queryMain.StartTime = null; } if (dtpEndDate.Checked) { queryMain.EndTime = dtpEndDate.Value; } else { queryMain.EndTime = null; } }
private void GetQueryDelivery() { if (DeliveryModel == null) { DeliveryModel = new DeliveryReceive_Model(); bsDelivery.DataSource = DeliveryModel; } if (dtpStartDate.Checked) { DeliveryModel.StartTime = dtpStartDate.Value; } else { DeliveryModel.StartTime = null; } if (dtpEndDate.Checked) { DeliveryModel.EndTime = dtpEndDate.Value; } else { DeliveryModel.EndTime = null; } }