zzr99
2022-05-27 9305340d0d22505ead926186eb5bc441c9cbf76b
WarM/ÌõÂë´òÓ¡/Gy_BarCodeBillList.cs
@@ -25,123 +25,33 @@
        public string ModCaption = "条码档案列表";
        public const string ModName = "3302";
        public const string ModRightName = "Gy_BarCodeBillList";
        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 ModRightNameEdit = ModRightName + "_Edit";      //删除
        public const string ModRightNameDelete = ModRightName + "_Delete";  //作废
        public const string ModRightNamePrint = ModRightName + "_Print";    //打印
        //DAL.ClsGy_ICBomBill oBill = new DAL.ClsGy_ICBomBill();
        //public  Gy_ICBomBill oFrm;
        DAL.ClsGy_BarCodeBill_Ctl oBar = new DAL.ClsGy_BarCodeBill_Ctl();
        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
        public int selectRow = 0;
        public int selectRow2 = 0;
        public long PrintQty = 0;               //允许条码打印次数
        public string PrintQtyCtl = "";         //条码打印次数控制
        public string UpdatePrintQtyCtl = "";   //条码打印次数更新
        //
        private void initGrid()
        {
            DBUtility.Xt_BaseBillFun.initGridList(grdMain,this.Name);
        }
        //
        public string SourceQtyCtl = "";        //超源单数量控制
        private void Display()
        {
            ClsCN SubCn = new ClsCN();
            DataSet DSet;
            string sSql = "";
            string sWhere = "";
            //过滤条件
            if (frmCondition.SqlStr.Trim().Length == 0)
                return;
            sSql = frmCondition.SqlStr + sWhere + " order by æ¡ç ç¼–号  ";
            //
            DSet = SubCn.RunProcReturn(sSql, ViewName, ref DBUtility.ClsPub.sExeReturnInfo);
            //生成首行标题
            if (DSet == null)
            {
                MessageBox.Show("没有返回任何结果,请在过滤框中点击【恢复】按钮,尝试再次查询!" + DBUtility.ClsPub.sExeReturnInfo);
                return;
            }
            //
            grdMain.DataSource = DSet.Tables[0].DefaultView;
            //冻结
            int FrCol = DBUtility.ClsPub.isInt(frmCondition.txtFrozenCol.Text);
            string s = frmCondition.cmbHComplete.Text;
            DBUtility.Xt_BaseBillFun.DisplayGrid(grdMain, this.Name, s,FrCol);
            //画线
            GraphLine();
            //
        }
        #region  å›ºå®šä»£ç 
        //
        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.ClsGy_ICBomBill oBill = new DAL.ClsGy_ICBomBill();
            //if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
            //{
            //    oFrm = new Gy_ICBomBill();
            //    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 void Gy_BarCodeBillList_Load(object sender, EventArgs e)
        {
            //
            frmCondition = new frmBillQueryCondition_New();
            this.Text = ModCaption;
            lblCaption.Text = ModCaption;
            initGrid();
            Sub_GetSystemParameter();
        }
        private void initGrid()
        {
            DBUtility.Xt_BaseBillFun.initGridList(grdMain, this.Name);
        }
        //获取系统参数信息
