Beispiel #1
0
 /// <summary>
 /// 根据输入的参数值来执行更新数据
 /// </summary>
 /// <param name="e">传入的带有数据的事件参数</param>
 /// <returns></returns>
 private bool UpdateData(FormViewUpdateEventArgs e)
 {
     //数据适配器
     //当前添加语句对象
     //当前数据库连接
     using (var da = new t_use_waterTableAdapter())
     using (var cmd = da.Adapter.UpdateCommand)
     using (var conn = cmd.Connection)
     {
         //打开数据库连接
         conn.Open();
         //开启事务
         using (var tran = conn.BeginTransaction())
         {
             //设置事务
             da.Transaction = tran;
             //试运行
             try
             {
                 //当前行id号
                 Int64 id = Convert.ToInt64(e.Keys["id"]);
                 //获取数据
                 using (var tab = da.GetDataById(id))
                 {
                     //检查是否获取到行
                     if (tab.Rows.Count == 0)
                     {
                         //显示失败
                         throw new Exception("当前生产记录已经被其他用户删除!");
                     }
                     else
                     {
                         //直接保存
                         e.Cancel = false;
                     }
                 }
                 //提交事务
                 tran.Commit();
                 //返回成功
                 return true;
             }
             catch (Exception ex)
             {
                 //回滚事务
                 tran.Rollback();
                 //非数字返回失败
                 throw new Exception(ex.Message);
             }
         }
     }
 }
Beispiel #2
0
 //导出数据到Excel
 protected void lBtnToExcel_Click(object sender, EventArgs e)
 {
     //获取数据并填充到数据表
     using (var da = new t_use_waterTableAdapter())
     {
         //查询条件
         string whereContent = GetWhereContent();
         //排序条件
         string orderByContent = GetOrderByContent();
         if (orderByContent.Length == 0)
         {
             orderByContent = "order by [id] desc";
         }
         //获取前1万行数据
         var tab = da.GetPagedData(0, 10000, whereContent, orderByContent);
         //设置列标题
         string[] titleCol =
             (@"序号,日期,冲压用水,冲压出数,冲压用水/出数,
                 数控用水,数控出数,数控用水/出数,
                 手动线用水,手动线出数,手动线用水/出数,
                 自动线用水,自动线出数,自动线用水/出数,
                 双面用水,双面出数,双面用水/出数,
                 全厂用水,全厂出数,全厂用水/出数,
                 备注,录入员,录入时间,修改时间").Split(',');
         //设置表名称
         string titleTab = "用水记录";
         //临时文件名称
         string fileName = titleTab + DateTime.Now.ToString("yyMMddHHmmss") + ".xls";
         //执行导出数据到excel
         bool isSuccess = ydPublicMethod.DataTable2Excel(tab, titleCol, ref fileName, titleTab);
         //如果成功则跳转到指定页面
         if (isSuccess)
         {
             Response.Redirect(fileName);
             //停止加载后续内容
             Response.End();
         }
     }
 }