using System; using System.Collections.Generic; using System.Text; using System.Data; namespace DAL { /// /// 生产排程 保存 生产人员 1对多 /// public class ClsSc_ICMOSortBill_Group { public string MvarItemKey; public string MvarReportTitle; public Model.ClsSc_ICMOSortBill_GroupMain omodel = new Model.ClsSc_ICMOSortBill_GroupMain(); public List DetailColl = new List(); SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); public bool FillTag = false; public ClsSc_ICMOSortBill_Group() { MvarItemKey = "3708"; MvarReportTitle = "生产计划排程"; } #region 固定代码 ~ClsSc_ICMOSortBill_Group() { DetailColl = null; } //删除子表 public void DeleteBillSub(Int64 lngBillKey) { //oCn.RunProc("Delete From Sc_ICMOSortBillSub where HInterID=" + lngBillKey.ToString()); } //删除主表 public void DeleteBillMain(Int64 lngBillKey) { //oCn.RunProc("Delete From Sc_ICMOSortBillMain where HInterID=" + lngBillKey.ToString()); } //删除单据 public bool DeleteBill(Int64 lngBillKey, ref string sReturn) { //try //{ // oCn.BeginTran(); // //删除关联 // //删除明细表 // //DeleteBillSub(lngBillKey); // //删除主表 // DeleteBillMain(lngBillKey); // sReturn = "删除单据成功!"; // oCn.Commit(); return true; //} //catch (Exception e) //{ // sReturn = e.Message; // oCn.RollBack(); // return false; //} } #endregion //新增单据 public bool AddBill(ref string sReturn) { try { //若MAINDI重复则重新获取 oCn.BeginTran(); oCn.RunProc("delete from Sc_ICMOSortBill_Group where HICMOInterID=" + omodel.HICMOInterID.ToString() + " and HSplitNO='" + omodel.HSplitNO + "' and HSourceID=" + omodel.HSourceID.ToString() + " and HGroupID=" + omodel.HGroupID.ToString()); //主表 // //插入子表 foreach (Model.ClsSc_ICMOSortBill_GroupSub oSub in DetailColl) { oCn.RunProc("Insert into Sc_ICMOSortBill_Group " + " (HICMOInterID,HICMOBillNo,HSplitNO,HMaterID" + ",HSourceID,HGroupID,HEmpID" + ") " + " values (" + omodel.HICMOInterID.ToString() + ",'" + omodel.HICMOBillNo.ToString() + "','" + omodel.HSplitNO.ToString() + "'," + omodel.HMaterID.ToString() + "," + omodel.HSourceID.ToString() + "," + omodel.HGroupID.ToString() + "," + oSub.HEmpID.ToString() + ") "); } sReturn = "新增单据成功!"; oCn.Commit(); // return true; } catch (Exception e) { sReturn = e.Message; oCn.RollBack(); return false; } } //显示单据 public bool ShowBill(Int64 HICMOInterID, string HSplitNO, Int64 HSourceID, Int64 HGroupID, ref string sReturn) { try { //查询主表 DataSet Ds; DataSet DsSub; Ds = oCn.RunProcReturn("Select * from Sc_ICMOSortBill_Group where HICMOInterID=" + HICMOInterID.ToString() + " and HSplitNO='" + HSplitNO + "' and HSourceID=" + HSourceID.ToString() + " and HGroupID=" + HGroupID.ToString(), "Sc_ICMOSortBill_Group"); if (Ds.Tables[0].Rows.Count == 0) { sReturn = "单据未找到!"; return false; } //赋值 omodel.HMaterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMaterID"]); omodel.HGroupID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HGroupID"]); omodel.HSourceID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSourceID"]); omodel.HSplitNO = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HSplitNO"].ToString()); // omodel.HICMOInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HICMOInterID"]); omodel.HICMOBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HICMOBillNo"].ToString()); // DsSub = oCn.RunProcReturn("Select * from Sc_ICMOSortBill_Group where HICMOInterID=" + omodel.HICMOInterID.ToString() + " and HSplitNO='" + omodel.HSplitNO + "' and HSourceID=" + omodel.HSourceID.ToString() + " and HGroupID=" + omodel.HGroupID.ToString(), "Sc_ICMOSortBill_Group"); DetailColl.Clear();//清空 for (int j = 0; j < DsSub.Tables[0].Rows.Count; j++) { Model.ClsSc_ICMOSortBill_GroupSub oSub = new Model.ClsSc_ICMOSortBill_GroupSub(); oSub.HEmpID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[j]["HEmpID"]); DetailColl.Add(oSub); } // sReturn = "显示单据成功!"; return true; } catch (Exception e) { sReturn = e.Message; return false; } } } }