using System; 
 | 
using System.Collections.Generic; 
 | 
using System.ComponentModel; 
 | 
using System.Data; 
 | 
using System.Drawing; 
 | 
using System.Text; 
 | 
using System.Windows.Forms; 
 | 
using gregn6Lib; 
 | 
using SQLHelper; 
 | 
using DBUtility; 
 | 
using System.Threading; 
 | 
using System.IO; 
 | 
  
 | 
namespace WorkM 
 | 
{ 
 | 
    public partial class Sc_ICMOBillList : Form 
 | 
    { 
 | 
        public Sc_ICMOBillList() 
 | 
        { 
 | 
            InitializeComponent(); 
 | 
        } 
 | 
        public DBUtility.frmBillQueryCondition_New frmCondition; 
 | 
        public string ViewName = "h_v_IF_ICMOBillList"; 
 | 
        public string ModCaption = "生产任务单列表"; 
 | 
        public const string ModName = "3710"; 
 | 
        public const string ModRightName = "Sc_ICMOBill"; 
 | 
        public const string ModRightNameEdit = ModRightName + "_Edit"; 
 | 
        public const string ModRightNameCheck = ModRightName + "_Check"; 
 | 
        public const string ModRightNameClose = ModRightName + "_Close"; 
 | 
        public const string ModRightNameDelete = ModRightName + "_Delete"; 
 | 
        DAL.ClsSc_ICMOBill oBill = new DAL.ClsSc_ICMOBill(); 
 | 
        public Sc_ICMOBill oFrm; 
 | 
        public string sDlgWhere = "";  //外窗体递入 
 | 
        Pub_Class.ClsGridListSum oSumGrid = new Pub_Class.ClsGridListSum(); 
 | 
  
 | 
        // 
 | 
        private void initGrid() 
 | 
        { 
 | 
            DBUtility.Xt_BaseBillFun.initGridList(grdMain,this.Name); 
 | 
        } 
 | 
        // 
 | 
  
 | 
        private void Display() 
 | 
        { 
 | 
            ClsCN SubCn = new ClsCN(); 
 | 
            DataSet DSet; 
 | 
            string sSql = ""; 
 | 
            string sWhere = ""; 
 | 
            //过滤条件 
 | 
            if (frmCondition.SqlStr.Trim().Length == 0) 
 | 
                return; 
 | 
            sSql = frmCondition.SqlStr + sWhere + sDlgWhere + " and HPRDORGID=" + DBUtility.ClsPub.HOrgID + " order by 单据号 desc,hsubid "; 
 | 
            // 
 | 
            DSet = SubCn.RunProcReturn(sSql, ViewName, ref DBUtility.ClsPub.sExeReturnInfo); 
 | 
            //生成首行标题 
 | 
            if (DSet == null) 
 | 
            { 
 | 
                MessageBox.Show("没有返回任何结果,请在过滤框中点击【恢复】按钮,尝试再次查询!" + DBUtility.ClsPub.sExeReturnInfo); 
 | 
                return; 
 | 
            } 
 | 
            //释放冻结 
 | 
            DBUtility.Xt_BaseBillFun.CancelFrozenCol(grdMain); 
 | 
            // 
 | 
            grdMain.DataSource = DSet.Tables[0].DefaultView; 
 | 
            //设置合计列 
 | 
            string sTotalCol = ""; 
 | 
            sTotalCol = DBUtility.Gy_BaseFun.GetTotalCols(DSet); 
 | 
            string[] sT; 
 | 
            sT = sTotalCol.Split(Convert.ToChar(",")); 
 | 
            oSumGrid.BuildTotalCols(sT); 
 | 
            //   
 | 
            //冻结 
 | 
            int FrCol = DBUtility.ClsPub.isInt(frmCondition.txtFrozenCol.Text); 
 | 
            string s = frmCondition.cmbHComplete.Text; 
 | 
            DBUtility.Xt_BaseBillFun.DisplayGrid(grdMain, this.Name, s, FrCol); 
 | 
            //画线 
 | 
            GraphLine(); 
 | 
  
 | 
            Total(); 
 | 
             
 | 
             
 | 
            //  
 | 
        } 
 | 
        // 
 | 
        private void timer1_Tick(object sender, EventArgs e) 
 | 
        { 
 | 
            timer1.Enabled=false; 
 | 
            initGrid(); 
 | 
            Display(); 
 | 
        } 
 | 
  
 | 
        private void tc_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            this.Close(); 
 | 
        } 
 | 
  
 | 
        private void sx_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            timer1.Enabled = true; 
 | 
        } 
 | 
  
 | 
        private void dj_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Sub_ShowBill(); 
 | 
        } 
 | 
        //显示单据 
 | 
        private void Sub_ShowBill() 
 | 
        { 
 | 
            Int64 lngBillKey = 0; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            lngBillKey =DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); 
 | 
            if (lngBillKey == 0) 
 | 
                return; 
 | 
            DAL.ClsSc_ICMOBill oBill = new DAL.ClsSc_ICMOBill(); 
 | 
            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
            { 
 | 
                oFrm = new Sc_ICMOBill(); 
 | 
                oFrm.BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_View; 
 | 
                oFrm.BillOld = oBill; 
 | 
                oFrm.ShowDialog(); 
 | 
                if (oFrm.BillChange) 
 | 
                { 
 | 
                    if (MessageBox.Show("单据列表已经发生变化,是否刷新", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) 
 | 
                    { 
 | 
                        timer1.Enabled = true; 
 | 
                    } 
 | 
                } 
 | 
            } 
 | 
            else  
 | 
            { 
 | 
                MessageBox.Show("单据未找到", "提示"); 
 | 
            } 
 | 
            oBill = null; 
 | 
        } 
 | 
        // 
 | 
        private void Sub_DownBill_Single() 
 | 
        { 
 | 
            ClsCN oCn = new ClsCN(); 
 | 
            DataSet Ds; 
 | 
            Int64 HICMOID = 0; 
 | 
            Int64 HICMOEntryID = 0; 
 | 
            string HICMONo = ""; 
 | 
            Int64 HMaterID = 0; 
 | 
            Int64 HUnitID = 0; 
 | 
            Int64 HBomID = 0; 
 | 
            DateTime HPlanCommitDate = DateTime.Now; 
 | 
            DateTime HPlanFinishDate = DateTime.Now; 
 | 
            Int64 HDeptID = 0; 
 | 
            Int64 HRoutingID = 0; 
 | 
            double HQty = 0; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            if (grdMain.SelectedRows.Count > 1) 
 | 
            { 
 | 
                MessageBox.Show("只允许选择一张生产订单!"); 
 | 
                return; 
 | 
            } 
 | 
            if (DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("状态")].Value) != "开工" 
 | 
                 || DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("状态")].Value) != "下达") 
 | 
            { 
 | 
                MessageBox.Show("只允许下推下达或者开工状态的生产订单!"); 
 | 
                return; 
 | 
            } 
 | 
            HICMOID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("hmainid")].Value); 
 | 
            HICMOEntryID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("HEntryID")].Value); 
 | 
            HICMONo = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("单据号")].Value); 
 | 
            HMaterID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("hmaterid")].Value); 
 | 
            HUnitID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("HUnitID")].Value); 
 | 
            HBomID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("hbomid")].Value); 
 | 
            HPlanCommitDate = DBUtility.ClsPub.isDate(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("计划开工日期")].Value); 
 | 
            HPlanFinishDate = DBUtility.ClsPub.isDate(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("计划完工日期")].Value); 
 | 
            HDeptID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("hdeptid")].Value); 
 | 
            HRoutingID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("HRoutingID")].Value); 
 | 
            HQty = DBUtility.ClsPub.isDoule(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("可下推数量")].Value); 
 | 
            if (HRoutingID <= 0) 
 | 
            { 
 | 
                MessageBox.Show("本单未设置工艺路线,不允许下推!"); 
 | 
                return; 
 | 
            } 
 | 
  
 | 
            Sc_ProcessExchangeBill oPEB = new Sc_ProcessExchangeBill(); 
 | 
            Ds = oCn.RunProcReturn("select * from h_v_S_Sc_ICMOBillList where hmainid=" + HICMOID + " and hentryID=" + HICMOEntryID.ToString(), "h_v_S_Sc_ICMOBillList"); 
 | 
            if (Ds.Tables[0].Rows.Count > 0) 
 | 
            { 
 | 
                //oPEB.Sub_WriteInForm(Ds.Tables[0], 0); 
 | 
                oPEB.BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew; 
 | 
                oPEB.oXT = Ds; 
 | 
                oPEB.ShowDialog(); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        // 
 | 
        private Int32 Fun_GetCol(string sCol) 
 | 
        { 
 | 
            return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain); 
 | 
        } 
 | 
        // 
 | 
        private void Sc_ICMOBillList_Load(object sender, EventArgs e) 
 | 
        { 
 | 
            // 
 | 
            frmCondition = new frmBillQueryCondition_New(); 
 | 
            this.Text = ModCaption; 
 | 
            lblCaption.Text = ModCaption; 
 | 
            oSumGrid.ogrdMain = grdMain;  //初始化 new 
 | 
            oSumGrid.oGridsum = grdSum; 
 | 
            initGrid(); 
 | 
        } 
 | 
  
 | 
        private void grdMain_DblClick(object sender, EventArgs e) 
 | 
        { 
 | 
            Sub_ShowBill(); 
 | 
        } 
 | 
  
 | 
        private void cx_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            frmCondition = new frmBillQueryCondition_New(); 
 | 
            SetCondition(frmCondition, ViewName, this.Name); 
 | 
            frmCondition.ShowDialog(); 
 | 
            if (frmCondition.Tag.ToString() == "OK") 
 | 
            { 
 | 
                Display(); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        public void SetCondition(frmBillQueryCondition_New frmCondition, string ViewName, string Name) 
 | 
        { 
 | 
            frmCondition.Tag = ""; 
 | 
            frmCondition.ViewName = ViewName; 
 | 
            frmCondition.ModName = Name; 
 | 
        } 
 | 
  
 | 
        private void xz_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            // 
 | 
            oFrm = new Sc_ICMOBill(); 
 | 
            oFrm.ShowDialog(); 
 | 
        } 
 | 
  
 | 
        private void sc_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Sub_DeleteBill(); 
 | 
        } 
 | 
        //删除 
 | 
        private void Sub_DeleteBill() 
 | 
        { 
 | 
            //编辑权限 
 | 
            if (!DBUtility.ClsPub.Security_Log(ModRightNameEdit, 1, true,DBUtility.ClsPub.CurUserName)) 
 | 
            { 
 | 
                return; 
 | 
            } 
 | 
            // 
 | 
            Int64 lngBillKey = 0; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); 
 | 
            if (lngBillKey == 0) 
 | 
                return; 
 | 
            DAL.ClsSc_ICMOBill  oBill = new DAL.ClsSc_ICMOBill(); 
 | 
            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
            { 
 | 
                if (MessageBox.Show("确定要删除当前单据?", "提示", MessageBoxButtons.OKCancel)==DialogResult.OK) 
 | 
                { 
 | 
                    if (oBill.omodel.HChecker != "") 
 | 
                    { 
 | 
                        MessageBox.Show("单据已经审核,不能删除!", "提示"); 
 | 
                        return; 
 | 
                    } 
 | 
                    //后台判断是否允许删除 
 | 
                    if (!oBill.Fun_AllowDeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
                    { 
 | 
                        MessageBox.Show(DBUtility.ClsPub.sExeReturnInfo + ",不允许删除", "提示"); 
 | 
                        return; 
 | 
                    } 
 | 
                    // 
 | 
                    if (!oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
                    { 
 | 
                         
 | 
                        MessageBox.Show(DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                        return; 
 | 
                    } 
 | 
                    else 
 | 
                    { 
 | 
                        //写入日志 
 | 
                        DBUtility.ClsPub.Add_Log(DBUtility.ClsPub.CurUserName, "删除生产订单:" + oBill.omodel.HBillNo + ".", DBUtility.ClsPub.CurUserName); 
 | 
                        // 
 | 
                        Display(); 
 | 
                    } 
 | 
  
 | 
                } 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                MessageBox.Show("单据未找到", "提示"); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void timer2_Tick(object sender, EventArgs e) 
 | 
        { 
 | 
            timer2.Enabled = false; 
 | 
            frmCondition = new frmBillQueryCondition_New(); 
 | 
            SetCondition(frmCondition, ViewName, this.Name); 
 | 
            frmCondition.ShowDialog(); 
 | 
            if (frmCondition.Tag.ToString() == "OK") 
 | 
            { 
 | 
                timer1.Enabled = true; 
 | 
            } 
 | 
        } 
 | 
  
 | 
         
 | 
  
 | 
        private void bclk_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            //保存列宽 
 | 
            DBUtility.Xt_BaseBillFun.SaveGrid(grdMain, this.Name); 
 | 
        } 
 | 
  
 | 
        private void mrlk_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            DBUtility.Xt_BaseBillFun.DefaultGridView(grdMain, this.Name); 
 | 
        } 
 | 
        //  
 | 
        private void GraphLine() 
 | 
        { 
 | 
            int MainIDCol = Fun_GetCol("hmainid"); 
 | 
            int SubIDCol = Fun_GetCol("hsubid"); 
 | 
            string s = frmCondition.cmbHComplete.Text; 
 | 
            long n=0; 
 | 
            DBUtility.Xt_BaseBillFun.GraphLine(grdMain, MainIDCol, SubIDCol, s,ref n); 
 | 
            //显示 
 | 
            lbldj.Text = "查询出 " + n.ToString() + " 张单据"; 
 | 
            lbljl.Text = "共有 " + grdMain.RowCount.ToString() + " 条记录"; 
 | 
        } 
 | 
        //审核 
 | 
        private void sh_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            this.Sub_CheckBill(); 
 | 
        } 
 | 
  
 | 
        //审核单据 
 | 
        private void Sub_CheckBill() 
 | 
        { 
 | 
            //审核权限 
 | 
            if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true, DBUtility.ClsPub.CurUserName)) 
 | 
            { 
 | 
                return; 
 | 
            } 
 | 
            // 
 | 
            Int64 lngBillKey = 0; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); 
 | 
            if (lngBillKey == 0) 
 | 
                return; 
 | 
            DAL.ClsSc_ICMOBill  oBill = new DAL.ClsSc_ICMOBill(); 
 | 
            //查看是否已审核,关闭,作废 
 | 
            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
            { 
 | 
                if (oBill.omodel.HChecker.Trim() != "") 
 | 
                { 
 | 
                    MessageBox.Show("单据已审核!不能再次审核", "提示"); 
 | 
                    return; 
 | 
                } 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                MessageBox.Show("单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                return; 
 | 
            } 
 | 
            //审核 
 | 
            if (oBill.CheckBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true) 
 | 
            { 
 | 
                MessageBox.Show("审核成功!", "提示"); 
 | 
                return; 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                MessageBox.Show("审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                return; 
 | 
            } 
 | 
        } 
 | 
        //反审单据 
 | 
        private void Sub_AbandonCheck() 
 | 
        { 
 | 
            //审核权限 
 | 
            if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true,DBUtility.ClsPub.CurUserName)) 
 | 
            { 
 | 
                return; 
 | 
            } 
 | 
            // 
 | 
            Int64 lngBillKey = 0; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); 
 | 
            if (lngBillKey == 0) 
 | 
                return; 
 | 
            DAL.ClsSc_ICMOBill  oBill = new DAL.ClsSc_ICMOBill(); 
 | 
            //查看是否已审核,关闭,作废 
 | 
            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
            { 
 | 
                if (oBill.omodel.HChecker.Trim() == "") 
 | 
                { 
 | 
                    MessageBox.Show("单据未审核!不需要反审核!", "提示"); 
 | 
                    return; 
 | 
                } 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                MessageBox.Show("单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                return; 
 | 
            } 
 | 
            //反审核 
 | 
            if (oBill.AbandonCheck(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true) 
 | 
            { 
 | 
                MessageBox.Show("反审核成功!", "提示"); 
 | 
                return; 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                MessageBox.Show("反审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                return; 
 | 
            } 
 | 
        } 
 | 
        //反审核 
 | 
        private void qsh_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Sub_AbandonCheck(); 
 | 
        } 
 | 
  
 | 
        private void GraphicsGrid() 
 | 
        { 
 | 
            DBUtility.Xt_BaseBillFun.GraphicsGrid(grdMain); 
 | 
        } 
 | 
  
 | 
        #region  //打印设置 
 | 
  
 | 
        GridppReport Report; 
 | 
  
 | 
        //预览 
 | 
        int CurRows = 0; 
 | 
        private void yl_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            //选择打印模板 
 | 
            BLL.Gy_OpenTmp oFrm = new BLL.Gy_OpenTmp(); 
 | 
            oFrm.sBillName = ModName; 
 | 
            oFrm.sBillModel = ModCaption; 
 | 
            oFrm.ShowDialog(); 
 | 
            if (oFrm.OKTag == Pub_Class.ClsPub.Enum_OKTag.OKTag_OK) 
 | 
            { 
 | 
                CurRows = grdMain.CurrentRow.Index; 
 | 
                Sub_SetReport(oFrm.sOpenTmp); 
 | 
                Report.PrintPreview(true); 
 | 
                Thread.Sleep(1000); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void Sub_SetReport(string sOpenTmp) 
 | 
        { 
 | 
            //判断行数 
 | 
            // 
 | 
            Report = new GridppReport(); 
 | 
            Report.LoadFromFile(DBUtility.ClsPub.AppPath + @"\" + sOpenTmp + ".grf");  //here . 
 | 
            Report.BeforePostRecord += new _IGridppReportEvents_BeforePostRecordEventHandler(ReportBeforePostRecord); 
 | 
            Report.FetchRecord += new _IGridppReportEvents_FetchRecordEventHandler(ReportFetchRecordByDataTable); 
 | 
        } 
 | 
  
 | 
        //填入单据表头信息 
 | 
        private void ReportBeforePostRecord()//your report?kao 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                Report.FieldByName("单据号").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("单据号")].Value.ToString(); 
 | 
                Report.FieldByName("计划生产数量").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("计划生产数量")].Value.ToString(); 
 | 
                Report.FieldByName("计划跟踪号").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("计划跟踪号")].Value.ToString(); 
 | 
                Report.FieldByName("产品代码").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("产品代码")].Value.ToString(); 
 | 
                Report.FieldByName("产品名称").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("产品名称")].Value.ToString(); 
 | 
                Report.FieldByName("规格型号").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("规格型号")].Value.ToString(); 
 | 
            } 
 | 
            catch (Exception e) 
 | 
            { 
 | 
                MessageBox.Show("打印失败!表头:" + e.Message); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void ReportFetchRecordByDataTable() 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                DataTable ds = new DataTable(); 
 | 
                BLL.Utility.FillRecordToReport_FstRow(Report, grdMain, ds, Fun_GetCol("hmainid")); 
 | 
            } 
 | 
            catch (Exception e) 
 | 
            { 
 | 
                MessageBox.Show("打印失败!" + e.Message); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void dy_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            //选择打印模板 
 | 
            BLL.Gy_OpenTmp oFrm = new BLL.Gy_OpenTmp(); 
 | 
            oFrm.sBillName = ModName; 
 | 
            oFrm.sBillModel = ModCaption; 
 | 
            oFrm.ShowDialog(); 
 | 
            if (oFrm.OKTag == Pub_Class.ClsPub.Enum_OKTag.OKTag_OK) 
 | 
            { 
 | 
                // 
 | 
                for (int i = 0; i <= grdMain.SelectedRows.Count - 1; i++) 
 | 
                { 
 | 
                    CurRows = grdMain.SelectedRows[i].Index; 
 | 
                    Sub_SetReport(oFrm.sOpenTmp); 
 | 
                    Report.Print(false); 
 | 
                    Thread.Sleep(1000); 
 | 
                } 
 | 
            } 
 | 
        } 
 | 
  
 | 
  
 | 
  
 | 
        #endregion 
 | 
        // 
 | 
        private void grdMain_Paint(object sender, PaintEventArgs e) 
 | 
        { 
 | 
            GraphicsGrid(); 
 | 
        } 
 | 
  
 | 
        //合计 new 
 | 
        private void Total() 
 | 
        { 
 | 
            if (grdMain.Rows.Count > 0 &&  grdMain.ColumnCount>0) 
 | 
            { 
 | 
                oSumGrid.SetGridsum(); 
 | 
                oSumGrid.Total(); 
 | 
            } 
 | 
        } 
 | 
        //合计 new 
 | 
        private void grdMain_ColumnWidthChanged(object sender, DataGridViewColumnEventArgs e) 
 | 
        { 
 | 
            Total(); 
 | 
        } 
 | 
        //合计 new 
 | 
        private void grdMain_CellMouseUp(object sender, DataGridViewCellMouseEventArgs e) 
 | 
        { 
 | 
            Total(); 
 | 
        } 
 | 
        //引出EXCEL 
 | 
        private void dc_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            DBUtility.Gy_BaseFun.DataToExcel(this.Text, grdMain); 
 | 
        } 
 | 
  
 | 
        private void xd_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Int64 lngBillKey = 0; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); 
 | 
            if (lngBillKey == 0) 
 | 
                return; 
 | 
            DAL.ClsSc_ICMOBill oBill = new DAL.ClsSc_ICMOBill(); 
 | 
            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
            { 
 | 
                if (MessageBox.Show("此操作不能撤销,是否下达!", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) 
 | 
                { 
 | 
                    if (!oBill.AddPPBom(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
                    { 
 | 
                        MessageBox.Show("下达失败," + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                        return; 
 | 
                    } 
 | 
                    else 
 | 
                    { 
 | 
                        MessageBox.Show("下达成功!", "提示"); 
 | 
                        return; 
 | 
                    } 
 | 
                } 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                MessageBox.Show("单据未找到", "提示"); 
 | 
            } 
 | 
            oBill = null; 
 | 
        } 
 | 
  
 | 
        private void btnOK_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Sub_FastQuery(); 
 | 
        } 
 | 
  
 | 
  
 | 
        //快速过滤 
 | 
        private void Sub_FastQuery() 
 | 
        { 
 | 
            string sFastSQL = ""; 
 | 
            //判断状态 
 | 
            //if (cmbHStatus.Text != "全部" && cmbHStatus.Text != "") 
 | 
            //{ 
 | 
            //    if (cmbHStatus.Text == "未审核") 
 | 
            //    { 
 | 
            //        sFastSQL = sFastSQL + " and 审核人='' "; 
 | 
            //    } 
 | 
            //    if (cmbHStatus.Text == "已审核") 
 | 
            //    { 
 | 
            //        sFastSQL = sFastSQL + " and 审核人<>'' "; 
 | 
            //    } 
 | 
            //    if (cmbHStatus.Text == "未关闭") 
 | 
            //    { 
 | 
            //        sFastSQL = sFastSQL + " and 关闭人='' "; 
 | 
            //    } 
 | 
            //    if (cmbHStatus.Text == "已关闭") 
 | 
            //    { 
 | 
            //        sFastSQL = sFastSQL + " and 关闭人<>'' "; 
 | 
            //    } 
 | 
            //} 
 | 
            //判断开始日期 
 | 
            if (dtpHBDate.Checked) 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and 日期>='" + dtpHBDate.Value.ToShortDateString() + "'"; 
 | 
            } 
 | 
            //判断结束日期 
 | 
            if (dtpHEDate.Checked) 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and 日期<='" + dtpHEDate.Value.ToShortDateString() + "'"; 
 | 
            } 
 | 
            //生产订单号 
 | 
            if (txtHBillNo.Text.Trim() != "") 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and 单据号 like '%" + txtHBillNo.Text + "%'"; 
 | 
            } 
 | 
            //生产订单号 
 | 
            if (txtHDeptID.Text.Trim() != "") 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and 生产车间名称 like '%" + txtHDeptID.Text + "%'"; 
 | 
            } 
 | 
            //物料 
 | 
            if (txtHMaterID.Text.Trim() != "") 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and  (物料代码 like '%" + txtHMaterID.Text.Trim() + "%' or 物料名称 like '%" + txtHMaterID.Text.Trim() + "%' or 规格型号 like '%" + txtHMaterID.Text.Trim() + "%') "; 
 | 
            } 
 | 
            //订单跟踪号 
 | 
            if (txtHOrderProcNO.Text.Trim() != "") 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and 订单跟踪号 like '%" + txtHOrderProcNO.Text + "%'"; 
 | 
            } 
 | 
            //if (sFastSQL.Trim() == "") 
 | 
            //{ 
 | 
            //    MessageBox.Show("没有输入条件!"); 
 | 
            //    return; 
 | 
            //} 
 | 
            sFastSQL = sFastSQL + " and HPRDORGID=" + DBUtility.ClsPub.HOrgID + ""; 
 | 
            sDlgWhere = sFastSQL; 
 | 
            Display(); 
 | 
            sDlgWhere = ""; 
 | 
        } 
 | 
  
 | 
        private void down_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                //================================= 
 | 
                ClsCN oCn = new ClsCN(); 
 | 
                DataSet Ds; 
 | 
                Int64 HICMOID = 0; 
 | 
                Int64 HEntryID = 0; 
 | 
                string HICMONo = ""; 
 | 
                Int64 HMaterID = 0; 
 | 
                Int64 HUnitID = 0; 
 | 
                Int64 HBomID = 0; 
 | 
                DateTime HPlanCommitDate = DateTime.Now; 
 | 
                DateTime HPlanFinishDate = DateTime.Now; 
 | 
                Int64 HDeptID = 0; 
 | 
                Int64 HRoutingID = 0; 
 | 
                double HQty = 0; 
 | 
                if (grdMain.CurrentRow == null) 
 | 
                    return; 
 | 
                if (grdMain.SelectedRows.Count > 1) 
 | 
                { 
 | 
                    MessageBox.Show("只允许选择一张生产订单!"); 
 | 
                    return; 
 | 
                } 
 | 
                HICMOID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("hmainid")].Value); 
 | 
                HEntryID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("HEntryID")].Value); 
 | 
                HICMONo = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("单据号")].Value); 
 | 
                HMaterID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("hmaterid")].Value); 
 | 
                HUnitID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("HUnitID")].Value); 
 | 
                HBomID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("hbomid")].Value); 
 | 
                HPlanCommitDate = DBUtility.ClsPub.isDate(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("计划开工日期")].Value); 
 | 
                HPlanFinishDate = DBUtility.ClsPub.isDate(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("计划完工日期")].Value); 
 | 
                HDeptID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("hdeptid")].Value); 
 | 
                HRoutingID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("HRoutingInterID")].Value); 
 | 
                HQty = DBUtility.ClsPub.isDoule(grdMain.Rows[grdMain.CurrentCell.RowIndex].Cells[Fun_GetCol("计划生产数量")].Value); 
 | 
                //////////////////////////// 
 | 
                Sc_ProcessExchangeBill oSc_ProcessExchangeBill = new Sc_ProcessExchangeBill(); 
 | 
                Ds = oCn.RunProcReturn("select * from h_v_S_Sc_ICMOBillList where hmainid=" + HICMOID+ " and HEntryID="+ HEntryID, "h_v_S_Sc_ICMOBillList"); 
 | 
                if (Ds!=null &&  Ds.Tables[0].Rows.Count > 0) 
 | 
                { 
 | 
                    //oPEB.BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew; 
 | 
                    //oPEB.oXT = Ds; 
 | 
                    //oPEB.ShowDialog(); 
 | 
  
 | 
                    oSc_ProcessExchangeBill.BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew; 
 | 
                    oSc_ProcessExchangeBill.ModCaption = "工序流转卡"; 
 | 
                    oSc_ProcessExchangeBill.oXT = Ds; 
 | 
                    oSc_ProcessExchangeBill.ShowDialog(); 
 | 
                } 
 | 
                ///////////////////////////// 
 | 
            } 
 | 
            catch(Exception e1) 
 | 
            { 
 | 
                MessageBox.Show("下推失败,原因" + e1.Message); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void eXCELToolStripMenuItem_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            DBUtility.Gy_BaseFun.DataToExcel(this.Text, grdMain); 
 | 
  
 | 
        } 
 | 
  
 | 
        private void cSVToolStripMenuItem_Click(object sender, EventArgs e) 
 | 
        { 
 | 
  
 | 
            DBUtility.Gy_BaseFun.DataGridViewToExcel2(grdMain, this.Text, this.Text); 
 | 
        } 
 | 
  
 | 
        //重新同步 
 | 
        private void btnTB_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); 
 | 
            DataSet DS = oCn.RunProcReturn("exec h_p_WMS_ERPSourceBillToLocal '" + txtHBillNo2.Text.Trim() + "','" + ModName + "'", "h_p_WMS_ERPSourceBillToLocal"); 
 | 
            if (DS == null) 
 | 
            { 
 | 
                MessageBox.Show("同步单据失败!"); 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                if (DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HBack"]) == "2") 
 | 
                { 
 | 
                    MessageBox.Show(DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HBackRemark"])); 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    MessageBox.Show("同步单据成功!"); 
 | 
                    Display(); 
 | 
                } 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
} 
 |