Título: Insertar en BD Publicado por: zapala76 en 25 Octubre 2011, 21:05 pm Hola, quería consultar como se podría hacer para que me salga un mensaje en c# si se inserto el registro, ya que al presionar el boton no me sale ningun mensaje de error y el registro no se inserta en la base de datos. Gracias y saludos.-
Título: Re: Insertar en BD Publicado por: s00rk en 26 Octubre 2011, 00:52 am Si deceas un poco de ayuda porfavor muestra lo que llevas, para asi poder ayudarte en tus problemas.
Sobre lo que sucede intenta checar en modo debug y deterner ahi en donde haces la inserccion para checar los datos. Título: Re: Insertar en BD Publicado por: seba123neo en 26 Octubre 2011, 03:21 am con MessageBox, pero pone el codigo que usas...
Título: Re: Insertar en BD Publicado por: zapala76 en 26 Octubre 2011, 03:38 am Está bien, tienen razón es mejor con código, para que se entienda mejor el tema es que al apretar el btn aceptar no hace nada, y que si no inserta, debido a que esta bien que no inserte, me largue un mensaje informando que no pudo insertar, acá va el código:
Código
Y el store procedure: Código
Muchas Gracias.- Título: Re: Insertar en BD (Solucionado) Publicado por: zapala76 en 26 Octubre 2011, 17:33 pm Al encontré la solucion modificando el stored procedure de esta forma:
set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO ALTER procedure [dbo].[modifUsuario] ( @idUsuario int, @nombre char(30), @apellido char(30), @fecha_alta datetime, @rol char(20), @legajo char(20), @estado char(20), @respuesta int output ) as set nocount on begin update usuarios set nombre = @nombre, apellido = @apellido, fecha_alta = @fecha_alta, rol = @rol, legajo = @legajo, estado = @estado where idUsuario = @idUsuario if @@rowcount > 0 set @respuesta=1 else set @respuesta=0 return @respuesta PRINT 'Valor de la respuesta: ' + CONVERT(CHAR(6),@respuesta) end y en el codigo le puse asi y funciona: public void ModificarUsuario(int id, string nombre, string apellido, string estado, DateTime fecha_alta, string rol, string legajo) { if (Conexion.conectar()) { try { SqlCommand modifcom = new SqlCommand("modifUsuario", Conexion.conexion); modifcom.CommandType = CommandType.StoredProcedure; modifcom.Parameters.Add("@idUsuario", SqlDbType.Int); modifcom.Parameters.Add("@nombre", SqlDbType.NVarChar); modifcom.Parameters.Add("@apellido", SqlDbType.NVarChar); modifcom.Parameters.Add("@estado", SqlDbType.NVarChar); modifcom.Parameters.Add("@fecha_alta", SqlDbType.DateTime); modifcom.Parameters.Add("@rol", SqlDbType.NVarChar); modifcom.Parameters.Add("@legajo", SqlDbType.NVarChar); modifcom.Parameters.Add("@respuesta", SqlDbType.NVarChar); modifcom.Parameters["@respuesta"].Direction = ParameterDirection.Output; modifcom.UpdatedRowSource = UpdateRowSource.None; modifcom.Parameters[0].Value = id; modifcom.Parameters[1].Value = nombre; modifcom.Parameters[2].Value = apellido; modifcom.Parameters[3].Value = estado; modifcom.Parameters[4].Value = fecha_alta; modifcom.Parameters[5].Value = rol; modifcom.Parameters[6].Value = legajo; modifcom.Parameters[7].Value = ""; modifcom.ExecuteNonQuery(); string valor = modifcom.Parameters["@respuesta"].Value.ToString(); if (valor == "1") { MessageBox.Show("El usuario se actualizó correctamente!"); } else { MessageBox.Show("No se pudo actualizar el usuario"); } } catch (Exception ex) { MessageBox.Show("El legajo le pertenece a otro usuario"); } finally { Conexion.conexion.Close(); } } } Muchas gracias y saludos |