@@ -159,119 +69,14 @@
                PrintQty = oSystemParameter.omodel.BarCode_PrintQty;
                PrintQtyCtl = oSystemParameter.omodel.BarCode_PrintQtyCtl;
                UpdatePrintQtyCtl = oSystemParameter.omodel.BarCode_UpdatePrintQtyCtl;
                SourceQtyCtl = oSystemParameter.omodel.BarCode_SourceQtyCtl;
            }
        }
        private void grdMain_DblClick(object sender, EventArgs e)
        private void timer1_Tick(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 Gy_ICBomBill();
            //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.ClsGy_BarCodeBill_View oBill = new DAL.ClsGy_BarCodeBill_View();
            //DAL.ClsGy_BarCodeBill_Ctl oBillC = new DAL.ClsGy_BarCodeBill_Ctl();
            //if (oBill.GetInfoByID(lngBillKey))
            //{
            //    if (MessageBox.Show("确定要删除当前单据?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK)
            //    {
            //        if (!oBillC.DeleteByID(lngBillKey))
            //        {
            //            MessageBox.Show(DBUtility.ClsPub.sExeReturnInfo, "提示");
            //            return;
            //        }
            //        else
            //        {
            //            Display();
            //        }
            //    }
            //}
            //else
            //{
            //    MessageBox.Show("单据未找到", "提示");
            //}
            Int64 lngBillKey = 0;
            if (grdMain.CurrentRow == null)
                return;
            if (MessageBox.Show("确定要删除所选单据?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
            {
                for (int i = 0; i <= grdMain.SelectedRows.Count - 1; i++)
                {
                    lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value);
                    if (lngBillKey == 0)
                        return;
                    DAL.ClsGy_BarCodeBill_View oBill = new DAL.ClsGy_BarCodeBill_View();
                    DAL.ClsGy_BarCodeBill_Ctl oBillC = new DAL.ClsGy_BarCodeBill_Ctl();
                    if (oBill.GetInfoByID(lngBillKey))
                    {
                        try
                        {
                            oBillC.DeleteByID(lngBillKey);
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("删除失败,条码" + grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value + "已被使用", "提示");
                            Display();
                            return;
                        }
                        if (oBillC.DeleteByID(lngBillKey) != true)
                        {
                            MessageBox.Show("删除失败,原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示");
                            return;
                        }
                    }
                    else
                    {
                        MessageBox.Show("单据未找到!", "提示");
                        return;
                    }
                }
            }
            MessageBox.Show("删除成功!", "提示");
            timer1.Enabled = false;
            initGrid();
            Display();
        }
@@ -287,124 +92,16 @@
            }
        }
        private void bclk_Click(object sender, EventArgs e)
        public void SetCondition(frmBillQueryCondition_New frmCondition, string ViewName, string Name)
        {
            //保存列宽
            DBUtility.Xt_BaseBillFun.SaveGrid(grdMain, this.Name);
            frmCondition.Tag = "";
            frmCondition.ViewName = ViewName;
            frmCondition.ModName = Name;
        }
        private void mrlk_Click(object sender, EventArgs e)
        private void grdMain_Paint(object sender, PaintEventArgs 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.ClsGy_ICBomBill  oBill = new DAL.ClsGy_ICBomBill();
            //查看是否已审核,关闭,作废
            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.ClsGy_ICBomBill  oBill = new DAL.ClsGy_ICBomBill();
            //查看是否已审核,关闭,作废
            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();
            GraphicsGrid();
        }
        private void GraphicsGrid()
