关于调用存储过程-事务使用
来源:互联网 发布:win8.1装ubuntu双系统 编辑:程序博客网 时间:2024/05/22 05:23
以下代码示例public ReturnResponse InsertOrder_Customer(InvoceOrder model) { ReturnResponse result = new ReturnResponse(); var goods_sn = ""; //记录不存在的商品 string allgoods_sn = ""; //记录分录表所有的商品 //开启事务 System.Data.SqlClient.SqlConnection cnn = new System.Data.SqlClient.SqlConnection(connectionString);//这行是仿照我说的那个链接的 System.Data.SqlClient.SqlCommand cm = new System.Data.SqlClient.SqlCommand();//这行是仿照我说的那个链接的 cm.CommandType = CommandType.StoredProcedure; cm.Connection = cnn;//这行是仿照我说的那个链接的 cnn.Open();//这行是仿照我说的那个链接的 System.Data.SqlClient.SqlTransaction trans = cnn.BeginTransaction(); //这行是仿照我说的那个链接的 cm.Transaction = trans; try { var ordersn = CreateKingdeeSn(model.FTranType, model.FROB); cm.CommandText = "AAProcName"; cm.Parameters.AddWithValue("@FBillNo", model.FBillNo); cm.Parameters.AddWithValue("@Coustemor", model.Customer); cm.ExecuteNonQuery(); var returnval = cm.Parameters["@return"].Value.ToString(); result = getErrorInfo((ErrorCode)Convert.ToInt32(returnval)); //日志 addLog(model.FBillNo + "|" + ordersn, model.FFManager, model.FTranType, result.ErrorCode, result.Msg, result.Success); //从表 foreach (var m in model.orderList) { goods_sn = m.FNumber; cm.CommandText = "AAProcNameEntry"; cm.Parameters.Clear(); cm.Parameters.AddWithValue("@FNumber", m.FNumber); cm.Parameters.AddWithValue("@UnitName", m.UnitName.Trim()); cm.ExecuteNonQuery(); } //日志 addLog(allgoods_sn, "", "销售发票分录", result.ErrorCode, result.Msg, result.Success); trans.Commit(); //提交事务 result.Success = true; result.ErrorCode = (int)ErrorCode.成功; result.Msg = ordersn;// "操作成功!"; return result; } catch (Exception ex) { trans.Rollback();//回滚事务 result.Success = false; result.ErrorCode = (int)ErrorCode.数据操作异常; var Msg = "数据操作异常:" + ex.Message; result.Msg = "系统正忙,请稍后再试"; addLog(model.FBillNo, model.FFManager, model.FTranType, result.ErrorCode, Msg, result.Success); return result; } }
阅读全文
0 0
- 关于调用存储过程-事务使用
- JDBC调用存储过程,以及存储过程 事务的使用.....
- 关于ACCESS2007的事务与存储过程的调用
- 存储过程事务使用
- 关于使用 Hibernate 调用存储过程方法
- 触发器中调用存储过程,事务的使用
- 触发器中调用存储过程,事务的使用
- 数据库存储过程,事务 jfinal中调用存储过程,事务
- 使用存储过程,使用事务
- 存储过程中使用事务
- 存储过程、事务的使用
- 存储过程中使用事务
- 存储过程中使用事务
- 存储过程中使用事务
- 存储过程中使用事务
- 存储过程事务的使用
- 存储过程中使用事务
- 存储过程中使用事务
- codevs 2597 团伙 并查集 解题报告
- 欢迎使用CSDN-markdown编辑器
- struts2注解开发,运行原理
- Log管理
- runProguard false:Could not find method runProguard()
- 关于调用存储过程-事务使用
- 闭包
- The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
- 跳板机
- Python 变量类型
- I wanna go home
- oracle插入值太大,超过限制数的处理ORA-12899,ora-01489
- Jquery上传图片至服务器
- Windows基础排查之一