14/04/2007, 18:29
|
| | | Fecha de Ingreso: marzo-2007 Ubicación: Chile/Santiago
Mensajes: 150
Antigüedad: 17 años, 8 meses Puntos: 0 | |
Error Try Catch El problema es que cuando apreto el boton que deveria generar el insert me arroja error el cual es capturado por try catch.
El procedimiento lo probe en el analizador de consulta y anda perfecto , me inserta simultaneamente en las dos tablas pero cuando lo ejecuto desde la aplicacion ,da error.
Tambien probe el procedimiento de forma individuales (uno que me ingresa los datos del cliente y otro que me ingresa los del vendedor) en donde a cada uno le asigno un boton para asi serciorarme que pueda ser y me inserta sin problemas.
Pero cuando de los dos procedimientos hago uno no funciona
¿Estara mal realizado?
aqui el code para ver que puede haber mmalo.
Código:
Dim mi_conec As SqlClient.SqlConnection
Dim mi_comando As SqlClient.SqlCommand
Dim resp As DialogResult
If MessageBox.Show("Los Datos se Grabaran estas Seguro ", "Advertencia", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) = DialogResult.Yes Then
Dim mi_consulta As String = "execute cliente_ingresa_cliente '" & TextBox7.Text.Trim & "','" & TextBox1.Text.Trim & "','" & TextBox2.Text.Trim & "','" & TextBox3.Text.Trim & "','" & ComboBox3.Text.Trim & "','" & TextBox5.Text.Trim & "','" & ComboBox2.Text.Trim & "','" & TextBox10.Text.Trim & "','" & TextBox9.Text.Trim & "',"
MessageBox.Show(mi_consulta)'para ver que estoy mandando
Try
mi_conec = New SqlClient.SqlConnection(cadena_conec)
mi_comando = New SqlClient.SqlCommand
mi_conec.Open()
mi_comando.CommandType = CommandType.Text
mi_comando.CommandText = mi_consulta
mi_comando.Connection = mi_conec
If mi_comando.ExecuteNonQuery Then
MessageBox.Show(" Proceso Realizado Exitosamente ", "Ingreso de Datos ", MessageBoxButtons.OK, MessageBoxIcon.Information)
Else
MessageBox.Show("Error En el Ingreso de Datos", "Ingreso De Datos", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
Catch ex As SqlException
MessageBox.Show("Error de Acceso , es Posible que el codigo del de Pedido ya Exista", "Mantención", MessageBoxButtons.OK, MessageBoxIcon.Error) 'AQUI CAPTURA SIEMPRE EL ERROR , Y NINGUN ID ESTA REPETIDO
Finally
If Not mi_comando Is Nothing Then mi_comando.Dispose()
If Not mi_conec Is Nothing Then mi_conec.Dispose()
End Try
Else
MessageBox.Show("No has Grabado Datos", "Mantención", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
End If
y este es el procedimiento ,Los Pk para la tabla cliente es id_cliente y para vendedor id_vendedor
Código:
CREATE procedure cliente_ingresa_cliente
(
@id_cliente char(3),@nombre_cliente char(12),@apellido_cliente char(12),
@direccion_cliente char(12),@comuna_cliente char(20),
@telefono_cliente char(12),@fpago_cliente char(20),
@id_vendedor char (2),@nombre_vendedor char(12)
)
as
begin
insert into CLIENTE
(
ID_CLIENTE,NOM_CLIENTE, APELLIDO_CLIENTE,
DIRECCION_CLIENTE, COMUNA_CLIENTE,
TELEFONO_CLIENTE,PAGO_CLIENTE
)
values
(
@id_cliente,@nombre_cliente,@apellido_cliente,
@direccion_cliente,@comuna_cliente ,
@telefono_cliente,@fpago_cliente
)
insert into VENDEDOR
(
ID_VENDEDOR,NOM_VENDEDOR
)
values
(
@id_vendedor,@nombre_vendedor
)
end
GO
Última edición por Coala; 14/04/2007 a las 18:37
Razón: Es que soy wn
|