@@ -412,7 +109,320 @@
            DBUtility.Xt_BaseBillFun.GraphicsGrid(grdMain);
        }
        #region  //打印设置
        private Int32 Fun_GetCol(string sCol)
        {
            return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain);
        }
        //保存列宽
        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);
        }
        #endregion
        #region  æŸ¥è¯¢åŠŸèƒ½
        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();
            }
        }
        private void Display()
        {
            ClsCN SubCn = new ClsCN();
            DataSet DSet;
            string sSql = "";
            string sWhere = "";
            //过滤条件
            if (frmCondition.SqlStr.Trim().Length == 0)
                return;
            sSql = frmCondition.SqlStr + sWhere + " order by HItemID desc  ";
            //
            DSet = SubCn.RunProcReturn(sSql, ViewName, ref DBUtility.ClsPub.sExeReturnInfo);
            //生成首行标题
            if (DSet == null)
            {
                MessageBox.Show("没有返回任何结果,请在过滤框中点击【恢复】按钮,尝试再次查询!" + DBUtility.ClsPub.sExeReturnInfo);
                return;
            }
            //
            grdMain.DataSource = DSet.Tables[0].DefaultView;
            //冻结
            int FrCol = DBUtility.ClsPub.isInt(frmCondition.txtFrozenCol.Text);
            string s = frmCondition.cmbHComplete.Text;
            DBUtility.Xt_BaseBillFun.DisplayGrid(grdMain, this.Name, s, FrCol);
            //画线
            GraphLine();
        }
        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() + " æ¡è®°å½•";
        }
        #endregion
        #region  åˆ·æ–°åŠŸèƒ½
        private void sx_Click(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }
        #endregion
        #region  åˆ é™¤åŠŸèƒ½
        //单条删除
        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;
            }
            if (grdMain.CurrentRow == null)
            {
                MessageBox.Show("请先选择需要删除的条码!", "提示");
                return;
            }
            if (grdMain.SelectedRows.Count != 1)
            {
                MessageBox.Show("不允许多行删除,请重新选择要删除的条码!");
                return;
            }
            else
            {
                if (MessageBox.Show("确定要删除所选条码?删除后不能恢复,请谨慎操作!", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                {
                    Int64 HItemID = 0;
                    string HBarCode = "";
                    HItemID = DBUtility.ClsPub.isLong(grdMain.SelectedRows[0].Cells[Fun_GetCol("hmainid")].Value);
                    HBarCode = DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[0].Cells[Fun_GetCol("条码编号")].Value);
                    if (!oBar.DeleteBill(HItemID, HBarCode, ref DBUtility.ClsPub.sExeReturnInfo))
                    {
                        MessageBox.Show(DBUtility.ClsPub.sExeReturnInfo, "提示");
                        return;
                    }
                    else
                    {
                        MessageBox.Show("删除成功!", "提示");
                        Display();
                    }
                }
            }
        }
        //批量删除
        private void ps_Click(object sender, EventArgs e)
        {
            Sub_MulDeleteBill();
        }
        private void Sub_MulDeleteBill()
        {
            //判断权限
            if (!DBUtility.ClsPub.Security_Log(ModRightNameEdit, 1, true, DBUtility.ClsPub.CurUserName))
            {
                return;
            }
            if (grdMain.CurrentRow == null)
            {
                MessageBox.Show("请先选择需要删除的条码!", "提示");
                return;
            }
            if (grdMain.SelectedRows.Count > 300)
            {
                MessageBox.Show("批量删除条码选中行数不能超过300行!", "提示");
                return;
            }
            else
            {
                if (MessageBox.Show("确定要批量删除所选条码?删除后不能恢复,请谨慎操作!", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                {
                    string HItemID = "";
                    string HBarCode = "";
                    for (int i = 0; i <= grdMain.SelectedRows.Count - 1; i++)
                    {
                        HItemID = HItemID + "," + DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value.ToString());
                        if (i != 0 && i % 100 == 0)
                        {
                            HBarCode = HBarCode + "#" + DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value);
                        }
                        else
                        {
                            HBarCode = HBarCode + "," + DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value);
                        }
                    }
                    HItemID = HItemID.Remove(0, 1);     //去掉字符串第一个字符
                    HBarCode = HBarCode.Remove(0, 1);
                    if (!oBar.MulDeleteBill(HItemID, HBarCode, ref DBUtility.ClsPub.sExeReturnInfo))
                    {
                        MessageBox.Show(DBUtility.ClsPub.sExeReturnInfo, "提示");
                        return;
                    }
                    else
                    {
                        MessageBox.Show("批量删除成功!", "提示");
                        Display();
                    }
                }
            }
        }
        #endregion
        #region  ä½œåºŸåŠŸèƒ½
        private void zf_Click(object sender, EventArgs e)
        {
            //判断权限
            if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, true, DBUtility.ClsPub.CurUserName))
            {
                return;
            }
            if (grdMain.CurrentRow == null)
            {
                MessageBox.Show("请先选择需要作废的条码!", "提示");
                return;
            }
            else
            {
                if (MessageBox.Show("确定要作废所选条码?", "提示", MessageBoxButtons.OKCancel) == DialogResult.Cancel)
                {
                    return;
                }
                else
                {
                    string HItemID = "";
                    string HBarCode = "";
                    for (int i = 0; i <= grdMain.SelectedRows.Count - 1; i++)
                    {
                        HItemID = HItemID + "," + DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value.ToString());
                        if (i != 0 && i % 100 == 0)
                        {
                            HBarCode = HBarCode + "#" + DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value);
                        }
                        else
                        {
                            HBarCode = HBarCode + "," + DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value);
                        }
                    }
                    HItemID = HItemID.Remove(0, 1);     //去掉字符串第一个字符
                    HBarCode = HBarCode.Remove(0, 1);
                    if (!oBar.Cancelltion(HItemID, HBarCode, DBUtility.ClsPub.CurUserName))
                    {
                        MessageBox.Show("作废失败!", "提示");
                        return;
                    }
                    else
                    {
                        MessageBox.Show("作废成功!", "提示");
                        Display();
                    }
                }
            }
        }
        #endregion
        #region  åä½œåºŸåŠŸèƒ½
        private void fzf_Click(object sender, EventArgs e)
        {
            //判断权限
            if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, true, DBUtility.ClsPub.CurUserName))
            {
                return;
            }
            if (grdMain.CurrentRow == null)
            {
                MessageBox.Show("请先选择需要反作废的条码!", "提示");
                return;
            }
            if (grdMain.SelectedRows.Count>300)
            {
                MessageBox.Show("同时反作废条码选中行数不能超过300行!", "提示");
                return;
            }
            else
            {
                if (MessageBox.Show("确定要反作废所选条码?", "提示", MessageBoxButtons.OKCancel) == DialogResult.Cancel)
                {
                    return;
                }
                else
                {
                    string HItemID = "";
                    string HBarCode = "";
                    for (int i = 0; i <= grdMain.SelectedRows.Count - 1; i++)
                    {
                        HItemID = HItemID + "," + DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value.ToString());
                        if (i != 0 && i % 100 == 0)
                        {
                            HBarCode = HBarCode + "#" + DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value);
                        }
                        else
                        {
                            HBarCode = HBarCode + "," + DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value);
                        }
                    }
                    HItemID = HItemID.Remove(0, 1);     //去掉字符串第一个字符
                    HBarCode = HBarCode.Remove(0, 1);
                    if (!oBar.UnCancelltion(HItemID, HBarCode, SourceQtyCtl, ref DBUtility.ClsPub.sExeReturnInfo))
                    {
                        MessageBox.Show(DBUtility.ClsPub.sExeReturnInfo, "提示");
                        return;
                    }
                    else
                    {
                        MessageBox.Show("反作废成功!", "提示");
                        Display();
                    }
                }
            }
        }
        #endregion
        #region  æ‰“印设置
        GridppReport Report;
        int CurRows = 0;
