/// <summary> /// 绑定Grid /// </summary> protected void BindGrid() { BArrangeBillBoxBB arrangeBillBoxBB = new BArrangeBillBoxBB(); DataSet ds = new DataSet(); try { string strWhere = this.StrWhere; if (!string.IsNullOrEmpty(Request.QueryString["arriveBillNo"])) { strWhere += " and arriveBillNo='" + Request.QueryString["arriveBillNo"].Replace("'", "''") + "'"; } if (!string.IsNullOrEmpty(Request.QueryString["financeBillNo"])) { strWhere += " and financeBillNo='" + Request.QueryString["financeBillNo"].Replace("'", "''") + "'"; } if (!string.IsNullOrEmpty(Request.QueryString["materialNo"])) { strWhere += " and materialNo='" + Request.QueryString["materialNo"].Replace("'", "''") + "'"; } ds = arrangeBillBoxBB.GetVList(strWhere); this.grid.DataSource = ds.Tables[0]; this.grid.DataBind(); //赋值记录条数、页面总数 this.Label3.Text = ds.Tables[0].Rows.Count.ToString(); this.Label2.Text = this.grid.PageCount.ToString(); this.currPage.Text = (this.grid.PageIndex + 1).ToString(); } finally { arrangeBillBoxBB.Dispose(); } }
public string GetPalletWareInfo(string strPalletNo) { string strWareLocatorNo = ""; BArrangeBillBoxBB arrangeBillBoxBB = new BArrangeBillBoxBB(); LWareBB wareBB = new LWareBB(); LWareLocatorBB wareLocatorBB = new LWareLocatorBB(); LMaterialBB materialBB = new LMaterialBB(); SCommBB commBB = new SCommBB(); try { DataTable dtArrangeBillBox = new DataTable(); DataTable dtWare = new DataTable(); DataTable dtWareLocator = new DataTable(); //获取托盘下的所有箱子 dtArrangeBillBox = arrangeBillBoxBB.GetVList("palletNo='" + strPalletNo + "' and isnull(wareNo,'')<>''").Tables[0]; if (dtArrangeBillBox.Rows.Count > 0) { string strFinanceBillSort = "", strFinanceBillNo = ""; strFinanceBillSort = dtArrangeBillBox.Rows[0]["financeBillSort"].ToString();//采购合同类型 strFinanceBillNo = dtArrangeBillBox.Rows[0]["financeBillNo"].ToString();//采购合同号 if (strFinanceBillSort == "按单" || strFinanceBillNo.IndexOf("EB16") == -1) { #region 按单 //按单的物料,放置在正式库的平面库区 dtWareLocator = wareLocatorBB.GetVList("wareSortNo='A' and wareType='03' and isUsing=0 and isDel=0").Tables[0]; if (dtWareLocator.Rows.Count > 0) { strWareLocatorNo = dtWareLocator.Rows[0]["wareNo"].ToString() + "," + dtWareLocator.Rows[0]["wareLocatorNo"].ToString();//库位 } #endregion 按单 } else if (strFinanceBillSort == "备货" || strFinanceBillNo.IndexOf("EB16") != -1) { #region 备货 string strMaterialNos = "", strUCodeNos = "", strWareSortNos = "B"; int materialNum = 1; DataTable dtMaterial = new DataTable(); //判断当前托盘是否存在多个物料 strMaterialNos = dtArrangeBillBox.Rows[0]["materialNo"].ToString();//物料编号 strUCodeNos = dtArrangeBillBox.Rows[0]["U_CodeNo"].ToString();//物料U_CodeNo foreach (DataRow row in dtArrangeBillBox.Rows) { if (strMaterialNos.IndexOf(row["materialNo"].ToString()) == -1) { materialNum++; strMaterialNos += "," + row["materialNo"].ToString();//物料编号 } if (strUCodeNos.IndexOf(row["U_CodeNo"].ToString()) == -1) { strUCodeNos += "," + row["U_CodeNo"].ToString();//物料U_CodeNo } } if (materialNum == 1)//托盘上只有一种物料 { dtMaterial = materialBB.GetList("materialNo='" + strMaterialNos + "'").Tables[0];//获取物料信息 strWareSortNos = dtMaterial.Rows[0]["wareSortNo"].ToString();//获取物料的货位分类 } else { foreach (DataRow row in dtArrangeBillBox.Rows) { dtMaterial = materialBB.GetList("materialNo='" + row["materialNo"].ToString() + "'").Tables[0];//获取物料信息 if (dtMaterial.Rows[0]["wareSortNo"].ToString() != "B")//查找货位分类为非高位货架所有类别 { if (strWareSortNos == "B")//如果当前类型为高位货架 { strWareSortNos = dtMaterial.Rows[0]["wareSortNo"].ToString();//货架分类赋新值 } else { if (strWareSortNos.IndexOf(dtMaterial.Rows[0]["wareSortNo"].ToString()) == -1) { strWareSortNos += "," + dtMaterial.Rows[0]["wareSortNo"].ToString(); } } } } } if (strWareSortNos == "D" || strWareSortNos == "E")//流利货架摆放不分库位,推荐到库区即可 { //获取推荐库区信息 dtWare = wareBB.GetVList("wareSortNo='" + strWareSortNos + "' and wareType='03' and isDel=0").Tables[0]; if (dtWare.Rows.Count > 0) { strWareLocatorNo = dtWare.Rows[0]["wareNo"].ToString() + ",";//库区 } } else//其他货架,推荐到库位 { //获取推荐库位信息 dtWareLocator = commBB.Query("exec Proc_GetSuggestWareLocator '" + strWareSortNos.Trim(',') + "','" + strUCodeNos.Trim(',') + "','" + strMaterialNos.Trim(',') + "'").Tables[0]; if (dtWareLocator.Rows.Count > 0) { strWareLocatorNo = dtWareLocator.Rows[0]["wareNo"].ToString() + "," + dtWareLocator.Rows[0]["wareLocatorNo"].ToString();//库位 } } #endregion 备货 } } } finally { arrangeBillBoxBB.Dispose(); wareBB.Dispose(); wareLocatorBB.Dispose(); materialBB.Dispose(); commBB.Dispose(); } return strWareLocatorNo; }
public DataTable GetUsingArrivePallet(string strArriveBillNo, string strFinanceBillNos, string strPalletIndexs) { BArrangeBillBoxBB arrangeBillBoxBB = new BArrangeBillBoxBB(); SCommBB commBB = new SCommBB(); try { DataTable dtArrangeBillDetail = new DataTable(); DataTable dtArrangeBillBoxBB = new DataTable(); DataTable dtPallet = new DataTable(); StringBuilder strSql = new StringBuilder(); DataRow myDataRow = null; DataColumn myDataColumn; dtPallet.TableName = "dtPallet"; //生成托盘条码号表托盘条码号列 myDataColumn = new DataColumn(); myDataColumn.DataType = System.Type.GetType("System.String"); myDataColumn.ColumnName = "palletNo"; dtPallet.Columns.Add(myDataColumn); //合计排托物料汇总 strSql.Append("select materialNo,sum(boxNum) as boxNum "); strSql.Append("from dbo.BArrangeBillDetail "); strSql.Append("where arriveBillNo='" + strArriveBillNo + "' and palletIndex in (" + strPalletIndexs + ") "); strSql.Append("group by materialNo"); dtArrangeBillDetail = commBB.Query(strSql.ToString()).Tables[0]; //获取到货单下所有未排托并且托盘未占用的的所有托盘 dtArrangeBillBoxBB = arrangeBillBoxBB.GetVList("arriveBillNo='" + strArriveBillNo + "' and '," + strFinanceBillNos + ",' like '%,'+financeBillNo+',%' and isBoxArrange=0 and isPalletUsing=0 and wareType='05'").Tables[0]; foreach (DataRow row in dtArrangeBillDetail.Rows) { string strMaterialNo = ""; int boxNum = 0; DataRow[] myDataRowArray = null; DataRow[] myDataRowArrayPallet = null; strMaterialNo = row["materialNo"].ToString(); boxNum = Convert.ToInt32(row["boxNum"]); for (int i = 0; i < boxNum; i++) { myDataRowArray = dtArrangeBillBoxBB.Select("materialNo='" + strMaterialNo + "' and isBoxArrange=0 and isPalletUsing=0"); if (myDataRowArray.Length == 0) { break; } else { myDataRowArray[0]["isBoxArrange"] = true; myDataRowArrayPallet = dtPallet.Select("palletNo='" + myDataRowArray[0]["palletNo"].ToString() + "'"); if (myDataRowArrayPallet.Length == 0) { //新增一个托盘 myDataRow = dtPallet.NewRow(); myDataRow["palletNo"] = myDataRowArray[0]["palletNo"].ToString(); dtPallet.Rows.Add(myDataRow); } } } } return dtPallet; } finally { arrangeBillBoxBB.Dispose(); commBB.Dispose(); } }
public string GetPalletNoByBoxNo(string strBoxNo) { BArrangeBillBoxBB arrangeBillBox = new BArrangeBillBoxBB(); try { DataTable dt = new DataTable(); dt = arrangeBillBox.GetVList("boxNo='" + strBoxNo + "'").Tables[0]; if (dt.Rows.Count > 0) { return dt.Rows[0]["palletNo"].ToString(); } return ""; } finally { arrangeBillBox.Dispose(); } }
public DataTable GetBoxByWhere(string strWhere) { BArrangeBillBoxBB arrangeBillBoxBB = new BArrangeBillBoxBB(); try { DataTable dt = new DataTable(); dt = arrangeBillBoxBB.GetVList(strWhere).Tables[0]; return dt; } finally { arrangeBillBoxBB.Dispose(); } }
public DataTable GetBoxByWareLocatorLeavingNum(string strWareLocatorNo) { BArrangeBillBoxBB arrangeBillBoxBB = new BArrangeBillBoxBB(); try { DataTable dt = new DataTable(); dt = arrangeBillBoxBB.GetVList("wareLocatorNo='" + strWareLocatorNo + "'").Tables[0]; return dt; } finally { arrangeBillBoxBB.Dispose(); } }
public DataTable GetBoxByPalletNo(string PalletNo) { BArrangeBillBoxBB arrangeBillBoxBB = new BArrangeBillBoxBB(); try { DataTable dt = new DataTable(); dt = arrangeBillBoxBB.GetVList("PalletNo='" + PalletNo + "'").Tables[0]; return dt; } finally { arrangeBillBoxBB.Dispose(); } }
/// <summary> /// 清空天托盘操作 首先判断托盘啥上是否有货 有货的话 是否有 wareNO,wareLocatorNO, /// 只是适应于一种情况 就是托盘上有货 但是没有库位的情况 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnClear_Click(object sender, EventArgs e) { if (txtClearPalletNO.Text.ToString() == "") { this.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert(\"托盘号不能为空!\");", true); return; } bool canClear = true; BArrangeBillBoxBB bb = new BArrangeBillBoxBB(); DataTable dt = bb.GetVList("PalletNo='" + txtClearPalletNO.Text.ToString().Trim().ToUpper() + "'").Tables[0]; if (dt.Rows.Count == 0) { this.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert(\"托盘上已经没有任何产品 不需要清空!\");", true); return; } else { for (int i = 0; i < dt.Rows.Count; i++) { if (dt.Rows[i]["wareNo"].ToString() != "" || dt.Rows[i]["wareLocatorNo"].ToString() != "") { canClear = false; break; } } if (!canClear) { this.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert(\"此托盘上的产品仍在仓库当中 请到库存报表当中查看详细!\");", true); return; } else { string command = "update BArrangeBillBox set palletNo = '' where palletNo = '" + txtClearPalletNO.Text.ToString().Trim().ToUpper() + "'"; SCommBB comm = new SCommBB(); try { comm.ExecuteSql(command); txtClearPalletNO.Text = ""; } catch (Exception ee) { this.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert(\"清理托盘失败 " + ee.Message + "!\");", true); } finally { comm.Dispose(); } } } }