using System; 
 | 
using System.Collections.Generic; 
 | 
using System.Text; 
 | 
using System.Data; 
 | 
  
 | 
namespace WebAPI.DLL 
 | 
{ 
 | 
    public  class ClsKf_MateOutBill:DBUtility.ClsXt_BaseBill 
 | 
    { 
 | 
        public Models.ClsKf_MateOutBillMain omodel = new Models.ClsKf_MateOutBillMain(); 
 | 
        public List<Models.ClsKf_MateOutBillSub> DetailColl = new List<Models.ClsKf_MateOutBillSub>(); 
 | 
        public List<Models.ClsKf_MateOutBillScheme> DetailSubColl = new List<Models.ClsKf_MateOutBillScheme>(); 
 | 
  
 | 
        public ClsKf_MateOutBill() 
 | 
        { 
 | 
            base.MvarItemKeySub = "Kf_ICStockBillSub"; 
 | 
            base.MvarItemKeySub2 = ""; 
 | 
            base.MvarItemKeySub3 = ""; 
 | 
            base.MvarItemKeySub4 = ""; 
 | 
            base.MvarItemKey="Kf_ICStockBillMain"; 
 | 
            base.MvarReportTitle="生产领料单"; 
 | 
            base.BillType="1204"; 
 | 
            base.HBillSubType = "1204"; 
 | 
  
 | 
        } 
 | 
  
 | 
        #region 固定代码 
 | 
  
 | 
        ~ClsKf_MateOutBill() 
 | 
        { 
 | 
            DetailColl = null; 
 | 
        } 
 | 
        
 | 
        #endregion   自定义方法 
 | 
        //修改单据 
 | 
        public override bool ModifyBill(Int64 lngBillKey, ref string sReturn) 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                // 
 | 
                oCn.BeginTran(); 
 | 
  
 | 
                string mainSql = "UpDate Kf_ICStockBillMain set  " + 
 | 
                " HBillNo='" + omodel.HBillNo + "'" +  //固定赋值=============== 
 | 
                ",HDate='" + omodel.HDate + "'" + 
 | 
                ",HYear='" + omodel.HYear.ToString() + "'" + 
 | 
                ",HPeriod='" + omodel.HPeriod.ToString() + "'" + 
 | 
                ",HRemark='" + omodel.HRemark + "'" + 
 | 
                ",HUpDater='" + DBUtility.ClsPub.CurUserName + "'" + 
 | 
                ",HUpDateDate=getdate()" + 
 | 
                //======================================== 
 | 
                ",HSupID=" + omodel.HSupID.ToString() + 
 | 
                ",HWHID=" + omodel.HWHID.ToString() + 
 | 
                ",HSCWHID=" + omodel.HSCWHID.ToString() + 
 | 
                ",HEmpID=" + omodel.HEmpID.ToString() + 
 | 
                ",HManagerID=" + omodel.HManagerID.ToString() + 
 | 
                ",HSecManagerID=" + omodel.HSecManagerID.ToString() + 
 | 
                ",HKeeperID=" + omodel.HKeeperID.ToString() + 
 | 
                ",HDeptID=" + omodel.HDeptID.ToString() + 
 | 
                ",HExplanation='" + omodel.HExplanation + "'" + 
 | 
                ",HInnerBillNo='" + omodel.HInnerBillNo + "'" + 
 | 
                ",HRedBlueFlag=" + DBUtility.ClsPub.BoolToString(omodel.HRedBlueFlag) + 
 | 
                " where HInterID=" + lngBillKey.ToString(); 
 | 
  
 | 
  
 | 
                //判断使用客户,根据客户进行个性化调整 
 | 
                Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); 
 | 
                string sErrMsg = ""; 
 | 
                oSystemParameter.ShowBill(ref sErrMsg); 
 | 
                if (true )          //乔一客户 
 | 
                {  
 | 
                    mainSql = "UpDate Kf_ICStockBillMain set " + 
 | 
                        " HBillNo='" + omodel.HBillNo +  
 | 
                        "',HDate='" + omodel.HDate +  
 | 
                        "',HYear='" + omodel.HYear.ToString() +  
 | 
                        "',HPeriod='" + omodel.HPeriod.ToString() +  
 | 
                        "',HRemark='" + omodel.HRemark +  
 | 
                        "',HUpDater='" + DBUtility.ClsPub.CurUserName +  
 | 
                        "',HUpDateDate=getdate()" + 
 | 
                        //======================================== 
 | 
                        ",HSupID=" + omodel.HSupID.ToString() + 
 | 
                        ",HWHID=" + omodel.HWHID.ToString() + 
 | 
                        ",HSCWHID=" + omodel.HSCWHID.ToString() + 
 | 
                        ",HEmpID=" + omodel.HEmpID.ToString() + 
 | 
                        ",HManagerID=" + omodel.HManagerID.ToString() + 
 | 
                        ",HSecManagerID=" + omodel.HSecManagerID.ToString() + 
 | 
                        ",HKeeperID=" + omodel.HKeeperID.ToString() + 
 | 
                        ",HDeptID=" + omodel.HDeptID.ToString() + 
 | 
                        ",HExplanation='" + omodel.HExplanation +  
 | 
                        "',HInnerBillNo='" + omodel.HInnerBillNo +  
 | 
                        "',HRedBlueFlag=" + DBUtility.ClsPub.BoolToString(omodel.HRedBlueFlag) + 
 | 
  
 | 
                        ",HICMOInterID=" + omodel.HICMOInterID + 
 | 
                        ",HICMOEntryID=" + omodel.HICMOEntryID + 
 | 
                        ",HICMOBillNo='" + omodel.HICMOBillNo + 
 | 
                        "',HProcExchInterID=" + omodel.HProcExchInterID + 
 | 
                        ",HProcExchEntryID=" + omodel.HProcExchEntryID + 
 | 
                        ",HProcExchBillNo='" + omodel.HProcExchBillNo +  
 | 
                        "',HMaterID=" + omodel.HMaterID + 
 | 
                        ",HMaterName='" + omodel.HMaterName + 
 | 
                        "',HVerNo='" + omodel.HVerNo + 
 | 
                        "',HModel='" + omodel.HModel + 
 | 
                        "',HModel2='" + omodel.HModel2 + 
 | 
                        "',HPieceQty='" + omodel.HPieceQty + 
 | 
                        "',HCusID=" + omodel.HCusID + 
 | 
                        ",HWeight=" + omodel.HWeight + 
 | 
                        ",HLong=" + omodel.HLong + 
 | 
                        ",HSingleWeight=" + omodel.HSingleWeigth + 
 | 
                        ",HMaterSumWeight=" + omodel.HMaterSumWeight + 
 | 
                        ",HMaterEmpID=" + omodel.HMaterEmpID + 
 | 
                        ",HMachineSpeed=" + omodel.HMachineSpeed + 
 | 
                        ",HWaterRush=" + omodel.HWaterRush + 
 | 
                        ",HWaterQty=" + omodel.HWaterQty + 
 | 
                        ",HWaterRate=" + omodel.HWaterRate + 
 | 
                        " where HInterID=" + lngBillKey.ToString(); 
 | 
                } 
 | 
                //更新主表 
 | 
                oCn.RunProc(mainSql); 
 | 
  
 | 
  
 | 
                //删除关联 
 | 
                DeleteRelation(ref sReturn, lngBillKey); 
 | 
                //删除子表 
 | 
                DeleteBillSub(lngBillKey); 
 | 
  
 | 
  
 | 
                //插入子表 
 | 
                omodel.HInterID = lngBillKey; 
 | 
                foreach (Models.ClsKf_MateOutBillSub oSub in DetailColl) 
 | 
                { 
 | 
                    string subSql = "Insert into Kf_ICStockBillSub " + 
 | 
                      " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" + 
 | 
                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" + 
 | 
                      ",HMaterID,HPropertyID,HSecUnitID,HSecUnitRate,HUnitID,HQtyMust" + 
 | 
                      ",HQty,HPrice,HMoney,HWHID,HSCWHID,HSPID" + 
 | 
                      ",HSCSPID,HSPGroupID,HBatchNo,HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" + 
 | 
                      ",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo" + 
 | 
                      ") values(" 
 | 
                      + omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HCloseMan + "','" + oSub.HEntryCloseDate.ToShortDateString() + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "'" + 
 | 
                      "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + 
 | 
                      "," + oSub.HMaterID.ToString() + "," + oSub.HPropertyID.ToString() + "," + oSub.HSecUnitID.ToString() + "," + oSub.HSecUnitRate.ToString() + "," + oSub.HUnitID.ToString() + "," + oSub.HQtyMust.ToString() + 
 | 
                      "," + oSub.HQty.ToString() + "," + oSub.HPrice.ToString() + "," + oSub.HMoney.ToString() + "," + oSub.HWHID.ToString() + "," + oSub.HSCWHID.ToString() + "," + oSub.HSPID.ToString() + 
 | 
                      "," + oSub.HSCSPID.ToString() + "," + oSub.HSPGroupID.ToString() + ",'" + oSub.HBatchNo + "'," + oSub.HPOOrderInterID.ToString() + "," + oSub.HPOOrderEntryID.ToString() + ",'" + oSub.HPOOrderBillNo + "'" + 
 | 
                      "," + oSub.HSeOrderInterID.ToString() + "," + oSub.HSeOrderEntryID.ToString() + ",'" + oSub.HSeOrderBillNo + "'" + 
 | 
                      ") "; 
 | 
  
 | 
                    if (true)          //乔一客户 
 | 
                    { 
 | 
                        subSql = "Insert into Kf_ICStockBillSub" + 
 | 
                            "(HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HMaterID,HPropertyID,HSecUnitID,HSecUnitRate,HUnitID,HQtyMust" + 
 | 
                            ",HRate,HQty,HPrice,HMoney,HWHID,HSCWHID,HSPID,HSCSPID,HSPGroupID,HBatchNo,HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo)" + 
 | 
                            " values(" + 
 | 
                            omodel.HInterID.ToString() + 
 | 
                            "," + oSub.HEntryID.ToString() + 
 | 
                            ",'" + oSub.HCloseMan + 
 | 
                            "','" + oSub.HEntryCloseDate.ToShortDateString() + 
 | 
                            "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + 
 | 
                            ",'" + oSub.HRemark + 
 | 
                            "'," + oSub.HSourceInterID.ToString() + 
 | 
                            "," + oSub.HSourceEntryID.ToString() + 
 | 
                            ",'" + oSub.HSourceBillNo + 
 | 
                            "','" + oSub.HSourceBillType + 
 | 
                            "'," + oSub.HRelationQty.ToString() + 
 | 
                            "," + oSub.HRelationMoney.ToString() + 
 | 
                            "," + oSub.HMaterID.ToString() + 
 | 
                            "," + oSub.HPropertyID.ToString() + 
 | 
                            "," + oSub.HSecUnitID.ToString() + 
 | 
                            "," + oSub.HSecUnitRate.ToString() + 
 | 
                            "," + oSub.HUnitID.ToString() + 
 | 
                            "," + oSub.HQtyMust.ToString() + 
 | 
                            "," + oSub.HRate.ToString() + 
 | 
                            "," + oSub.HQty.ToString() + 
 | 
                            "," + oSub.HPrice.ToString() + 
 | 
                            "," + oSub.HMoney.ToString() + 
 | 
                            "," + oSub.HWHID.ToString() + 
 | 
                            "," + oSub.HSCWHID.ToString() + 
 | 
                            "," + oSub.HSPID.ToString() + 
 | 
                            "," + oSub.HSCSPID.ToString() + 
 | 
                            "," + oSub.HSPGroupID.ToString() + 
 | 
                            ",'" + oSub.HBatchNo + 
 | 
                            "'," + oSub.HPOOrderInterID.ToString() + 
 | 
                            "," + oSub.HPOOrderEntryID.ToString() + 
 | 
                            ",'" + oSub.HPOOrderBillNo + 
 | 
                            "'," + oSub.HSeOrderInterID.ToString() + 
 | 
                            "," + oSub.HSeOrderEntryID.ToString() + 
 | 
                            ",'" + oSub.HSeOrderBillNo + 
 | 
                            "') "; 
 | 
                    } 
 | 
  
 | 
                    oCn.RunProc(subSql); 
 | 
                } 
 | 
                // 
 | 
                //foreach (Model.ClsKf_MateOutBillSub oSub in DetailColl) 
 | 
                //{ 
 | 
                //    Ds = oCn.RunProcReturn("exec h_p_Kf_MateOutBill_Qty " + oSub.HICMOInterID, ""); 
 | 
                //    if (Ds.Tables[0].Rows.Count == 0) 
 | 
                //        return; 
 | 
                //    if (DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBool"]) == "Y") 
 | 
                //    { 
 | 
                //        sReturn = "汇报数量超过计划数量!不允许保存"; 
 | 
                //        return false; 
 | 
                //    } 
 | 
                //} 
 | 
                sReturn = "修改单据成功!"; 
 | 
                oCn.Commit(); 
 | 
                return true; 
 | 
            } 
 | 
            catch (Exception e) 
 | 
            { 
 | 
                sReturn = e.Message; 
 | 
                oCn.RollBack(); 
 | 
                throw (e); 
 | 
            } 
 | 
        } 
 | 
        //新增单据 
 | 
        public override bool AddBill(ref string sReturn) 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                //得到mainid 
 | 
                //omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo); 
 | 
                //omodel.HBillNo = DBUtility.ClsPub.CreateBillCode(BillType, ref DBUtility.ClsPub.sExeReturnInfo, true); 
 | 
                //若MAINDI重复则重新获取 
 | 
                if (IsExistBillNo(ref DBUtility.ClsPub.sExeReturnInfo, omodel.HBillNo, Pub_Class.ClsPub.Enum_BillStatus.BillStatus_AddNew, omodel.HInterID)) 
 | 
                { 
 | 
                    omodel.HBillNo = DBUtility.ClsPub.CreateBillCode(BillType, ref DBUtility.ClsPub.sExeReturnInfo, true); 
 | 
                } 
 | 
                if (IsExistMainID(ref DBUtility.ClsPub.sExeReturnInfo, omodel.HInterID, Pub_Class.ClsPub.Enum_BillStatus.BillStatus_AddNew)) 
 | 
                { 
 | 
                    omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo); 
 | 
                } 
 | 
                // 
 | 
                oCn.BeginTran(); 
 | 
  
 | 
                string mainSql = "Insert Into Kf_ICStockBillMain   " + 
 | 
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" + 
 | 
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" + 
 | 
                ",HSupID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID" + 
 | 
                ",HKeeperID,HDeptID,HExplanation,HInnerBillNo,HRedBlueFlag" + 
 | 
                ") " + 
 | 
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" + 
 | 
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" + 
 | 
                ", " + omodel.HSupID.ToString() + "," + omodel.HWHID.ToString() + "," + omodel.HSCWHID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HManagerID.ToString() + "," + omodel.HSecManagerID.ToString() + 
 | 
                ", " + omodel.HKeeperID.ToString() + "," + omodel.HDeptID.ToString() + ",'" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "'," + DBUtility.ClsPub.BoolToString(omodel.HRedBlueFlag) + 
 | 
                ") "; 
 | 
  
 | 
  
 | 
                //判断使用客户,根据客户进行个性化调整 
 | 
                Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); 
 | 
                string sErrMsg = ""; 
 | 
                oSystemParameter.ShowBill(ref sErrMsg); 
 | 
                if (true)          //乔一客户 
 | 
                { 
 | 
                    mainSql = "Insert Into Kf_ICStockBillMain" + 
 | 
                        "(HBillType,HBillSubType,HInterID,HBillNo,HDate,HYear,HPeriod,HRemark,HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HMaker,HMakeDate,HSupID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID,HKeeperID,HDeptID,HExplanation,HInnerBillNo,HRedBlueFlag" + 
 | 
                        ",HICMOInterID,HICMOEntryID,HICMOBillNo,HProcExchInterID,HProcExchEntryID,HProcExchBillNo,HMaterID,HMaterName,HVerNo,HModel,HModel2,HPieceQty,HCusID,HWeight,HLong,HSingleWeight,HMaterSumWeight,HMaterEmpID" + 
 | 
                        ",HMachineSpeed,HWaterRush,HWaterQty,HWaterRate) " + 
 | 
                        " values(" + 
 | 
                        "'" + this.BillType + 
 | 
                        "','" + this.HBillSubType + 
 | 
                        "'," + omodel.HInterID.ToString() + 
 | 
                        ",'" + omodel.HBillNo + 
 | 
                        "','" + omodel.HDate + 
 | 
                        "'," + omodel.HYear.ToString() + 
 | 
                        "," + omodel.HPeriod.ToString() + 
 | 
                        ",'" + omodel.HRemark + 
 | 
                        "'," + omodel.HProcExchInterID + 
 | 
                        ",'" + omodel.HProcExchBillNo + 
 | 
                        "','" + "3772" + 
 | 
                        "','" + DBUtility.ClsPub.CurUserName + 
 | 
                        "',getdate()" + 
 | 
                        "," + omodel.HSupID.ToString() + 
 | 
                        "," + omodel.HWHID.ToString() + 
 | 
                        "," + omodel.HSCWHID.ToString() + 
 | 
                        "," + omodel.HEmpID.ToString() + 
 | 
                        "," + omodel.HManagerID.ToString() + 
 | 
                        "," + omodel.HSecManagerID.ToString() + 
 | 
                        ", " + omodel.HKeeperID.ToString() + 
 | 
                        "," + omodel.HDeptID.ToString() + 
 | 
                        ",'" + omodel.HExplanation + 
 | 
                        "','" + omodel.HInnerBillNo + 
 | 
                        "'," + DBUtility.ClsPub.BoolToString(omodel.HRedBlueFlag) + 
 | 
                        "," + omodel.HICMOInterID + 
 | 
                        "," + omodel.HICMOEntryID + 
 | 
                        ",'" + omodel.HICMOBillNo + 
 | 
                        "'," + omodel.HProcExchInterID + 
 | 
                        "," + omodel.HProcExchEntryID + 
 | 
                        ",'" + omodel.HProcExchBillNo + 
 | 
                        "'," + omodel.HMaterID + 
 | 
                        ",'" + omodel.HMaterName + 
 | 
                        "','" + omodel.HVerNo + 
 | 
                        "','" + omodel.HModel + 
 | 
                        "','" + omodel.HModel2 + 
 | 
                        "','" + omodel.HPieceQty + 
 | 
                        "'," + omodel.HCusID + 
 | 
                        "," + omodel.HWeight + 
 | 
                        "," + omodel.HLong + 
 | 
                        "," + omodel.HSingleWeigth + 
 | 
                        "," + omodel.HMaterSumWeight + 
 | 
                        "," + omodel.HMaterEmpID + 
 | 
                        "," + omodel.HMachineSpeed + 
 | 
                        "," + omodel.HWaterRush + 
 | 
                        "," + omodel.HWaterQty + 
 | 
                        "," + omodel.HWaterRate + 
 | 
                        ")"; 
 | 
                } 
 | 
  
 | 
                //主表 
 | 
                oCn.RunProc(mainSql); 
 | 
                //插入子表 
 | 
                foreach (Models.ClsKf_MateOutBillSub oSub in DetailColl) 
 | 
                { 
 | 
                    string subSql = "Insert into Kf_ICStockBillSub " + 
 | 
                      " (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" + 
 | 
                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" + 
 | 
                      ",HMaterID,HPropertyID,HSecUnitID,HSecUnitRate,HUnitID,HQtyMust" + 
 | 
                      ",HQty,HPrice,HMoney,HWHID,HSCWHID,HSPID" + 
 | 
                      ",HSCSPID,HSPGroupID,HBatchNo,HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" + 
 | 
                      ",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo" + 
 | 
                      ") values(" 
 | 
                      + omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HCloseMan + "','" + oSub.HEntryCloseDate.ToShortDateString() + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "'" + 
 | 
                      "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + 
 | 
                      "," + oSub.HMaterID.ToString() + "," + oSub.HPropertyID.ToString() + "," + oSub.HSecUnitID.ToString() + "," + oSub.HSecUnitRate.ToString() + "," + oSub.HUnitID.ToString() + "," + oSub.HQtyMust.ToString() + 
 | 
                      "," + oSub.HQty.ToString() + "," + oSub.HPrice.ToString() + "," + oSub.HMoney.ToString() + "," + oSub.HWHID.ToString() + "," + oSub.HSCWHID.ToString() + "," + oSub.HSPID.ToString() + 
 | 
                      "," + oSub.HSCSPID.ToString() + "," + oSub.HSPGroupID.ToString() + ",'" + oSub.HBatchNo + "'," + oSub.HPOOrderInterID.ToString() + "," + oSub.HPOOrderEntryID.ToString() + ",'" + oSub.HPOOrderBillNo + "'" + 
 | 
                      "," + oSub.HSeOrderInterID.ToString() + "," + oSub.HSeOrderEntryID.ToString() + ",'" + oSub.HSeOrderBillNo + "'" + 
 | 
                      ") "; 
 | 
  
 | 
                    if (true)              //乔一客户 
 | 
                    { 
 | 
                        subSql = "Insert into Kf_ICStockBillSub" + 
 | 
                            "(HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HMaterID,HPropertyID,HSecUnitID,HSecUnitRate,HUnitID,HQtyMust" + 
 | 
                            ",HRate,HQty,HPrice,HMoney,HWHID,HSCWHID,HSPID,HSCSPID,HSPGroupID,HBatchNo,HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo)" + 
 | 
                            " values(" +  
 | 
                            omodel.HInterID.ToString() +  
 | 
                            "," + oSub.HEntryID.ToString() +  
 | 
                            ",'" + oSub.HCloseMan +  
 | 
                            "','" + oSub.HEntryCloseDate.ToShortDateString() +  
 | 
                            "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) +  
 | 
                            ",'" + oSub.HRemark +  
 | 
                            "'," + oSub.HSourceInterID.ToString() +  
 | 
                            "," + oSub.HSourceEntryID.ToString() +  
 | 
                            ",'" + oSub.HSourceBillNo +  
 | 
                            "','" + oSub.HSourceBillType +  
 | 
                            "'," + oSub.HRelationQty.ToString() +  
 | 
                            "," + oSub.HRelationMoney.ToString() + 
 | 
                            "," + oSub.HMaterID.ToString() +  
 | 
                            "," + oSub.HPropertyID.ToString() +  
 | 
                            "," + oSub.HSecUnitID.ToString() +  
 | 
                            "," + oSub.HSecUnitRate.ToString() +  
 | 
                            "," + oSub.HUnitID.ToString() +  
 | 
                            "," + oSub.HQtyMust.ToString() +  
 | 
                            "," + oSub.HRate.ToString() + 
 | 
                            "," + oSub.HQty.ToString() +  
 | 
                            "," + oSub.HPrice.ToString() +  
 | 
                            "," + oSub.HMoney.ToString() +  
 | 
                            "," + oSub.HWHID.ToString() +  
 | 
                            "," + oSub.HSCWHID.ToString() +  
 | 
                            "," + oSub.HSPID.ToString() +  
 | 
                            "," + oSub.HSCSPID.ToString() +  
 | 
                            "," + oSub.HSPGroupID.ToString() +  
 | 
                            ",'" + oSub.HBatchNo +  
 | 
                            "'," + oSub.HPOOrderInterID.ToString() +  
 | 
                            "," + oSub.HPOOrderEntryID.ToString() +  
 | 
                            ",'" + oSub.HPOOrderBillNo +  
 | 
                            "'," + oSub.HSeOrderInterID.ToString() +  
 | 
                            "," + oSub.HSeOrderEntryID.ToString() +  
 | 
                            ",'" + oSub.HSeOrderBillNo +  
 | 
                            "') "; 
 | 
                    } 
 | 
                        oCn.RunProc(subSql); 
 | 
                } 
 | 
                // 
 | 
                //foreach (Model.ClsKf_MateOutBillSub oSub in DetailColl) 
 | 
                //{ 
 | 
                //    Ds = oCn.RunProcReturn("exec h_p_Kf_MateOutBill_Qty " + oSub.HICMOInterID, ""); 
 | 
                //    if (Ds.Tables[0].Rows.Count == 0) 
 | 
                //        return; 
 | 
                //    if (DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBool"]) == "Y") 
 | 
                //    { 
 | 
                //        sReturn = "汇报数量超过计划数量!不允许保存"; 
 | 
                //        return false; 
 | 
                //    } 
 | 
                //} 
 | 
                // 
 | 
                sReturn = "新增单据成功!"; 
 | 
                oCn.Commit(); 
 | 
                return true; 
 | 
            } 
 | 
            catch (Exception e) 
 | 
            { 
 | 
                sReturn = e.Message; 
 | 
                oCn.RollBack(); 
 | 
                throw (e); 
 | 
            } 
 | 
        } 
 | 
        //显示单据 
 | 
        public override bool ShowBill(Int64 lngBillKey, ref string sReturn) 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                //查询主表 
 | 
                DataSet Ds ; 
 | 
                Ds = oCn.RunProcReturn("Select * from Kf_ICStockBillMain Where HInterID=" + lngBillKey.ToString(), "Kf_ICStockBillMain"); 
 | 
                if(Ds.Tables[0].Rows.Count==0) 
 | 
                { 
 | 
                    sReturn = "单据未找到!"; 
 | 
                    return false; 
 | 
                } 
 | 
                //固定赋值=========================================== 
 | 
                omodel.HYear = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HYear"]); 
 | 
                omodel.HPeriod = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HPeriod"]); 
 | 
                omodel.HBillType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillType"]); 
 | 
                omodel.HBillSubType = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HBillSubType"]); 
 | 
                omodel.HInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"]); 
 | 
                omodel.HDate = DBUtility.ClsPub.isDate(Ds.Tables[0].Rows[0]["HDate"]); 
 | 
                omodel.HBillNo = Ds.Tables[0].Rows[0]["HBillNo"].ToString().Trim(); 
 | 
                omodel.HBillStatus = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HBillStatus"]); 
 | 
                omodel.HCheckItemNowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNowID"]); 
 | 
                omodel.HCheckItemNextID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckItemNextID"]); 
 | 
                omodel.HCheckFlowID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCheckFlowID"]); 
 | 
                omodel.HRemark = Ds.Tables[0].Rows[0]["HRemark"].ToString().Trim(); 
 | 
                omodel.HBackDate = Ds.Tables[0].Rows[0]["HBackDate"].ToString().Trim(); 
 | 
                omodel.HBacker = Ds.Tables[0].Rows[0]["HBacker"].ToString().Trim(); 
 | 
                omodel.HCheckDate = Ds.Tables[0].Rows[0]["HCheckDate"].ToString().Trim(); 
 | 
                omodel.HChecker = Ds.Tables[0].Rows[0]["HChecker"].ToString().Trim(); 
 | 
                omodel.HMaker = Ds.Tables[0].Rows[0]["HMaker"].ToString().Trim(); 
 | 
                omodel.HMakeDate = Ds.Tables[0].Rows[0]["HMakeDate"].ToString().Trim(); 
 | 
                omodel.HUpDateDate = Ds.Tables[0].Rows[0]["HUpDateDate"].ToString().Trim(); 
 | 
                omodel.HUpDater = Ds.Tables[0].Rows[0]["HUpDater"].ToString().Trim(); 
 | 
                omodel.HCloseDate = Ds.Tables[0].Rows[0]["HCloseDate"].ToString().Trim(); 
 | 
                omodel.HCloseMan = Ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim(); 
 | 
                omodel.HCloseType = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HCloseType"]); 
 | 
                omodel.HDeleteDate = Ds.Tables[0].Rows[0]["HDeleteDate"].ToString().Trim(); 
 | 
                omodel.HDeleteMan = Ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim(); 
 | 
                //======================================================== 
 | 
                omodel.HSupID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSupID"]); 
 | 
                omodel.HWHID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HWHID"]); 
 | 
                omodel.HSCWHID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSCWHID"]); 
 | 
                omodel.HEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HEmpID"]); 
 | 
                omodel.HManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HManagerID"]); 
 | 
                omodel.HSecManagerID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HSecManagerID"]); 
 | 
                omodel.HKeeperID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HKeeperID"]); 
 | 
                omodel.HDeptID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HDeptID"]); 
 | 
                omodel.HExplanation = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HExplanation"]); 
 | 
                omodel.HInnerBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HInnerBillNo"]); 
 | 
                omodel.HRedBlueFlag = DBUtility.ClsPub.isBool(Ds.Tables[0].Rows[0]["HRedBlueFlag"]); 
 | 
  
 | 
  
 | 
                //判断使用客户,根据客户进行个性化调整 
 | 
                Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); 
 | 
                string sErrMsg = ""; 
 | 
                oSystemParameter.ShowBill(ref sErrMsg); 
 | 
                if (true)              //乔一客户 
 | 
                { 
 | 
                    omodel.HICMOInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HICMOInterID"]); 
 | 
                    omodel.HICMOEntryID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HICMOEntryID"]); 
 | 
                    omodel.HICMOBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HICMOBillNo"]); 
 | 
                    omodel.HProcExchInterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HProcExchInterID"]); 
 | 
                    omodel.HProcExchEntryID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HProcExchEntryID"]); 
 | 
                    omodel.HProcExchBillNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HProcExchBillNo"]); 
 | 
                    omodel.HMaterID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMaterID"]); 
 | 
                    omodel.HMaterName = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HMaterName"]); 
 | 
                    omodel.HVerNo = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HVerNo"]); 
 | 
                    omodel.HModel = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HModel"]); 
 | 
                    omodel.HModel2 = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HModel2"]); 
 | 
                    omodel.HPieceQty = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HPieceQty"]); 
 | 
                    omodel.HCusID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HCusID"]); 
 | 
                    omodel.HWeight = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HWeight"]); 
 | 
                    omodel.HLong = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HLong"]); 
 | 
                    omodel.HSingleWeigth = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HSingleWeight"]); 
 | 
                    omodel.HMaterSumWeight = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HMaterSumWeight"]); 
 | 
                    omodel.HMaterEmpID = DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0]["HMaterEmpID"]); 
 | 
  
 | 
                    omodel.HMachineSpeed = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HMachineSpeed"]); 
 | 
                    omodel.HWaterRush = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HWaterRush"]); 
 | 
                    omodel.HWaterQty = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HWaterQty"]); 
 | 
                    omodel.HWaterRate = DBUtility.ClsPub.isDoule(Ds.Tables[0].Rows[0]["HWaterRate"]); 
 | 
                } 
 | 
  
 | 
                    // 
 | 
  
 | 
                //循环 
 | 
                DataSet DsSub ; 
 | 
                DsSub = oCn.RunProcReturn("Select * from Kf_ICStockBillSub Where HInterID=" + lngBillKey.ToString(), "Kf_ICStockBillSub"); 
 | 
                DetailColl.Clear();//清空 
 | 
                for (int i = 0; i < DsSub.Tables[0].Rows.Count; i++) 
 | 
                { 
 | 
                    Models.ClsKf_MateOutBillSub oSub = new Models.ClsKf_MateOutBillSub(); 
 | 
                    // 固定赋值=============================================== 
 | 
                    oSub.HInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HInterID"]); 
 | 
                    oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HEntryID"]); 
 | 
                    oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceInterID"]); 
 | 
                    oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSourceEntryID"]); 
 | 
                    oSub.HSourceBillType = DsSub.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim(); 
 | 
                    oSub.HSourceBillNo = DsSub.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim(); 
 | 
                    oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationQty"]); 
 | 
                    oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HRelationMoney"]);  
 | 
                    oSub.HCloseMan =  DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HCloseMan"]); 
 | 
                    oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub.Tables[0].Rows[i]["HCloseType"]); 
 | 
                    oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub.Tables[0].Rows[i]["HEntryCloseDate"]); 
 | 
                    oSub.HRemark = DsSub.Tables[0].Rows[i]["HRemark"].ToString().Trim(); 
 | 
                    //=================================================== 
 | 
                    oSub.HMaterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HMaterID"]); 
 | 
                    oSub.HPropertyID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HPropertyID"]); 
 | 
                    oSub.HSecUnitID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSecUnitID"]); 
 | 
                    oSub.HSecUnitRate = DBUtility.ClsPub.isSingle(DsSub.Tables[0].Rows[i]["HSecUnitRate"]); 
 | 
                    oSub.HUnitID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HUnitID"]); 
 | 
                    oSub.HQtyMust = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HQtyMust"]); 
 | 
                    oSub.HQty = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HQty"]); 
 | 
                    oSub.HPrice = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HPrice"]); 
 | 
                    oSub.HMoney = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[i]["HMoney"]); 
 | 
                    oSub.HWHID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HWHID"]); 
 | 
                    oSub.HSCWHID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSCWHID"]); 
 | 
                    oSub.HSPID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSPID"]); 
 | 
                    oSub.HSCSPID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSCSPID"]); 
 | 
                    oSub.HSPGroupID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSPGroupID"]); 
 | 
                    oSub.HBatchNo = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HBatchNo"]); 
 | 
                    oSub.HPOOrderInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HPOOrderInterID"]); 
 | 
                    oSub.HPOOrderEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HPOOrderEntryID"]); 
 | 
                    oSub.HPOOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HPOOrderBillNo"]); 
 | 
                    oSub.HSeOrderInterID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSeOrderInterID"]); 
 | 
                    oSub.HSeOrderEntryID = DBUtility.ClsPub.isLong(DsSub.Tables[0].Rows[i]["HSeOrderEntryID"]); 
 | 
                    oSub.HSeOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HSeOrderBillNo"]); 
 | 
  
 | 
                    if (true)              //乔一客户 
 | 
                    { 
 | 
                        oSub.HRate = DBUtility.ClsPub.isDoule(DsSub.Tables[0].Rows[0]["HRate"]); 
 | 
                    } 
 | 
  
 | 
                    DetailColl.Add(oSub); 
 | 
                } 
 | 
                sReturn = "显示单据成功!"; 
 | 
                return true; 
 | 
            } 
 | 
            catch (Exception e) 
 | 
            { 
 | 
                sReturn = e.Message; 
 | 
                throw (e); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        //显示单据条码信息 
 | 
        public bool ShowBill_Scheme(Int64 lngBillKey, ref string sReturn) 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                //循环子表2 
 | 
                DataSet DsSubSec; 
 | 
                DsSubSec = oCn.RunProcReturn("Select * from Kf_ICStockBillSub_WMS   with (nolock) Where HInterID=" + lngBillKey.ToString() + " and HBillType='" + this.BillType + "'", "Kf_ICStockBillSub_WMS"); 
 | 
                DetailSubColl.Clear();//清空 
 | 
                for (int i = 0; i < DsSubSec.Tables[0].Rows.Count; i++) 
 | 
                { 
 | 
                    Models.ClsKf_MateOutBillScheme oSubSec = new Models.ClsKf_MateOutBillScheme(); 
 | 
                    oSubSec.HInterID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HInterID"].ToString()); 
 | 
                    oSubSec.HEntryID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HEntryID"].ToString()); 
 | 
                    oSubSec.HItemID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HItemID"].ToString()); 
 | 
                    oSubSec.HBillType = DsSubSec.Tables[0].Rows[i]["HBillType"].ToString(); 
 | 
                    oSubSec.HMaterID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HMaterID"].ToString()); 
 | 
                    oSubSec.HProcID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HProcID"].ToString()); 
 | 
                    oSubSec.HWhID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HWhID"].ToString()); 
 | 
                    oSubSec.HGroupID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HGroupID"].ToString()); 
 | 
                    oSubSec.HQty = DBUtility.ClsPub.isDoule(DsSubSec.Tables[0].Rows[i]["HQty"].ToString()); 
 | 
                    oSubSec.HBarCode = DsSubSec.Tables[0].Rows[i]["HBarCode"].ToString(); 
 | 
                    oSubSec.HAddr = DsSubSec.Tables[0].Rows[i]["HAddr"].ToString(); 
 | 
                    oSubSec.HMaker = DsSubSec.Tables[0].Rows[i]["HMaker"].ToString(); 
 | 
                    oSubSec.HMakeDate = DBUtility.ClsPub.isDate(DsSubSec.Tables[0].Rows[i]["HMakeDate"].ToString()); 
 | 
                    oSubSec.HSourceInterID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HSourceInterID"].ToString()); 
 | 
                    oSubSec.HSourceEntryID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HSourceEntryID"].ToString()); 
 | 
                    oSubSec.HSourceBillType = DsSubSec.Tables[0].Rows[i]["HSourceBillType"].ToString(); 
 | 
                    oSubSec.HSourceBillNo = DsSubSec.Tables[0].Rows[i]["HSourceBillNo"].ToString(); 
 | 
                    oSubSec.HSourceItemID = DBUtility.ClsPub.isLong(DsSubSec.Tables[0].Rows[i]["HSourceItemID"].ToString()); 
 | 
                    // 
 | 
                    DetailSubColl.Add(oSubSec); 
 | 
                } 
 | 
                sReturn = "显示单据成功!"; 
 | 
                return true; 
 | 
            } 
 | 
            catch (Exception e) 
 | 
            { 
 | 
                sReturn = e.Message; 
 | 
                throw (e); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        //判断 负库存 
 | 
        public bool CheckKF(Int64 lngBillKey, int iType, ref string sReturn) 
 | 
        { 
 | 
  
 | 
            //try 
 | 
            //{ 
 | 
                //DataSet oDs = new DataSet(); 
 | 
                //oDs = oCn.RunProcReturn("exec  h_p_Kf_ICStockBill_CheckKF  " + lngBillKey.ToString() + "," + iType.ToString(), "gy_czygl"); 
 | 
                //if (oDs == null || oDs.Tables[0].Rows.Count == 0) 
 | 
                //{ 
 | 
                //    return false; 
 | 
                //} 
 | 
                //if (DBUtility.ClsPub.isStrNull(oDs.Tables[0].Rows[0][0]) == "N") 
 | 
                //{ 
 | 
                //    sReturn = DBUtility.ClsPub.isStrNull(oDs.Tables[0].Rows[0][1]); 
 | 
                //    return false; 
 | 
                //} 
 | 
                //else 
 | 
                //{ 
 | 
                //    sReturn = DBUtility.ClsPub.isStrNull(oDs.Tables[0].Rows[0][1]); 
 | 
                    return true; 
 | 
            //    } 
 | 
            //} 
 | 
            //catch (Exception e) 
 | 
            //{ 
 | 
            //    sReturn = e.Message; 
 | 
            //    throw (e); 
 | 
            //} 
 | 
        } 
 | 
  
 | 
        //条码扫描记录,新增到领料出库 
 | 
        public bool AddBill_PDA(ref string sReturn) 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                //判断会计期是否合理 
 | 
                string s = ""; 
 | 
                int sYear = 0; 
 | 
                int sPeriod = 0; 
 | 
                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(omodel.HDate, ref sYear, ref sPeriod, ref s) == false) 
 | 
                { 
 | 
                    sReturn = s; 
 | 
                    return false; 
 | 
                } 
 | 
                omodel.HYear = sYear; 
 | 
                omodel.HPeriod = sPeriod; 
 | 
  
 | 
                DataSet Ds; 
 | 
                oCn.BeginTran(); 
 | 
                //删除主表 
 | 
                oCn.RunProc("Delete From Kf_ICStockBillMain  where HInterID=" + omodel.HInterID.ToString()); 
 | 
                //插入子表 
 | 
                oCn.RunProc("EXEC h_p_Kf_MateOutBillSub_Insert " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'"); 
 | 
                //插入主表 
 | 
                oCn.RunProc("Insert Into Kf_ICStockBillMain   " + 
 | 
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate,HMainSourceBillType" + 
 | 
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" + 
 | 
                ",HSupID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID" + 
 | 
                ",HKeeperID,HDeptID,HExplanation,HInnerBillNo,HRedBlueFlag" + 
 | 
                ") " + 
 | 
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "',convert(varchar(10),getdate(),120),'" + omodel.HMainSourceBillType + "'" + 
 | 
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + omodel.HMaker + "',convert(varchar(10),getdate(),120)" + 
 | 
                ", " + omodel.HSupID.ToString() + "," + omodel.HWHID.ToString() + "," + omodel.HSCWHID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HManagerID.ToString() + "," + omodel.HSecManagerID.ToString() + 
 | 
                ", " + omodel.HKeeperID.ToString() + "," + omodel.HDeptID.ToString() + ",'" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "'," + DBUtility.ClsPub.BoolToString(omodel.HRedBlueFlag) + 
 | 
                ") "); 
 | 
                //更新关联数量 
 | 
                oCn.RunProc("exec h_p_Sc_UpDatePPBomRelation_Add " + omodel.HInterID.ToString()); 
 | 
                //审核单据 
 | 
                oCn.RunProc("Update Kf_ICStockBillMain Set HChecker='" + omodel.HMaker + "',HCheckDate=convert(varchar(10),getdate(),120),HBillStatus=2 where HInterID= " + omodel.HInterID.ToString()); 
 | 
  
 | 
                //生成K3单据 
 | 
                //新增子表、主表 
 | 
                oCn.RunProc("exec h_p_IFK3_ToERP_MateOutBill_Insert " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillerID.ToString()); 
 | 
                //回填关联数量 
 | 
                oCn.RunProc("exec h_p_IFK3_ToERP_MateOutBill_UpdateBillRelateData " + omodel.HInterID.ToString()); 
 | 
                //审核单据 
 | 
                oCn.RunProc("exec h_p_IFK3_ToERP_MateOutBill_Check " + omodel.HInterID.ToString() + "," + omodel.HBillerID.ToString()); 
 | 
                //更新库存 
 | 
                oCn.RunProc("exec h_p_IFK3_ToERP_MateOutBill_UpdateStock " + omodel.HInterID.ToString()); 
 | 
                oCn.RunProc("exec h_p_IFK3_ToERP_MateOutBill_UpdateOrderStock " + omodel.HInterID.ToString()); 
 | 
  
 | 
                //判断条码库存是否异常(负库存、库存大于条码初始化) 
 | 
                Ds = oCn.RunProcReturn("EXEC h_p_KF_ICInventoryBarCodeQtyCtrl  " + omodel.HInterID.ToString(), "h_p_KF_ICInventoryBarCodeQtyCtrl"); 
 | 
  
 | 
                if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1) 
 | 
                { 
 | 
  
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    sReturn = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0][1]); 
 | 
                    oCn.RollBack(); 
 | 
                    return false; 
 | 
                } 
 | 
                sReturn = "新增单据成功!"; 
 | 
                oCn.Commit(); 
 | 
                return true; 
 | 
            } 
 | 
            catch (Exception e) 
 | 
            { 
 | 
                sReturn = e.Message; 
 | 
                oCn.RollBack(); 
 | 
                throw (e); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        //条码扫描记录,新增到领料出库 (红字) 
 | 
        public bool AddBill_PDA_Red(ref string sReturn) 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                //判断会计期是否合理 
 | 
                string s = ""; 
 | 
                int sYear = 0; 
 | 
                int sPeriod = 0; 
 | 
                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(omodel.HDate, ref sYear, ref sPeriod, ref s) == false) 
 | 
                { 
 | 
                    sReturn = s; 
 | 
                    return false; 
 | 
                } 
 | 
                omodel.HYear = sYear; 
 | 
                omodel.HPeriod = sPeriod; 
 | 
  
 | 
                DataSet Ds; 
 | 
                oCn.BeginTran(); 
 | 
                //删除主表 
 | 
                oCn.RunProc("Delete From Kf_ICStockBillMain  where HInterID=" + omodel.HInterID.ToString()); 
 | 
                //插入子表 
 | 
                oCn.RunProc("EXEC h_p_Kf_MateOutBillSub_Red_Insert " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'"); 
 | 
                //插入主表 
 | 
                oCn.RunProc("Insert Into Kf_ICStockBillMain   " + 
 | 
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate,HMainSourceBillType" + 
 | 
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" + 
 | 
                ",HSupID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID" + 
 | 
                ",HKeeperID,HDeptID,HExplanation,HInnerBillNo,HRedBlueFlag" + 
 | 
                ") " + 
 | 
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "',convert(varchar(10),getdate(),120),'" + omodel.HMainSourceBillType + "'" + 
 | 
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + omodel.HMaker + "',convert(varchar(10),getdate(),120)" + 
 | 
                ", " + omodel.HSupID.ToString() + "," + omodel.HWHID.ToString() + "," + omodel.HSCWHID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HManagerID.ToString() + "," + omodel.HSecManagerID.ToString() + 
 | 
                ", " + omodel.HKeeperID.ToString() + "," + omodel.HDeptID.ToString() + ",'" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "'," + DBUtility.ClsPub.BoolToString(omodel.HRedBlueFlag) + 
 | 
                ") "); 
 | 
                //更新关联数量 
 | 
                oCn.RunProc("exec h_p_Sc_UpDatePPBomRelation_Add " + omodel.HInterID.ToString()); 
 | 
                //审核单据 
 | 
                oCn.RunProc("Update Kf_ICStockBillMain Set HChecker='" + omodel.HMaker + "',HCheckDate=convert(varchar(10),getdate(),120),HBillStatus=2 where HInterID= " + omodel.HInterID.ToString()); 
 | 
                sReturn = "新增单据成功!"; 
 | 
                oCn.Commit(); 
 | 
                return true; 
 | 
            } 
 | 
            catch (Exception e) 
 | 
            { 
 | 
                sReturn = e.Message; 
 | 
                oCn.RollBack(); 
 | 
                throw (e); 
 | 
            } 
 | 
        } 
 | 
  
 | 
  
 | 
  
 | 
  
 | 
  
 | 
  
 | 
    } 
 | 
} 
 |