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 SCM { public partial class Gy_BarCodeBill_CusList : Form { public Gy_BarCodeBill_CusList() { InitializeComponent(); } public frmBillQueryCondition_Base frmCondition; public string ViewName = "h_v_IF_BarCodeBill_CusList"; public string ModCaption = "客户标签档案列表"; public const string ModName = "3302"; public const string ModRightName = "Gy_BarCodeBill_CusList"; 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 ModRightNamePrint = ModRightName + "_Print"; //打印 SCM.WMSWeb.WebService1 oWeb = new SCM.WMSWeb.WebService1(); public string CampanyName; //DAL.ClsGy_ICBomBill oBill = new DAL.ClsGy_ICBomBill(); //public Gy_ICBomBill oFrm; public int selectRow = 0; public int selectRow2 = 0; // private void initGrid() { ClsPub1.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 + " order by 条码编号 "; // DSet = oWeb.getDataSetBySQL(sSql, ViewName, ref DBUtility.ClsPub.sExeReturnInfo); //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; ClsPub1.DisplayGrid(grdMain, this.Name, s, FrCol); //画线 GraphLine(); // } // 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("hitemid")].Value); if (lngBillKey == 0) return; Gy_BarCodeBillEdit oEdit = new Gy_BarCodeBillEdit(); oEdit.sItemID = lngBillKey; oEdit.sBarCode = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("条码编号")].Value); oEdit.ShowDialog(); timer1.Enabled = true; } // private Int32 Fun_GetCol(string sCol) { return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain); } // private void Gy_BarCodeBill_CusList_Load(object sender, EventArgs e) { //设置动态URL oWeb.Url = SCM.ClsPub1.WEBSURL; // frmCondition = new frmBillQueryCondition_Base(); this.Text = ModCaption; lblCaption.Text = ModCaption; initGrid(); } private void grdMain_DblClick(object sender, EventArgs e) { Sub_ShowBill(); } private void cx_Click(object sender, EventArgs e) { frmCondition = new frmBillQueryCondition_Base(); SetCondition(frmCondition, ViewName, this.Name); frmCondition.ShowDialog(); if (frmCondition.Tag.ToString() == "OK") { Display(); } } public void SetCondition(frmBillQueryCondition_Base 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() { //WEBS if (!oWeb.getSecurity_Log(ModRightNameEdit, DBUtility.ClsPub.CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) { MessageBox.Show("您没有删除权限!"); return; } Int64 lngBillKey = 0; string HBarCode = ""; if (grdMain.CurrentRow == null) return; if (grdMain.SelectedRows.Count != 1) { MessageBox.Show("不允许多行删除,请重新选择要删除的条码!"); return; } //--制单人必须相同 if (CampanyName == "森楷") //系统参数 客户定制化名称 { if (DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[0].Cells[Fun_GetCol("制单人")].Value) != DBUtility.ClsPub.CurUserName) { MessageBox.Show("您选的第" + grdMain.SelectedRows[0].Index.ToString() + "行,条码制单人不是您本人,不允许删除!"); return; } } if (MessageBox.Show("确定要删除所选条码?删除后不能恢复,请谨慎操作!", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) { lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[0].Cells[Fun_GetCol("hmainid")].Value); HBarCode = DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[0].Cells[Fun_GetCol("条码编号")].Value); if (lngBillKey == 0) return; try { DataSet DS = oWeb.getDataSetBySQL("exec h_p_Gy_BarCodeBill_Cus_Delete " + lngBillKey + ",'" + HBarCode + "','" + DBUtility.ClsPub.CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','" + DBUtility.ClsPub.IPAddress + "'", "h_p_Gy_BarCodeBill_Delete", ref DBUtility.ClsPub.sExeReturnInfo); if (DS == null || DS.Tables[0].Rows.Count <= 0) { MessageBox.Show("删除失败!"); return; } else { MessageBox.Show(DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"])); Display(); } } catch (Exception e) { throw (e); } } //原先删除条码方法 //DataSet DS; //DataSet DS2; //bool sBool = true; //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; // try // { // DS = oWeb.getDataSetBySQL("Select * from Gy_BarCodeBill Where HItemID=" + lngBillKey, "Gy_BarCodeBill", ref DBUtility.ClsPub.sExeReturnInfo); // DS2 = oWeb.getDataSetBySQL("Select * from Gy_BarCodeBill a inner join Kf_ICStockBillSub_WMS b on a.HBarCode=b.HBarCode where a.HItemID=" + lngBillKey, "Gy_BarCodeBill", ref DBUtility.ClsPub.sExeReturnInfo); // if (DS2.Tables[0].Rows.Count == 0) // { // sBool = false; // } // else // { // sBool = true; // } // if (DS.Tables[0].Rows.Count == 0) // { // MessageBox.Show("单据未找到!", "提示"); // return; // } // else // { // if (sBool) // { // MessageBox.Show("删除失败,条码" + grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value + "已被使用", "提示"); // Display(); // return; // } // else // { // oWeb.getRunProc("Delete from Gy_BarCodeBill where HItemID=" + lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo); // oWeb.getRunProc("insert into System_log values(GETDATE(),'" + DBUtility.ClsPub.CurUserName + "','" + DBUtility.ClsPub.CurUserName + "','删除条码:" + DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value) + "' ,'WMS系统','','删除')", ref DBUtility.ClsPub.sExeReturnInfo); // } // } // } // catch (Exception e) // { // throw (e); // } // } //} //MessageBox.Show("删除成功!", "提示"); //Display(); } //删除 private void Sub_MulDeleteBill() { //WEBS if (!oWeb.getSecurity_Log(ModRightNameEdit, DBUtility.ClsPub.CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) { MessageBox.Show("您没有删除权限!"); return; } string HItemID = ""; string HBarCode = ""; if (grdMain.CurrentRow == null) return; if (MessageBox.Show("确定要批量删除所选条码?删除后不能恢复,请谨慎操作!", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) { for (int i = 0; i < grdMain.SelectedRows.Count; i++) { HItemID = HItemID + "," + DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value.ToString()); HBarCode = HBarCode + "," + DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value); //--制单人必须相同 if (CampanyName == "森楷") //系统参数 客户定制化名称 { if (DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("制单人")].Value) != DBUtility.ClsPub.CurUserName) { MessageBox.Show("您选的第"+ grdMain.SelectedRows[i].Index.ToString() + "行,条码制单人不是您本人,不允许删除!"); return; } } } try { DataSet DS = oWeb.getDataSetBySQL("exec h_p_Gy_BarCodeBill_Cus_MulDelete '" + HItemID + "','" + HBarCode + "','" + DBUtility.ClsPub.CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','" + DBUtility.ClsPub.IPAddress + "'", "h_p_Gy_BarCodeBill_MulDelete", ref DBUtility.ClsPub.sExeReturnInfo); if (DS == null || DS.Tables[0].Rows.Count <= 0) { MessageBox.Show("批量删除失败!"); return; } else { MessageBox.Show(DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"])); Display(); } } catch (Exception e) { throw (e); } } ////原先批量删除条码方法 //DataSet DS; //DataSet DS2; //bool sBool = true; //Int64 lngBillKey = 0; //if (grdMain.SelectedRows == null) // return; //if (MessageBox.Show("确定要批量删除所选条码?删除后不能恢复,请谨慎操作", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) //{ // string[] sSQLMul = new string[grdMain.SelectedRows.Count]; // for (int i = 0; i <= grdMain.SelectedRows.Count - 1; i++) // { // lngBillKey = DBUtility.ClsPub.isLong(grdMain.SelectedRows[i].Cells[Fun_GetCol("hmainid")].Value); // sSQLMul[i] = " Delete from Gy_BarCodeBill where HItemID= " + lngBillKey ; // sSQLMul[i] = sSQLMul[i] + " " + "insert into System_log values(GETDATE(),'" + DBUtility.ClsPub.CurUserName + "','" + DBUtility.ClsPub.CurUserName + "','删除条码:" + DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value) + "' ,'WMS系统','','删除')"; // } // oWeb.getRunProcByMul(sSQLMul, ref DBUtility.ClsPub.sExeReturnInfo); //} //MessageBox.Show("批量删除成功!", "提示"); //Display(); } private void timer2_Tick(object sender, EventArgs e) { timer2.Enabled = false; frmCondition = new frmBillQueryCondition_Base(); SetCondition(frmCondition, ViewName, this.Name); frmCondition.ShowDialog(); //获取系统参数 客户定制化名称 DataSet Ds = oWeb.getDataSetBySQL("select HValue from Xt_SystemParameter with(nolock) where HKey='WMS_CampanyName'", "Xt_SystemParameter", ref DBUtility.ClsPub.sExeReturnInfo); if (Ds == null || Ds.Tables[0].Rows.Count == 0) { MessageBox.Show("获取系统参数失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); return; } else { CampanyName = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HValue"]); } 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.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(); } private void GraphicsGrid() { DBUtility.Xt_BaseBillFun.GraphicsGrid(grdMain); } #region //打印设置 GridppReport Report; string sBarCode = ""; //预览 int CurRows = 0; private void yl_Click(object sender, EventArgs e) { //WEBS if (!oWeb.getSecurity_Log(ModRightNamePrint, DBUtility.ClsPub.CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) { MessageBox.Show("您没有打印预览权限!"); return; } //打印前判断条码是否已打印过 if (ReportPrintBegin()) { return; } //选择打印模板 SCM.Gy_OpenTmp oFrm = new SCM.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); Thread.Sleep(1000); } } //打印前判断条码是否已打印过 private bool ReportPrintBegin() { sBarCode = ""; string sRelQty = ""; for (int i = 0; i < grdMain.SelectedRows.Count; i++) { sBarCode = sBarCode + "," + DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.SelectedRows[i].Index].Cells[Fun_GetCol("条码编号")].Value); } if (oWeb.Set_BPrintQtyBarCode(sBarCode.Substring(1), ref sRelQty)) { MessageBox.Show(sRelQty); return true; } else { return false; } } //打印结束后回填条码打印次数 private void ReportPrintEnd() { try { oWeb.getRunProc("exec h_p_Gy_BarCodePrintQty_Update '" + sBarCode + "'", ref DBUtility.ClsPub.sExeReturnInfo); } catch (Exception e) { MessageBox.Show("打印失败!打印结束 :" + e.Message); } } private void Sub_SetReport(string sOpenTmp) { //判断行数 for (int i = 0; i < grdMain.Rows.Count; i++) { grdMain.Rows[i].Cells[0].Value = ""; } for (int i = 0; i < grdMain.SelectedRows.Count; i++) { grdMain.Rows[grdMain.SelectedRows[i].Index].Cells[0].Value = "*"; } // Report = new GridppReport(); Report.LoadFromFile(DBUtility.ClsPub.AppPath + @"\" + sOpenTmp + ".grf"); //here . Report.BeforePostRecord += new _IGridppReportEvents_BeforePostRecordEventHandler(ReportBeforePostRecord); Report.FetchRecord += new _IGridppReportEvents_FetchRecordEventHandler(ReportFetchRecordByDataTable); Report.PrintEnd += new _IGridppReportEvents_PrintEndEventHandler(ReportPrintEnd); } //填入单据表头信息 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(); //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; } private void ReportFetchRecordByDataTable() { try { DataTable ds = new DataTable(); SCM.Utility.FillRecordToReport(Report, grdMain, ds, Fun_GetCol("选择")); //BLL.Utility.FillRecordToReport_Sel(Report, grdMain, ds, Fun_GetCol("选择")); } catch (Exception e) { MessageBox.Show("打印失败!表体:" + e.Message); } } #endregion // private void grdMain_Paint(object sender, PaintEventArgs e) { GraphicsGrid(); } private void dy_Click(object sender, EventArgs e) { //WEBS if (!oWeb.getSecurity_Log(ModRightNamePrint, DBUtility.ClsPub.CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) { MessageBox.Show("您没有打印预览权限!"); return; } //打印前判断条码是否已打印过 if (ReportPrintBegin()) { return; } //选择打印模板 SCM.Gy_OpenTmp oFrm = new SCM.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(true); //oBar.Set_PrintQty(DBUtility.ClsPub.isStrNull(grdMain.Rows[CurRows].Cells[Fun_GetCol("条码编号")].Value)); Thread.Sleep(1000); } } private void dy2_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++; // } //} } private void yc_Click(object sender, EventArgs e) { DataGridViewToExcel2(grdMain, this.Text, this.Text); } /// /// 网格 导出EXCEL 网格,文件名,标题名 /// 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 dc_Click(object sender, EventArgs e) { SCM.公用类.Xt_BaseBillFun.DataToExcel(this.Text, grdMain); } private void zf_Click(object sender, EventArgs e) { // ; //WEBS if (!oWeb.getSecurity_Log(ModRightNameDelete, DBUtility.ClsPub.CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) { MessageBox.Show("您没有权限!"); return; } if (grdMain.CurrentRow == null) return; 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 (!oWeb.set_CancelltionBarCodeBill(DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value))) { MessageBox.Show("作废失败!", "提示"); return; } } } MessageBox.Show("作废成功!", "提示"); Display(); } private void fzf_Click(object sender, EventArgs e) { // //WEBS if (!oWeb.getSecurity_Log(ModRightNameDelete, DBUtility.ClsPub.CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) { MessageBox.Show("您没有权限!"); return; } if (grdMain.CurrentRow == null) return; 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 (!oWeb.set_UnCancelltionBarCodeBill(DBUtility.ClsPub.isStrNull(grdMain.SelectedRows[i].Cells[Fun_GetCol("条码编号")].Value))) { MessageBox.Show("反作废失败!", "提示"); return; } } } MessageBox.Show("反作废成功!", "提示"); Display(); } private void ps_Click(object sender, EventArgs e) { Sub_MulDeleteBill(); } } }