@@ -484,7 +494,7 @@
            }
            sBarCodeItemID = sBarCodeItemID.Remove(0, 1);
            if (PrintQtyCtl=="Y")
            if (PrintQtyCtl == "Y")
            {
                if (oBar.Set_CheckPrintQty(sBarCodeItemID, PrintQty, ref sHRemark))
                {
@@ -526,24 +536,11 @@
                //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();
                //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();
                //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);
            }
            //CurRows = CurRows + 1;
        }
        //填入单据表体信息
@@ -570,198 +567,39 @@
            }
        }
        #endregion
        //连打
        private void dy2_Click(object sender, EventArgs e)
        #region  å¼•出功能
        private void eXCELToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //选择打印模板
            BLL.Gy_OpenTmp oFrm = new BLL.Gy_OpenTmp();
            DAL.ClsGy_BarCodeBill_Ctl oBar = new DAL.ClsGy_BarCodeBill_Ctl();
            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++)
                {
                    selectRow = i;
                    selectRow2 = i + 1;
                    Sub_SetReport(oFrm.sOpenTmp);
                    Report.Print(false);
                    oBar.Set_PrintQty(DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value));
                    //
                    if (selectRow2 > grdMain.SelectedRows.Count - 1)
                    {
                    }
                    else
                    {
                        oBar.Set_PrintQty(DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i + 1].Cells[Fun_GetCol("条码编号")].Value));
                    }
                    Thread.Sleep(1000);
                    i++;
                }
            }
            DBUtility.Gy_BaseFun.DataToExcel(this.Text, grdMain);
        }
        private void cSVToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DBUtility.Gy_BaseFun.DataGridViewToExcel2(grdMain, this.Text, this.Text);
        }
        #endregion
        //
        private void grdMain_Paint(object sender, PaintEventArgs e)
        #region  é€€å‡ºåŠŸèƒ½
        private void tc_Click(object sender, EventArgs e)
        {
            GraphicsGrid();
            this.Close();
        }
        private void yc_Click(object sender, EventArgs e)
        {
            DataGridViewToExcel2(grdMain, this.Text, this.Text);
        }
        /// <summary>
        /// ç½‘æ ¼ å¯¼å‡ºEXCEL   ç½‘格,文件名,标题名
        /// </summary>
        public static void DataGridViewToExcel2(DataGridView grdMain, string sText, string sBTText)
        {
            SaveFileDialog saveFileDialog = new SaveFileDialog();
            saveFileDialog.Filter = "Execl文件(*.xls)|*.xls";
            saveFileDialog.FilterIndex = 0;
            saveFileDialog.RestoreDirectory = true;
            saveFileDialog.CreatePrompt = true;
            saveFileDialog.Title = "数据视图导出EXCEL文件";
            saveFileDialog.FileName = sText;
            //saveFileDialog.ShowDialog();
            if (saveFileDialog.ShowDialog() == DialogResult.OK)
            {
                Stream myStream;
                myStream = saveFileDialog.OpenFile();
                StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312"));
                string str = "";
                DateTime start = DateTime.Now;
                try
                {
                    if (sBTText != "")
                    {
                        sw.WriteLine(sBTText);
                    }
                    //写标题
                    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;
                        }
                    }
                    str = str.Replace("\n", "");
                    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();
                                }
                            }
                        }
                        tempStr = tempStr.Replace("\n", "");
                        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 zf_Click(object sender, EventArgs e)
        {
            //Sub_AbandonCheck();
            if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, true, DBUtility.ClsPub.CurUserName))
            {
                return;
            }
            if (grdMain.CurrentRow == null)
                return;
            DAL.ClsGy_BarCodeBill_Ctl oBar = new DAL.ClsGy_BarCodeBill_Ctl();
            if (MessageBox.Show("确定要作废所选条码?", "提示", MessageBoxButtons.OKCancel) == DialogResult.Cancel)
            {
                return;
            }
            for (int i = 0; i <= grdMain.SelectedRows.Count - 1; i++)
            {
                if (DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("HMaterID")].Value) != 0)
                {
                    if (!oBar.Cancelltion(DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value)))
                    {
                        MessageBox.Show("作废失败!", "提示");
                        return;
                    }
                }
            }
            MessageBox.Show("作废成功!", "提示");
        }
        private void fzf_Click(object sender, EventArgs e)
        {
            //this.Sub_CheckBill();
            if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, true, DBUtility.ClsPub.CurUserName))
            {
                return;
            }
            if (grdMain.CurrentRow == null)
                return;
            DAL.ClsGy_BarCodeBill_Ctl oBar = new DAL.ClsGy_BarCodeBill_Ctl();
            if (MessageBox.Show("确定要反作废所选条码?", "提示", MessageBoxButtons.OKCancel) == DialogResult.Cancel)
            {
                return;
            }
            for (int i = 0; i <= grdMain.SelectedRows.Count - 1; i++)
            {
                if (DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("HMaterID")].Value) != 0)
                {
                    if (!oBar.UnCancelltion(DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value)))
                    {
                        MessageBox.Show("反作废失败!", "提示");
                        return;
                    }
                }
            }
            MessageBox.Show("反作废成功!", "提示");
        }
        #endregion