public string Anular(DPerfil Perfil) { string respuesta = ""; SqlConnection SqlConectar = new SqlConnection(); try { //conexion con la Base de Datos SqlConectar.ConnectionString = Conexion.CadenaConexion; SqlConectar.Open(); //comandos SqlCommand SqlComando = new SqlCommand(); SqlComando.Connection = SqlConectar; SqlComando.CommandText = "anular_perfil"; SqlComando.CommandType = CommandType.StoredProcedure; //parametros //parametro id SqlParameter Parametro_Id = new SqlParameter(); Parametro_Id.ParameterName = "@ID"; Parametro_Id.SqlDbType = SqlDbType.Int; Parametro_Id.Value = Perfil.ID; SqlComando.Parameters.Add(Parametro_Id); //ejecuta y lo envia en comentario respuesta = SqlComando.ExecuteNonQuery() == 1 ? "OK" : "No se anulo el Registro del perfil"; } catch (Exception excepcion) { respuesta = excepcion.Message; } //se cierra la conexion de la Base de Datos finally { if (SqlConectar.State == ConnectionState.Open) { SqlConectar.Close(); } } return(respuesta); }
//parametros //insertar public string Insertar(DPerfil Perfil, List <DDetalle_Perfil> Detalle) { string respuesta = ""; SqlConnection SqlConectar = new SqlConnection(); try { //conexion con la Base de Datos SqlConectar.ConnectionString = Conexion.CadenaConexion; SqlConectar.Open(); //transaccion SqlTransaction SqlTransaccion = SqlConectar.BeginTransaction(); //comandos SqlCommand SqlComando = new SqlCommand(); SqlComando.Connection = SqlConectar; SqlComando.Transaction = SqlTransaccion; SqlComando.CommandText = "insertar_perfil"; SqlComando.CommandType = CommandType.StoredProcedure; //parametros //parametro id SqlParameter Parametro_Id_Perfil = new SqlParameter(); Parametro_Id_Perfil.ParameterName = "@ID"; Parametro_Id_Perfil.SqlDbType = SqlDbType.Int; Parametro_Id_Perfil.Direction = ParameterDirection.Output; SqlComando.Parameters.Add(Parametro_Id_Perfil); //parametro nombre SqlParameter Parametro_Nombre = new SqlParameter(); Parametro_Nombre.ParameterName = "@Nombre"; Parametro_Nombre.SqlDbType = SqlDbType.VarChar; Parametro_Nombre.Size = 50; Parametro_Nombre.Value = Perfil.Nombre; SqlComando.Parameters.Add(Parametro_Nombre); //parametro precio 1 SqlParameter Parametro_Precio1 = new SqlParameter(); Parametro_Precio1.ParameterName = "@precio1"; Parametro_Precio1.SqlDbType = SqlDbType.Float; Parametro_Precio1.Value = Perfil.Precio1; SqlComando.Parameters.Add(Parametro_Precio1); //parametro precio 2 SqlParameter Parametro_Precio2 = new SqlParameter(); Parametro_Precio2.ParameterName = "@precio2"; Parametro_Precio2.SqlDbType = SqlDbType.Float; Parametro_Precio2.Value = Perfil.Precio2; SqlComando.Parameters.Add(Parametro_Precio2); //parametro titulo SqlParameter Parametro_Titulo = new SqlParameter(); Parametro_Titulo.ParameterName = "@titulo"; Parametro_Titulo.SqlDbType = SqlDbType.Bit; Parametro_Titulo.Value = Perfil.Titulo; SqlComando.Parameters.Add(Parametro_Titulo); //parametro labref SqlParameter Parametro_LabRef = new SqlParameter(); Parametro_LabRef.ParameterName = "@labref"; Parametro_LabRef.SqlDbType = SqlDbType.Int; Parametro_LabRef.Value = Perfil.LabRef; SqlComando.Parameters.Add(Parametro_LabRef); //parametro precioref SqlParameter Parametro_PrecioRef = new SqlParameter(); Parametro_PrecioRef.ParameterName = "@precioRef"; Parametro_PrecioRef.SqlDbType = SqlDbType.Int; Parametro_PrecioRef.Value = Perfil.PrecioRef; SqlComando.Parameters.Add(Parametro_PrecioRef); //ejecuta y lo envia en comentario respuesta = SqlComando.ExecuteNonQuery() == 1 ? "OK" : "No se ingreso el Registro del Perfil"; if (respuesta.Equals("OK")) { this.ID = Convert.ToInt32(SqlComando.Parameters["@ID"].Value); foreach (DDetalle_Perfil det in Detalle) { det.IDPerfil = this.ID; //llamar al insertar respuesta = det.Insertar(det, ref SqlConectar, ref SqlTransaccion); if (!respuesta.Equals("OK")) { break; } } } if (respuesta.Equals("OK")) { SqlTransaccion.Commit(); } else { //si recibe una respuesta contraria se niega la transaccion SqlTransaccion.Rollback(); } } catch (Exception excepcion) { respuesta = excepcion.Message; } //se cierra la conexion de la Base de Datos finally { if (SqlConectar.State == ConnectionState.Open) { SqlConectar.Close(); } } return(respuesta); }