//ASHKTORAB public bool insertX(SqlTransaction _transaction, SqlConnection _connection) { Editor ed = Application.DocumentManager.MdiActiveDocument.Editor; SqlTransaction transaction = _transaction; SqlConnection connection = _connection;// SqlConnection(Atend.Control.ConnectionString.ServercnString); SqlCommand command = new SqlCommand("D_User_Insert", connection); command.CommandType = CommandType.StoredProcedure; command.Parameters.Add(new SqlParameter("iUserName", UserName)); command.Parameters.Add(new SqlParameter("iPassword", Password)); command.Parameters.Add(new SqlParameter("iName", Name)); command.Parameters.Add(new SqlParameter("iFamily", Family)); try { //connection.Open(); //transaction = connection.BeginTransaction(); command.Transaction = transaction; try { Code = Convert.ToInt32(command.ExecuteScalar()); foreach (int AccessId in AccessList) { Atend.Base.Design.DUserAccess userAccess = new DUserAccess(); userAccess.IDUser = Code; userAccess.IdAccess = AccessId; if (userAccess.InsertX(transaction, connection)) { //nothing } else { throw new System.Exception("userAccess.Insert failed"); } } } catch (System.Exception ex1) { //Editor ed = Application.DocumentManager.MdiActiveDocument.Editor; ed.WriteMessage(string.Format(" ERROR DUser.Insert : {0}\n", ex1.Message)); //transaction.Rollback(); //connection.Close(); return(false); } } catch (System.Exception ex1) { //Editor ed = Application.DocumentManager.MdiActiveDocument.Editor; ed.WriteMessage(string.Format(" ERROR Transaction DUser.Insert: {0} \n", ex1.Message)); //connection.Close(); return(false); } //transaction.Commit(); //connection.Close(); return(true); }
//MOUSAVI public bool updateX() { Editor ed = Application.DocumentManager.MdiActiveDocument.Editor; SqlTransaction transAction; SqlConnection connection = new SqlConnection(Atend.Control.ConnectionString.LocalcnString); SqlCommand command = new SqlCommand("D_User_Update", connection); command.CommandType = CommandType.StoredProcedure; command.Parameters.Add(new SqlParameter("iUserName", UserName)); command.Parameters.Add(new SqlParameter("iPassword", Password)); command.Parameters.Add(new SqlParameter("iName", Name)); command.Parameters.Add(new SqlParameter("iFamily", Family)); command.Parameters.Add(new SqlParameter("iCode", Code)); try { connection.Open(); transAction = connection.BeginTransaction(); command.Transaction = transAction; try { command.ExecuteNonQuery(); if (Atend.Base.Design.DUserAccess.DeleteX(transAction, connection, Code)) { foreach (int AccessId in AccessList) { Atend.Base.Design.DUserAccess userAccess = new DUserAccess(); userAccess.IDUser = Code; userAccess.IdAccess = AccessId; if (userAccess.InsertX(transAction, connection)) { //nothing } else { throw new System.Exception("userAccess.InsertX failed"); } } } else { throw new System.Exception("DUserAccess.DeleteX failed"); } transAction.Commit(); connection.Close(); return(true); } catch (System.Exception ex1) { ed.WriteMessage(string.Format(" ERROR DUser.UpdateX {0}\n", ex1.Message)); transAction.Rollback(); connection.Close(); return(false); } } catch (System.Exception ex1) { ed.WriteMessage(string.Format(" ERROR Transaction EDUser.UpdateX: {0} \n", ex1.Message)); connection.Close(); return(false); } }