/// <summary> /// 获取盘点单配件表已审核的单据配件信息 /// </summary> /// <param name="OrderIDDateDic">单据ID与日期对</param> /// <returns>返回待统计配件信息</returns> private DataTable GetCheckPart(Dictionary <string, long> OrderIDDateDic) { try { DataTable TemplateTable = null;//模版表 foreach (KeyValuePair <string, long> KVPair in OrderIDDateDic) { StringBuilder sbField = new StringBuilder(); sbField.AppendFormat("{0},{1},PtTb.{2},CheckTb.{3},CheckTb.{4},CheckTb.{5},CheckTb.{6},CheckTb.{7},CheckTb.{8},{9},{10}", WarehID, WarehName, PartID, PartsCode, PartName, PartSpec, PartBarCode, CarPartsCode, DrawNum, UnitName, PartProCount); string RelationTable = CheckPartTable + " as CheckTb left join " + PartsTable + " as PtTb on CheckTb.parts_code=PtTb.ser_parts_code "; //要查询的关联表名 TemplateTable = CommonFuncCall.CreatePartStatisticTable(); //获取要填充的公用表 //获取对应单据的配件信息 DataTable IOPartTable = DBHelper.GetTable("查询盘点单配件信息", RelationTable, sbField.ToString(), "stock_check_id='" + KVPair.Key.ToString() + "'", "", ""); for (int i = 0; i < IOPartTable.Rows.Count; i++) { DataRow dr = TemplateTable.NewRow(); //创建模版表行项 dr["OrderDate"] = KVPair.Value.ToString(); //单据日期 dr["WareHouseID"] = IOPartTable.Rows[i][WarehID].ToString(); //仓库ID dr["WareHouseName"] = IOPartTable.Rows[i][WarehName].ToString(); //仓库名称 dr["PartID"] = IOPartTable.Rows[i][PartID].ToString(); //配件ID dr["PartCode"] = IOPartTable.Rows[i][PartsCode].ToString(); //配件编码 dr["PartName"] = IOPartTable.Rows[i][PartName].ToString(); //配件名称 dr["PartSpec"] = IOPartTable.Rows[i][PartSpec].ToString(); //配件规格 dr["PartBarCode"] = IOPartTable.Rows[i][PartBarCode].ToString(); //配件条码 dr["CarPartsCode"] = IOPartTable.Rows[i][CarPartsCode].ToString(); //车厂编码 dr["DrawNum"] = IOPartTable.Rows[i][DrawNum].ToString(); //配件图号 dr["UnitName"] = IOPartTable.Rows[i][UnitName].ToString(); //单位名称 dr["PartCount"] = IOPartTable.Rows[i][PartProCount].ToString(); //配件数量 dr["StatisticType"] = (int)DataSources.EnumStatisticType.PaperCount; //统计类型 TemplateTable.Rows.Add(dr); //添加新的数据行项 } } return(TemplateTable); } catch (Exception ex) { MessageBoxEx.Show(ex.Message, "异常提示", MessageBoxButtons.OK, MessageBoxIcon.Question); return(null); } }
/// <summary> /// 添加库存 /// </summary> /// <param name="OrderIDDateDic"></param> /// <returns></returns> private DataTable GetInoutPart(Dictionary <string, long> OrderIDDateDic) { try { DataTable TemplateTable = null;//模版表 foreach (KeyValuePair <string, long> KVPair in OrderIDDateDic) { string strFileds = " a.warehouse,c.wh_name,b.parts_id,a.parts_code,a.parts_name,a.norms,b.parts_barcode,b.car_parts_code,a.drawn_no,a.unit,a.retreat_num,a.refund_id "; //所查询的字段 string RelationTable = "tb_maintain_refund_material_detai a left join tb_parts b on a.parts_code=b.ser_parts_code left join tb_warehouse c on a.warehouse=c.wh_id"; //要查询的关联表名 TemplateTable = CommonFuncCall.CreatePartStatisticTable(); //获取要填充的公用表 //获取对应单据的 DataTable IOPartTable = DBHelper.GetTable("领料退料数据明细", RelationTable, strFileds, "refund_id='" + KVPair.Key.ToString() + "'", "", ""); for (int i = 0; i < IOPartTable.Rows.Count; i++) { DataRow dr = TemplateTable.NewRow(); //创建模版表行项 dr["OrderDate"] = KVPair.Value.ToString(); //单据日期 dr["WareHouseID"] = CommonCtrl.IsNullToString(IOPartTable.Rows[i]["warehouse"]); //仓库ID dr["WareHouseName"] = CommonCtrl.IsNullToString(IOPartTable.Rows[i]["wh_name"]); //仓库名称 dr["PartID"] = CommonCtrl.IsNullToString(IOPartTable.Rows[i]["parts_id"]); //配件ID dr["PartCode"] = IOPartTable.Rows[i]["parts_code"].ToString(); //配件编码 dr["PartName"] = IOPartTable.Rows[i]["parts_name"].ToString(); //配件名称 dr["PartSpec"] = IOPartTable.Rows[i]["norms"].ToString(); //配件规格 dr["PartBarCode"] = IOPartTable.Rows[i]["parts_barcode"].ToString(); //配件条码 dr["CarPartsCode"] = IOPartTable.Rows[i]["car_parts_code"].ToString(); //车厂编码 dr["DrawNum"] = IOPartTable.Rows[i]["drawn_no"].ToString(); //配件图号 dr["UnitName"] = IOPartTable.Rows[i]["unit"].ToString(); //单位名称 dr["PartCount"] = IOPartTable.Rows[i]["received_num"].ToString(); //配件数量 dr["StatisticType"] = (int)DataSources.EnumStatisticType.PaperCount; //统计类型 TemplateTable.Rows.Add(dr); //添加新的数据行项 } } return(TemplateTable); } catch (Exception ex) { MessageBoxEx.Show(ex.Message, "异常提示", MessageBoxButtons.OK, MessageBoxIcon.Question); return(null); } }