using System; using System.Collections.Generic; using System.Text; using System.Data; using DBUtility; namespace SCM { //接口类 物料 public class ClsIF_Material_View : DBUtility.ClsGy_Base_View { // public Model.ClsGy_Material_Model omodel = new Model.ClsGy_Material_Model(); public List omodelList = new List(); SCM.WMSWeb.WebService1 oWeb = new SCM.WMSWeb.WebService1(); public ClsIF_Material_View() { base.MvarReportTitle = "物料设置"; base.MvarItemKey = "h_v_IF_Material"; base.SQLName = "Select HItemID,Hnumber 物料代码,Hname 物料名称,HModel 规格型号,HPicNo 图号,HUnitNumber 单位代码,Hunitname 计量单位,HUnitID from h_v_IF_Material "; base.SQLWhere = " where HStopflag=0 "; base.SQLOrder = " Order by HItemID"; base.SQLList = "Select top 50 * from " + MvarItemKey + " "; //下拉SQL base.SQLNameForDown = " Select top 30 HItemID,HNumber 物料代码,HName 物料名称,HModel 规格型号,HUnitNumber 单位代码,HUnitName 计量单位 from h_v_IF_Material "; //,HSubjoin 图号1,HSubjoin2 图号2,HColor 颜色 base.SQLOrderForDown = " Order by HNumber "; base.SQLWhereForDown = " where HStopflag=0 and HEndFlag<>0 "; //HlpInfoForBig base.sBillColName = "物料名称"; base.sBillColNumber = "物料代码"; base.sBillShowItem = " * "; base.sBillView = "h_v_IF_MaterialList"; base.sBillOrder = " order by 物料代码 desc "; } // public void Dispose() { GC.SuppressFinalize(this); } // //返回项目信息 public override bool GetInfoByID(Int64 sItemID) { DataSet DS ; try { oWeb.Url = ClsPub1.WEBSURL; DS = oWeb.getDataSetBySQL("Select * from " + MvarItemKey + " Where HItemID='" + sItemID + "'", MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo); if (DS.Tables[0].Rows.Count == 0) return false; else { return GetInfo(DS); } } catch (Exception e) { throw (e); } } //根据代码返回项目信息 public override bool GetInfoByNumber(string sNumber) { DataSet DS; try { oWeb.Url = ClsPub1.WEBSURL; DS = oWeb.getDataSetBySQL("Select * from " + MvarItemKey + " Where HNumber='" + sNumber + "'", MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo); if (DS.Tables[0].Rows.Count == 0) return false; else { return GetInfo(DS); } } catch (Exception e) { throw (e); } } //根据代码返回项目信息 public bool GetInfoByShortNum(string sShortNum) { DataSet DS; try { oWeb.Url = ClsPub1.WEBSURL; DS = oWeb.getDataSetBySQL("Select * from h_v_IF_Material Where HShortNumber='" + sShortNum + "'", MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo); if (DS.Tables[0].Rows.Count == 0) return false; else { return GetInfo(DS); } } catch (Exception e) { throw (e); } } //根据代码返回项目信息 public bool GetInfoByPicNo(string sPicNo) { DataSet DS; try { oWeb.Url = ClsPub1.WEBSURL; DS = oWeb.getDataSetBySQL("Select * from " + MvarItemKey + " Where HPicNo='" + sPicNo + "'", MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo); if (DS.Tables[0].Rows.Count == 0) return false; else { return GetInfo(DS); } } catch (Exception e) { throw (e); } } //得到该物料库存 public bool GetStockQty(Int64 HMaterID, ref string s) { try { DataSet DS; oWeb.Url = ClsPub1.WEBSURL; DS = oWeb.getDataSetBySQL("exec h_p_IF_GetMaterStockQty " + HMaterID.ToString() + ",0", "h_p_IF_GetMaterStockQty", ref DBUtility.ClsPub.sExeReturnInfo); if (DS.Tables[0].Rows.Count == 0) return false; else { s = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["sSQL"]); return true; } } catch (Exception e) { return false; } } //返回项目信息 public override bool GetInfo(DataSet DS) { try { omodel = new Model.ClsGy_Material_Model(); omodel.HItemID = Convert.ToInt64(DS.Tables[0].Rows[0]["HItemID"]); omodel.HNumber = DS.Tables[0].Rows[0]["HNumber"].ToString().Trim(); omodel.HName = DS.Tables[0].Rows[0]["HName"].ToString().Trim(); omodel.HModel = DS.Tables[0].Rows[0]["HModel"].ToString().Trim(); omodel.HUnitID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HUnitID"]); omodel.HUnitNumber = DS.Tables[0].Rows[0]["HUnitNumber"].ToString().Trim(); omodel.HUnitName = DS.Tables[0].Rows[0]["HUnitName"].ToString().Trim(); omodel.HShortNumber = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HShortNumber"]); omodel.HParentID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HParentID"]); omodel.HLevel = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HLevel"]); omodel.HEndFlag = DBUtility.ClsPub.isBool(DS.Tables[0].Rows[0]["HEndFlag"]); omodel.HStopflag = DBUtility.ClsPub.isBool(DS.Tables[0].Rows[0]["HStopflag"]); omodel.HBarCode = DS.Tables[0].Rows[0]["HBarCode"].ToString().Trim(); omodel.HPicNo = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HPicNo"]); omodel.HRemark = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"]); omodel.HQtyMin = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HMinPickQty"]); return true; } catch (Exception e) { throw (e); } } //帮助 public override bool RefreshView(string sLike) { try {// oWeb.Url = ClsPub1.WEBSURL; SCM.frmHlpInfo_View ofrm = new SCM.frmHlpInfo_View(); // string sSQL = SQLName + SQLWhere + sLike + SQLOrder; //编辑ofrm ofrm.sTitle = MvarReportTitle; ofrm.sBill = MvarItemKey; ofrm.txtFindInfo.Text = WherePart; // DataSet Ds; Ds = oWeb.getDataSetBySQL(sSQL, MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo); //oCn.RunProcReturn(sSQL, MvarItemKey); if (Ds == null || Ds.Tables[0].Rows.Count == 0) { return false; } //绑定 ofrm.grdShow.DataSource = Ds.Tables[0].DefaultView; Ds.Dispose(); Ds = null; ofrm.grdShow.SuspendLayout(); ofrm.grdShow.Columns[0].Visible = false; ofrm.ShowDialog(); //得到对应列 int HItemIDCol = 0; int HNumberCol = 1; int HNameCol = 2; int HModelCol = 3; // if (ofrm.OKTag == Pub_Class.ClsPub.Enum_OKTag.OKTag_OK) { if (ofrm.grdShow.CurrentRow == null) { return false; } this.omodel.HItemID = Pub_Class.ClsPub.isLong(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[0].Value); this.omodel.HNumber = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[1].Value); this.omodel.HName = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[2].Value); this.omodel.HModel = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[3].Value); this.omodel.HUnitID = DBUtility.ClsPub.isLong(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[7].Value.ToString()); this.omodel.HUnitNumber = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[5].Value); this.omodel.HUnitName = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[6].Value); } else { return false; } // ofrm.Dispose(); ofrm = null; // return true; } catch (Exception e) { throw (e); } } /// /// 基础资料帮助-大数据型 /// /// public virtual bool RefreshViewForBig(string sLike) { try {// oWeb.Url = ClsPub1.WEBSURL; SCM.frmHlpInfoForBig ofrm = new SCM.frmHlpInfoForBig(); // string sSQL = SQLName + SQLWhere + sLike + SQLOrder; //编辑ofrm ofrm.sTitle = MvarReportTitle; ofrm.sBill = sBillView; ofrm.txtFindInfo.Text = WherePart; ofrm.sOtherItem = sBillShowItem; ofrm.sNameColName = sBillColName; ofrm.sNumberColName = sBillColNumber; ofrm.sOrderItem = sBillOrder; ofrm.sLike = sLike; // DataSet Ds; Pub_Class.ClsSqlHelper oCn = new Pub_Class.ClsSqlHelper(); ofrm.grdShow.SuspendLayout(); ofrm.ShowDialog(); ////得到对应列 //DataSet Ds; //Ds = oWeb.getDataSetBySQL(sSQL, MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo); ////oCn.RunProcReturn(sSQL, MvarItemKey); //if (Ds == null || Ds.Tables[0].Rows.Count == 0) //{ // return false; //} ////绑定 //ofrm.grdShow.DataSource = Ds.Tables[0].DefaultView; //Ds.Dispose(); //Ds = null; //ofrm.grdShow.SuspendLayout(); //ofrm.grdShow.Columns[0].Visible = false; //ofrm.ShowDialog(); //得到对应列 int HItemIDCol = 0; int HNumberCol = 1; int HNameCol = 2; // if (ofrm.OKTag == Pub_Class.ClsPub.Enum_OKTag.OKTag_OK) { if (ofrm.grdShow.CurrentRow == null) { return false; } this.omodel.HItemID = Pub_Class.ClsPub.isLong(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[0].Value); this.omodel.HNumber = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[1].Value); this.omodel.HName = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[2].Value); this.omodel.HModel = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[3].Value); this.omodel.HUnitID = DBUtility.ClsPub.isLong(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[4].Value.ToString()); this.omodel.HUnitNumber = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[5].Value); this.omodel.HUnitName = DBUtility.ClsPub.isStrNull(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[6].Value); this.omodel.HQtyMin = DBUtility.ClsPub.isLong(ofrm.grdShow.Rows[ofrm.grdShow.CurrentRow.Index].Cells[7].Value.ToString()); } else { return false; } // ofrm.Dispose(); ofrm = null; // return true; } catch (Exception e) { throw (e); } } //审核代码合理性 public bool AllowNumber(string sCode) { sCode = sCode.Trim(); if (sCode == "") { return true; } ////第末位不能为【.】 //if (sCode.Substring(sCode.Length - 1, 1) == ".") //{ // return false; //} ////第一位不能为【.】 //if (sCode.Substring(0, 1) == ".") //{ // return false; //} //不能包含【.】 if (sCode.Contains(".")) { return false; } return true; } //根据代码返回项目信息 根据图号 public bool GetInfoByChartNum(string sShortNum) { DataSet DS; try { oWeb.Url = ClsPub1.WEBSURL; //如果存在【.】则替换为【。】 sShortNum = sShortNum.Replace(Convert.ToChar("."), Convert.ToChar("。")); DS = oWeb.getDataSetBySQL("Select HItemID,HNumber,Hname,HModel,HUnitID,HUnitNumber,HUnitName,HErpclsID,HParentID,HPicNo,HShortNumber,HUnitGroupID,HRemark from h_v_IF_Material Where HStopflag=0 and HPicNo='" + sShortNum + "'", MvarItemKey, ref DBUtility.ClsPub.sExeReturnInfo); if (DS.Tables[0].Rows.Count == 0 || DS.Tables[0].Rows.Count >=2) //必须是唯一的图号 return false; else { return GetInfo(DS); //omodel.HItemID = Convert.ToInt64(DS.Tables[0].Rows[0]["HItemID"]); //omodel.HNumber = DS.Tables[0].Rows[0]["HNumber"].ToString().Trim(); //omodel.HName = DS.Tables[0].Rows[0]["Hname"].ToString().Trim(); //omodel.HModel = DS.Tables[0].Rows[0]["HModel"].ToString().Trim(); //omodel.HUnitID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HUnitID"]); //omodel.HUnitNumber = DS.Tables[0].Rows[0]["HUnitNumber"].ToString().Trim(); //omodel.HUnitName = DS.Tables[0].Rows[0]["HUnitName"].ToString().Trim(); //omodel.HErpclsID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HErpclsID"]); //omodel.HParentID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HParentID"]); //omodel.HPicNo = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HPicNo"]); //omodel.HShortNumber = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HShortNumber"]); //omodel.HUnitGroupID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HUnitGroupID"]); //omodel.HRemark = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"]); } } catch (Exception e) { throw (e); } } } }