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.IO; 
 | 
using System.Reflection; 
 | 
using Pub_Class; 
 | 
  
 | 
namespace WorkM 
 | 
{ 
 | 
    public partial class MES_StationEntrustInBillList : Form 
 | 
    { 
 | 
        public MES_StationEntrustInBillList() 
 | 
        { 
 | 
            InitializeComponent(); 
 | 
        } 
 | 
        public DBUtility.frmBillQueryCondition_New frmCondition; 
 | 
        public string ViewName = "h_v_MES_StationEntrustInBillList"; 
 | 
        public string ModCaption = "委外发出列表"; 
 | 
        public const string ModName = "3792"; 
 | 
        public const string ModRightName = "MES_StationEntrustInBill"; 
 | 
        public const string ModRightNameEdit = ModRightName + "_Edit"; 
 | 
        public const string ModRightNameCheck = ModRightName + "_Check"; 
 | 
        public const string ModRightNameClose = ModRightName + "_Close"; 
 | 
        public const string ModRightNameDelete = ModRightName + "_Delete"; 
 | 
        public const string ModRightNameMoney = ModRightName + "_Money"; 
 | 
        DAL.ClsSc_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); 
 | 
        public MES_StationEntrustInBill oFrm; 
 | 
        //public MES_StationEntrustInBill_NoLot oFrm2; 
 | 
        Pub_Class.ClsGridListSum oSumGrid = new Pub_Class.ClsGridListSum(); 
 | 
        public string sDlgWhere = "";  //外窗体递入 
 | 
  
 | 
        // 
 | 
        private void initGrid() 
 | 
        { 
 | 
            DBUtility.Xt_BaseBillFun.initGridList(grdMain, this.Name); 
 | 
            DBUtility.Xt_BaseBillFun.initGridList(grdSumPrint, this.Name + "123"); 
 | 
        } 
 | 
        // 
 | 
  
 | 
        private void Display() 
 | 
        { 
 | 
            try 
 | 
            { 
 | 
                ClsCN SubCn = new ClsCN(); 
 | 
                DataSet DSet; 
 | 
                string sSql = ""; 
 | 
                string sWhere = ""; 
 | 
  
 | 
                if (chkWJieAn.Checked == true) 
 | 
                { 
 | 
                    sWhere = " and HBillStatus<>3 "; 
 | 
                } 
 | 
  
 | 
                if (frmCondition.SqlStr.Trim().Length == 0) 
 | 
                { 
 | 
                    sSql = "Select top 5000 * from " + ViewName + " Where 1=1 " + sWhere + sDlgWhere + " order by 日期 desc,单据号 desc  "; 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    sSql = frmCondition.SqlStr + sWhere + sDlgWhere + " order by 日期 desc,单据号 desc   "; 
 | 
                } 
 | 
                // 
 | 
                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(); 
 | 
                ////判断金额权限 
 | 
                //if (!ClsPub.Security_Log(ModRightNameMoney, 1, false, DBUtility.ClsPub.CurUserName)) 
 | 
                //{ 
 | 
  
 | 
                //    grdMain.Columns[Fun_GetCol("单价")].Visible = false; 
 | 
                //    grdMain.Columns[Fun_GetCol("金额")].Visible = false; 
 | 
                //    grdMain.Columns[Fun_GetCol("备注")].Visible = false; 
 | 
                //} 
 | 
                //for (int i = 0; i < grdMain.Rows.Count; i++) 
 | 
                //{ 
 | 
                //    if (DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[Fun_GetCol("是否打印")].Value) == "是") 
 | 
                //    { 
 | 
                //        grdMain.Rows[i].DefaultCellStyle.BackColor = Color.Violet; 
 | 
                //    } 
 | 
                //} 
 | 
                //  
 | 
            } 
 | 
            catch(Exception e) 
 | 
            { 
 | 
                MessageBox.Show("显示失败!" + e.Message); 
 | 
  
 | 
            } 
 | 
        } 
 | 
        // 
 | 
        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; 
 | 
            string HLotNo = ""; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); 
 | 
            HLotNo = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("流转卡号")].Value); 
 | 
            if (lngBillKey == 0) 
 | 
                return; 
 | 
            DAL.ClsSc_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); 
 | 
            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
            { 
 | 
                if (HLotNo == "无Lot卡委外") 
 | 
                { 
 | 
                    //oFrm2 = new MES_StationEntrustInBill_NoLot(); 
 | 
                    //oFrm2.BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_View; 
 | 
                    //oFrm2.BillOld = oBill; 
 | 
                    //oFrm2.ShowDialog(); 
 | 
                    //if (oFrm2.BillChange) 
 | 
                    //{ 
 | 
                    //    if (MessageBox.Show("单据列表已经发生变化,是否刷新", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) 
 | 
                    //    { 
 | 
                    //        timer1.Enabled = true; 
 | 
                    //    } 
 | 
                    //} 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    oFrm = new MES_StationEntrustInBill(); 
 | 
                    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 Int32 Fun_GetCol(string sCol) 
 | 
        { 
 | 
            return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain); 
 | 
        } 
 | 
        // 
 | 
        private Int32 Fun_GetCol2(string sCol) 
 | 
        { 
 | 
            return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdSub1); 
 | 
        } 
 | 
        // 
 | 
        private void MES_StationEntrustInBillList_Load(object sender, EventArgs e) 
 | 
        { 
 | 
            // 
 | 
            frmCondition = new frmBillQueryCondition_New(); 
 | 
            this.Text = ModCaption; 
 | 
            lblCaption.Text = ModCaption; 
 | 
            oSumGrid.ogrdMain = grdMain;  //初始化 new 
 | 
            oSumGrid.oGridsum = grdSum; 
 | 
            initGrid(); 
 | 
            chkWJieAn.Checked = true; 
 | 
        } 
 | 
  
 | 
        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 MES_StationEntrustInBill(); 
 | 
            oFrm.ShowDialog(); 
 | 
        } 
 | 
  
 | 
        private void sc_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Sub_DeleteBill(); 
 | 
        } 
 | 
        //删除 
 | 
        private void Sub_DeleteBill() 
 | 
        { 
 | 
            //编辑权限 
 | 
            if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 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_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); 
 | 
            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
            { 
 | 
                if (MessageBox.Show("确定要删除当前单据?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK) 
 | 
                { 
 | 
                    ClsXt_SystemParameter oClsXt_SystemParameter = new ClsXt_SystemParameter(); 
 | 
                    string DeleteCtl = oClsXt_SystemParameter.GetSingleSystemParameter("MES_StationEntrustInBill_DeleteCtl", ref DBUtility.ClsPub.sExeReturnInfo); 
 | 
  
 | 
                    if (DeleteCtl == "Y" && oBill.omodel.HMaker != DBUtility.ClsPub.CurUserName && DBUtility.ClsPub.CurUserName != "admin" && DBUtility.ClsPub.CurUserName != "Admin") 
 | 
                    { 
 | 
                        MessageBox.Show("登录用户与制单人不一致,不允许删除", "提示"); 
 | 
                        return; 
 | 
                    } 
 | 
  
 | 
                    string c = ""; 
 | 
                    //if (oBill.DeleteCheck(oBill.omodel.HInterID, "委外发出单", ref c) == false) 
 | 
                    //{ 
 | 
                    //    MessageBox.Show(c, "提示"); 
 | 
                    //    return; 
 | 
                    //} 
 | 
                    //判断会计期是否合理 
 | 
                    string s = ""; 
 | 
                    int sYear = 0; 
 | 
                    int sPeriod = 0; 
 | 
                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(DBUtility.ClsPub.isDate(oBill.omodel.HDate), ref sYear, ref sPeriod, ref s) == false) 
 | 
                    { 
 | 
                        MessageBox.Show(s, "提示"); 
 | 
                        return; 
 | 
                    } 
 | 
  
 | 
  
 | 
                    if (oBill.omodel.HChecker != "") 
 | 
                    { 
 | 
                        MessageBox.Show("单据已经审核,不能删除!", "提示"); 
 | 
                        return; 
 | 
                     
 | 
                     
 | 
                    } 
 | 
  
 | 
                    SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); 
 | 
                    DataSet ds; 
 | 
                    //判断是否存在 相同单据号 的领料单 判断生产订单是否已结案,要求计划手工反结案     
 | 
                    ds = oCn.RunProcReturn("exec h_p_MES_StationInBill_DelCtrl  '" + oBill.omodel.HBillNo + "'", "h_p_MES_StationInBill_DelCtrl"); 
 | 
                    if (ds == null) 
 | 
                    { 
 | 
                        MessageBox.Show("判断关联失败!"); 
 | 
                        return; 
 | 
                    } 
 | 
                    if (ds.Tables[0].Rows.Count > 0 && Pub_Class.ClsPub.isInt(ds.Tables[0].Rows[0][0]) == 2) 
 | 
                    { 
 | 
                        MessageBox.Show(Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0][1])); 
 | 
                        return; 
 | 
                    } 
 | 
  
 | 
                    //if (!oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
                    //写入删除日志  
 | 
                    string WorkList = "删除委外发出单:" + oBill.omodel.HBillNo; 
 | 
                    //BLL.ClsPub_BLL.System_Log_DropAdd(WorkList); 
 | 
                    if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HProcExchInterID, oBill.omodel.HProcExchEntryID, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
                    { 
 | 
                        MessageBox.Show(DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                        return; 
 | 
                    } 
 | 
                    else 
 | 
                    { 
 | 
                        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; 
 | 
            for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
            { 
 | 
                lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value); 
 | 
                if (lngBillKey == 0) 
 | 
                    continue; 
 | 
                DAL.ClsSc_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); 
 | 
                //查看是否已审核,关闭,作废 
 | 
                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
                { 
 | 
                    if (oBill.omodel.HChecker.Trim() != "") 
 | 
                    { 
 | 
                        //MessageBox.Show("单据已审核!不能再次审核", "提示"); 
 | 
                        continue; 
 | 
                    } 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    //MessageBox.Show("单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
                //审核 
 | 
                if (oBill.CheckBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true) 
 | 
                { 
 | 
                    //MessageBox.Show("审核成功!", "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    //MessageBox.Show("审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
            } 
 | 
            MessageBox.Show("审核完毕!", "提示"); 
 | 
            Display(); 
 | 
        } 
 | 
        //反审单据 
 | 
        private void Sub_AbandonCheck() 
 | 
        { 
 | 
            //审核权限 
 | 
            if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true, DBUtility.ClsPub.CurUserName)) 
 | 
            { 
 | 
                return; 
 | 
            } 
 | 
            // 
 | 
            Int64 lngBillKey = 0; 
 | 
            string sBillNo = ""; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
            { 
 | 
                lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value); 
 | 
                sBillNo = DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("单据号")].Value); 
 | 
                if (lngBillKey == 0) 
 | 
                    continue; 
 | 
                DAL.ClsSc_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); 
 | 
                ////检查是否开票 
 | 
                //string d = ""; 
 | 
                //if (oBill.CheckIsKP(lngBillKey, ref d) == false) 
 | 
                //{ 
 | 
                //    MessageBox.Show("单据号:" + sBillNo+"已开票,未进行反审核!", "提示"); 
 | 
                //    continue; 
 | 
                //} 
 | 
                //查看是否已审核,关闭,作废 
 | 
                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
                { 
 | 
                    if (oBill.omodel.HChecker.Trim() == "") 
 | 
                    { 
 | 
                        //MessageBox.Show("单据未审核!不需要反审核!", "提示"); 
 | 
                        continue; 
 | 
                    } 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    //MessageBox.Show("单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
                //反审核 
 | 
                if (oBill.AbandonCheck(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true) 
 | 
                { 
 | 
                    //MessageBox.Show("反审核成功!", "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    //MessageBox.Show("反审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
            } 
 | 
            MessageBox.Show("反审核完毕!", "提示"); ; 
 | 
            Display(); 
 | 
        } 
 | 
        //反审核 
 | 
        private void qsh_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Sub_AbandonCheck(); 
 | 
        } 
 | 
  
 | 
        private void GraphicsGrid() 
 | 
        { 
 | 
            DBUtility.Xt_BaseBillFun.GraphicsGrid(grdMain); 
 | 
        } 
 | 
  
 | 
        #region  //打印设置 
 | 
  
 | 
        GridppReport Report; 
 | 
        //预览 
 | 
        private void yl_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Int64 lngBillKey = 0; 
 | 
            string sInterID = ""; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
            { 
 | 
                lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value); 
 | 
                if (lngBillKey == 0) 
 | 
                    return; 
 | 
                sInterID = sInterID + lngBillKey.ToString() + ","; 
 | 
            } 
 | 
            if (sInterID.Length > 1) 
 | 
            { 
 | 
                sInterID = sInterID.Remove(sInterID.Length - 1, 1); 
 | 
            } 
 | 
            if (dy_Check() == false) 
 | 
            { 
 | 
                MessageBox.Show("不允许打印不同送货单号!"); 
 | 
                return; 
 | 
            } 
 | 
  
 | 
            //SQLHelper.ClsCN oCn = new ClsCN(); 
 | 
            //DataSet Ds; 
 | 
            //Ds = oCn.RunProcReturn("exec h_p_MES_StationEntrustInBill_DY  '" + sInterID + "','" + ClsPub.CurUserName + "'", "h_p_MES_StationEntrustInBill_DY"); 
 | 
  
 | 
            //grdSub1.DataSource = Ds.Tables[0].DefaultView; 
 | 
  
 | 
            //选择打印模板 
 | 
            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) 
 | 
            { 
 | 
                // 
 | 
                Sub_SetReport(oFrm.sOpenTmp); 
 | 
                Report.PrintPreview(false); 
 | 
            } 
 | 
        } 
 | 
        public bool dy_Check() 
 | 
        { 
 | 
            string sHInnerBillNo = ""; 
 | 
            for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
            { 
 | 
                if (i == 0) 
 | 
                { 
 | 
                    sHInnerBillNo = DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("送货单号")].Value); 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    if (sHInnerBillNo != DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("送货单号")].Value)) 
 | 
                    { 
 | 
                        return false; 
 | 
                    } 
 | 
                } 
 | 
            } 
 | 
            return true; 
 | 
        } 
 | 
  
 | 
        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 Sub_SetReport2(string sOpenTmp) 
 | 
        { 
 | 
            //判断行数 
 | 
            // 
 | 
            Report = new GridppReport(); 
 | 
            Report.LoadFromFile(DBUtility.ClsPub.AppPath + @"\" + sOpenTmp + ".grf");  //here . 
 | 
            Report.BeforePostRecord += new _IGridppReportEvents_BeforePostRecordEventHandler(ReportBeforePostRecord2); 
 | 
            Report.FetchRecord += new _IGridppReportEvents_FetchRecordEventHandler(ReportFetchRecordByDataTable2); 
 | 
        } 
 | 
  
 | 
        public string sHSUPNAME; 
 | 
        public string sHFHBILLNO; 
 | 
        public string sHDATE; 
 | 
  
 | 
  
 | 
        //打印赋值表头 
 | 
        private void ReportBeforePostRecord2()//  
 | 
        { 
 | 
            Report.FieldByName("客户").AsString = sHSUPNAME; 
 | 
            Report.FieldByName("发货单号").AsString = sHFHBILLNO; 
 | 
            Report.FieldByName("日期").AsString = sHDATE; 
 | 
        } 
 | 
  
 | 
        private void ReportFetchRecordByDataTable2() 
 | 
        { 
 | 
            DataTable oDt = new DataTable(); 
 | 
            BLL.Utility.FillRecordToReport(Report, grdSumPrint, oDt, 0); 
 | 
        } 
 | 
  
 | 
        //打印赋值表头 
 | 
        private void ReportBeforePostRecord()//  
 | 
        { 
 | 
            //Report.FieldByName("供应商名称").AsString = DBUtility.ClsPub.isStrNull(grdSub1.Rows[0].Cells[Fun_GetCol2("供应商名称")].Value); 
 | 
            Report.FieldByName("供应商").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[0].Cells[Fun_GetCol("供应商")].Value); 
 | 
            Report.FieldByName("日期").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[0].Cells[Fun_GetCol("日期")].Value); 
 | 
            //Report.FieldByName("接受人").AsString = DBUtility.ClsPub.isStrNull(grdSub1.Rows[0].Cells[Fun_GetCol2("接受人")].Value); 
 | 
            //Report.FieldByName("供应商电话1").AsString = DBUtility.ClsPub.isStrNull(grdSub1.Rows[0].Cells[Fun_GetCol2("供应商电话1")].Value); 
 | 
            //Report.FieldByName("供应商电话2").AsString = DBUtility.ClsPub.isStrNull(grdSub1.Rows[0].Cells[Fun_GetCol2("供应商电话2")].Value); 
 | 
            //Report.FieldByName("币别").AsString = DBUtility.ClsPub.isStrNull(grdSub1.Rows[0].Cells[Fun_GetCol2("币别")].Value); 
 | 
            Report.FieldByName("单据号").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[0].Cells[Fun_GetCol("单据号")].Value); 
 | 
            Report.FieldByName("订单跟踪号").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[0].Cells[Fun_GetCol("订单跟踪号")].Value); 
 | 
        } 
 | 
        private void ReportFetchRecordByDataTable() 
 | 
        { 
 | 
            DataTable oDt = new DataTable(); 
 | 
            BLL.Utility.FillRecordToReport(Report, grdMain, oDt, 0); 
 | 
        } 
 | 
        //预览引出 
 | 
        private void Sub_SetReportYc(string sOpenTmp) 
 | 
        { 
 | 
            //判断行数 
 | 
            // 
 | 
            Report = new GridppReport(); 
 | 
            Report.LoadFromFile(DBUtility.ClsPub.AppPath + @"\" + sOpenTmp + ".grf");  //here . 
 | 
            Report.BeforePostRecord += new _IGridppReportEvents_BeforePostRecordEventHandler(ReportBeforePostRecordYc); 
 | 
            Report.FetchRecord += new _IGridppReportEvents_FetchRecordEventHandler(ReportFetchRecordByDataTableYc); 
 | 
        } 
 | 
  
 | 
        //打印赋值表头 
 | 
        private void ReportBeforePostRecordYc()//  
 | 
        { 
 | 
  
 | 
        } 
 | 
        private void ReportFetchRecordByDataTableYc() 
 | 
        { 
 | 
            DataTable oDt = new DataTable(); 
 | 
            BLL.Utility.FillRecordToReport(Report, grdMain, oDt, Fun_GetCol2("hmainid")); 
 | 
        } 
 | 
        // 
 | 
        #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.TotalAll(); 
 | 
                //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) 
 | 
        { 
 | 
            //DataGridViewToExcel2(); 
 | 
            ylyc(); 
 | 
        } 
 | 
        //打印模板预览引出 
 | 
        private void ylyc() 
 | 
        { 
 | 
            Sub_SetReportYc("委外工序转出单引出"); 
 | 
            Report.PrintPreview(false); 
 | 
        } 
 | 
  
 | 
        private void dy_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Int64 lngBillKey = 0; 
 | 
            string sInterID = ""; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
            { 
 | 
                lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value); 
 | 
                if (lngBillKey == 0) 
 | 
                    return; 
 | 
                sInterID = sInterID + lngBillKey.ToString() + ","; 
 | 
            } 
 | 
            if (sInterID.Length > 1) 
 | 
            { 
 | 
                sInterID = sInterID.Remove(sInterID.Length - 1, 1); 
 | 
            } 
 | 
  
 | 
            if (dy_Check() == false) 
 | 
            { 
 | 
                MessageBox.Show("不允许打印不同送货单号!"); 
 | 
                return; 
 | 
            } 
 | 
            //SQLHelper.ClsCN oCn = new ClsCN(); 
 | 
            //DataSet Ds; 
 | 
            //Ds = oCn.RunProcReturn("exec h_p_MES_StationEntrustInBill_DY  '" + sInterID + "','" + ClsPub.CurUserName + "'", "h_p_MES_StationEntrustInBill_DY"); 
 | 
  
 | 
            //grdSub1.DataSource = Ds.Tables[0].DefaultView; 
 | 
  
 | 
            //选择打印模板 
 | 
            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) 
 | 
            { 
 | 
                // 
 | 
                Sub_SetReport(oFrm.sOpenTmp); 
 | 
                Report.Print(false); 
 | 
                //更新 打印次数 
 | 
                for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
                { 
 | 
                    lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value); 
 | 
                    if (lngBillKey == 0) 
 | 
                        return; 
 | 
                    //oCn.RunProc("update Sc_StationInBillMain set HPrintQty=isnull(HPrintQty,0)+1 where HInterID=" + lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo); 
 | 
                    grdMain.SelectedRows[i].Cells[Fun_GetCol("是否打印")].Value = "是"; 
 | 
                    grdMain.SelectedRows[i].DefaultCellStyle.BackColor = Color.Violet; 
 | 
                } 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void txtHBillNo_KeyDown(object sender, KeyEventArgs e) 
 | 
        { 
 | 
            if (e.KeyCode == Keys.Enter) 
 | 
            { 
 | 
                Sub_FastQuery(); 
 | 
            } 
 | 
        } 
 | 
        //快速过滤 
 | 
        private void Sub_FastQuery() 
 | 
        { 
 | 
            string sFastSQL = ""; 
 | 
            //单据号 
 | 
            if (txtHBillNo.Text.Trim() != "") 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and 单据号 like '%" + txtHBillNo.Text + "%'"; 
 | 
            } 
 | 
            //流转卡号 
 | 
            if (txtHLotNo.Text.Trim() != "") 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and 流转卡号 like '%" + txtHLotNo.Text + "%'"; 
 | 
            } 
 | 
            //产品 
 | 
            if (txtHMaterID.Text.Trim() != "") 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and (产品代码 like '%" + txtHMaterID.Text + "%' or 产品名称 like '%" + txtHMaterID.Text + "%')"; 
 | 
            } 
 | 
            //订单跟踪号 
 | 
            if (txtHOrderProcNO.Text.Trim() != "") 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and 订单跟踪号 like '%" + txtHOrderProcNO.Text + "%'"; 
 | 
            } 
 | 
            //送货单号 
 | 
            if (txtHInnerBillNo.Text.Trim() != "") 
 | 
            { 
 | 
                sFastSQL = sFastSQL + " and 送货单号 like '%" + txtHInnerBillNo.Text + "%'"; 
 | 
            } 
 | 
            //if (sFastSQL.Trim() == "") 
 | 
            //{ 
 | 
            //    MessageBox.Show("没有输入条件!"); 
 | 
            //    return; 
 | 
            //} 
 | 
            sDlgWhere = sFastSQL; 
 | 
            Display(); 
 | 
        } 
 | 
  
 | 
        private void DataGridViewToExcel2() 
 | 
        { 
 | 
            SaveFileDialog saveFileDialog = new SaveFileDialog(); 
 | 
            saveFileDialog.Filter = "Execl文件(*.xls)|*.xls"; 
 | 
            saveFileDialog.FilterIndex = 0; 
 | 
            saveFileDialog.RestoreDirectory = true; 
 | 
            saveFileDialog.CreatePrompt = true; 
 | 
            saveFileDialog.Title = "数据视图导出EXCEL文件"; 
 | 
            saveFileDialog.ShowDialog(); 
 | 
            if (saveFileDialog.FileName == "") 
 | 
            { 
 | 
                return; 
 | 
            } 
 | 
            Stream myStream; 
 | 
            myStream = saveFileDialog.OpenFile(); 
 | 
            StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312")); 
 | 
            string str = ""; 
 | 
            DateTime start = DateTime.Now; 
 | 
            try 
 | 
            { 
 | 
                //写标题 
 | 
                bool sFirstCol = true; 
 | 
                for (int i = 0; i < grdMain.ColumnCount; i++) 
 | 
                { 
 | 
                    if (i > 0 && grdMain.Columns[i].HeaderText.Substring(0, 1) != "h" && grdMain.Columns[i].HeaderText.Substring(0, 1) != "H" && sFirstCol != true) 
 | 
                    { 
 | 
                        str += "\t"; 
 | 
                    } 
 | 
                    if (grdMain.Columns[i].HeaderText.Substring(0, 1) != "h" && grdMain.Columns[i].HeaderText.Substring(0, 1) != "H") 
 | 
                    { 
 | 
                        sFirstCol = false; 
 | 
                        str += grdMain.Columns[i].HeaderText; 
 | 
                    } 
 | 
                } 
 | 
                sw.WriteLine(str); 
 | 
  
 | 
                //写内容 
 | 
                for (int j = 0; j < grdMain.Rows.Count; j++) 
 | 
                { 
 | 
                    string tempStr = ""; 
 | 
                    sFirstCol = true; 
 | 
                    for (int k = 0; k < grdMain.Columns.Count; k++) 
 | 
                    { 
 | 
                        if (k > 0 && grdMain.Columns[k].HeaderText.Substring(0, 1) != "h" && grdMain.Columns[k].HeaderText.Substring(0, 1) != "H" && sFirstCol != true) 
 | 
                        { 
 | 
                            tempStr += "\t"; 
 | 
                        } 
 | 
                        if (grdMain.Columns[k].HeaderText.Substring(0, 1) != "h" && grdMain.Columns[k].HeaderText.Substring(0, 1) != "H") 
 | 
                        { 
 | 
                            sFirstCol = false; 
 | 
                            if (grdMain.Rows[j].Cells[k].Value == null) 
 | 
                            { 
 | 
                                tempStr += string.Empty; 
 | 
                            } 
 | 
                            else 
 | 
                            { 
 | 
                                tempStr += grdMain.Rows[j].Cells[k].Value.ToString(); 
 | 
                            } 
 | 
                        } 
 | 
                    } 
 | 
                    sw.WriteLine(tempStr); 
 | 
                } 
 | 
                sw.Close(); 
 | 
                myStream.Close(); 
 | 
            } 
 | 
            catch (Exception ex) 
 | 
            { 
 | 
                MessageBox.Show(ex.Message); 
 | 
            } 
 | 
            finally 
 | 
            { 
 | 
                sw.Close(); 
 | 
                myStream.Close(); 
 | 
            } 
 | 
            MessageBox.Show("将此工作表导出为excel共耗时:" + DateTime.Now.Subtract(start).TotalMilliseconds.ToString() + "毫秒"); 
 | 
        } 
 | 
  
 | 
        private void txtHLotNo_KeyDown(object sender, KeyEventArgs e) 
 | 
        { 
 | 
            if (e.KeyCode == Keys.Enter) 
 | 
            { 
 | 
                Sub_FastQuery(); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void txtHOrderProcNO_KeyDown(object sender, KeyEventArgs e) 
 | 
        { 
 | 
            if (e.KeyCode == Keys.Enter) 
 | 
            { 
 | 
                Sub_FastQuery(); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void txtHMaterID_KeyDown(object sender, KeyEventArgs e) 
 | 
        { 
 | 
            if (e.KeyCode == Keys.Enter) 
 | 
            { 
 | 
                Sub_FastQuery(); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void txtHInnerBillNo_KeyDown(object sender, KeyEventArgs e) 
 | 
        { 
 | 
            if (e.KeyCode == Keys.Enter) 
 | 
            { 
 | 
                Sub_FastQuery(); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        private void gb_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            //审核权限 
 | 
            if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true, DBUtility.ClsPub.CurUserName)) 
 | 
            { 
 | 
                return; 
 | 
            } 
 | 
            // 
 | 
            Int64 lngBillKey = 0; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
            { 
 | 
                lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value); 
 | 
                if (lngBillKey == 0) 
 | 
                    continue; 
 | 
                DAL.ClsSc_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); 
 | 
                //查看是否已审核,关闭,作废 
 | 
                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
                { 
 | 
                    //if (oBill.omodel.HChecker.Trim() != "") 
 | 
                    //{ 
 | 
                    //    //MessageBox.Show("单据已审核!不能再次审核", "提示"); 
 | 
                    //    continue; 
 | 
                    //} 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    //MessageBox.Show("单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
                //关闭 
 | 
                if (oBill.CloseBill(lngBillKey) == true) 
 | 
                { 
 | 
                    //MessageBox.Show("审核成功!", "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    //MessageBox.Show("审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
            } 
 | 
            MessageBox.Show("关闭完毕!", "提示"); 
 | 
            Display(); 
 | 
        } 
 | 
  
 | 
        private void hf_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            //审核权限 
 | 
            if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true, DBUtility.ClsPub.CurUserName)) 
 | 
            { 
 | 
                return; 
 | 
            } 
 | 
            // 
 | 
            Int64 lngBillKey = 0; 
 | 
            if (grdMain.CurrentRow == null) 
 | 
                return; 
 | 
            for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
            { 
 | 
                lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value); 
 | 
                if (lngBillKey == 0) 
 | 
                    continue; 
 | 
                DAL.ClsSc_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); 
 | 
                //查看是否已审核,关闭,作废 
 | 
                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) 
 | 
                { 
 | 
                    //if (oBill.omodel.HChecker.Trim() == "") 
 | 
                    //{ 
 | 
                    //    //MessageBox.Show("单据未审核!不需要反审核!", "提示"); 
 | 
                    //    continue; 
 | 
                    //} 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    //MessageBox.Show("单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
                //反审核 
 | 
                if (oBill.CancelClose(lngBillKey) == true) 
 | 
                { 
 | 
                    //MessageBox.Show("反审核成功!", "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
                else 
 | 
                { 
 | 
                    //MessageBox.Show("反审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); 
 | 
                    continue; 
 | 
                } 
 | 
            } 
 | 
            MessageBox.Show("反关闭完毕!", "提示"); ; 
 | 
            Display(); 
 | 
        } 
 | 
  
 | 
        private void yc_Click(object sender, EventArgs e) 
 | 
        {  
 | 
            DataGridViewToExcel2(); 
 | 
        } 
 | 
  
 | 
        private void grdMain_Scroll(object sender, ScrollEventArgs e) 
 | 
        { 
 | 
            if (e.ScrollOrientation == ScrollOrientation.HorizontalScroll) 
 | 
            { 
 | 
                Total(); 
 | 
            } 
 | 
        } 
 | 
  
 | 
        //根据选择的委外发出列表  回填发货单号 
 | 
        private void fahuo_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            //判断是否选择了不同供应商 
 | 
            Int64 sSupID = 0; 
 | 
            string sInterID_Mul = ""; 
 | 
            for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
            { 
 | 
                if (sSupID == 0) 
 | 
                { 
 | 
                    sSupID=DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.SelectedRows[i].Index].Cells[Fun_GetCol("HSUPID")].Value); 
 | 
                } 
 | 
                if(sSupID!=DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.SelectedRows[i].Index].Cells[Fun_GetCol("HSUPID")].Value)) 
 | 
                { 
 | 
                    MessageBox.Show("选择了不同的供应商!", "提示");  
 | 
                    return ; 
 | 
                } 
 | 
                //判断是否选择了已接收的单据  
 | 
                if (DBUtility.ClsPub.isDoule(grdMain.Rows[grdMain.SelectedRows[i].Index].Cells[Fun_GetCol("已接收合格PNL数")].Value) > 0) 
 | 
                { 
 | 
                    MessageBox.Show("选择的发出单已经被接收不能编制!", "提示");  
 | 
                    return ; 
 | 
                } 
 | 
                //叠加单据内码 
 | 
                sInterID_Mul = sInterID_Mul + ",'" + DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.SelectedRows[i].Index].Cells[Fun_GetCol("HMainID")].Value) + "'"; 
 | 
            } 
 | 
            //根据单据规则自动生成发货单号(年月日+‘-’+流水号0001),找到最大的单据号加1 
 | 
            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); 
 | 
            //获取单据号 
 | 
            DataSet ds; 
 | 
            int iSNO = 0; 
 | 
            string sNo = ""; 
 | 
            string sTodayDate = DBUtility.ClsPub.GetServerDate(0).Replace("-", ""); 
 | 
            string sFHBillNo = ""; 
 | 
             
 | 
            ds = oCn.RunProcReturn("select top 1 a.HInnerBillNo,a.HDate from Sc_StationInBillMain a Where a.HInnerBillNo<>''  " + 
 | 
                                 "   and  a.HInnerBillNo like '" + sTodayDate + "-%' " + 
 | 
                                 "   order by a.HInnerBillNo desc ", "Sc_StationInBillMain"); 
 | 
            if (ds == null || ds.Tables[0].Rows.Count == 0 || DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0][0]).Contains("-") == false) 
 | 
            { 
 | 
                iSNO = 1; 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                sFHBillNo = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0][0]); 
 | 
                iSNO = DBUtility.ClsPub.isInt(sFHBillNo.Substring(sFHBillNo.Length - 4, 4)); 
 | 
                iSNO = iSNO + 1; 
 | 
                sFHBillNo = ""; 
 | 
            } 
 | 
            sNo = "0000" + iSNO.ToString(); 
 | 
            sNo = sNo.Substring(sNo.Length - 4, 4); 
 | 
            sFHBillNo = sTodayDate + "-" + sNo; 
 | 
            //循环回填发货单并写入变量  
 | 
            if (sInterID_Mul.Trim() != "") 
 | 
            { 
 | 
                sInterID_Mul = sInterID_Mul.Substring(1, sInterID_Mul.Length - 1); 
 | 
            } 
 | 
            oCn.RunProc("update Sc_StationInBillMain  set HInnerBillNo='" + sFHBillNo + "' Where HinterID in (" + sInterID_Mul + ")"); 
 | 
            //写入日志 
 | 
            DBUtility.ClsPub.Add_Log(DBUtility.ClsPub.CurUserName, "生成发货单" + sFHBillNo + "-" + sInterID_Mul.Replace("'", ""), DBUtility.ClsPub.CurUserName); 
 | 
            //刷新界面 
 | 
            Display(); 
 | 
        } 
 | 
  
 | 
        //根据选择某个发货单打印 
 | 
        private void fhdy_Click(object sender, EventArgs e) 
 | 
        {  
 | 
            //判断是否选择了多个发货单 
 | 
            string sFHBillNo = ""; 
 | 
            for (int i = 0; i < grdMain.SelectedRows.Count; i++) 
 | 
            { 
 | 
                if (sFHBillNo == "") 
 | 
                { 
 | 
                    sFHBillNo = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.SelectedRows[i].Index].Cells[Fun_GetCol("送货单号")].Value); 
 | 
                } 
 | 
                if (sFHBillNo != DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.SelectedRows[i].Index].Cells[Fun_GetCol("送货单号")].Value)) 
 | 
                { 
 | 
                    MessageBox.Show("选择了不同的发货单!", "提示"); 
 | 
                    return; 
 | 
                } 
 | 
           } 
 | 
           //根据发货单号      合并数据 并打印 h_p_MES_StationEntrustInBillPrint 
 | 
           SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); 
 | 
           DataSet ds = oCn.RunProcReturn("exec h_p_MES_StationEntrustInBillPrint '" + sFHBillNo + "'", "h_p_MES_StationEntrustInBillPrint"); 
 | 
           if (ds == null) 
 | 
           { 
 | 
               MessageBox.Show("打印错误1", "提示"); 
 | 
               return; 
 | 
           } 
 | 
           grdSumPrint.DataSource = ds.Tables[0].DefaultView; 
 | 
           sHSUPNAME = DBUtility.ClsPub.isStrNull(ds.Tables[1].Rows[0]["供应商"]); 
 | 
           sHDATE = DBUtility.ClsPub.isStrNull(ds.Tables[1].Rows[0]["日期"]); 
 | 
           sHFHBILLNO = DBUtility.ClsPub.isStrNull(ds.Tables[1].Rows[0]["发货单号"]); 
 | 
           // 
 | 
           Sub_SetReport2("委外发货单合并打印"); 
 | 
           Report.PrintPreview(false); 
 | 
           //写入日志 
 | 
           DBUtility.ClsPub.Add_Log(DBUtility.ClsPub.CurUserName, "打印了发货单" + sFHBillNo , DBUtility.ClsPub.CurUserName); 
 | 
            //刷新界面 
 | 
           Display(); 
 | 
        } 
 | 
  
 | 
        private void btnOK_Click(object sender, EventArgs e) 
 | 
        { 
 | 
            Sub_FastQuery(); 
 | 
        } 
 | 
  
 | 
        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); 
 | 
        } 
 | 
  
 | 
  
 | 
    } 
 | 
} 
 |