Usuario
Guardar Datos de dos o mas tablas con ID autonumerico

Pregunta
-
Hola amigos: estoy intentando guardar datos de tres tablas, pero me aparece error, alguien puede darme una manito porfavor, aqui esta mi codigo:
Try
conectar()
cmd.CommandText = "[sp_InsUpd_tbl_VisitasEspeciales]"
cmd.CommandType = CommandType.StoredProcedure
cmd.Connection = CON
'cmd.Parameters.Add("@ID_VisitaEspecial", SqlDbType.Int).Value = 282
cmd.Parameters.Add("@dtm_FecVisitaEspecial", SqlDbType.Date).Value = Date.Now
cmd.Parameters.Add("@ID_TipoDeVisitaEspecial", SqlDbType.Int).Value = 33
cmd.Parameters.Add("@ID_DestinoDeVisitaEspecial", SqlDbType.Int).Value = 26
cmd.Parameters.Add("@str_ObservacionesDeVisitaEspecial", SqlDbType.VarChar).Value = DBNull.Value
cmd.Parameters.Add("@ID_RegistradoPor", SqlDbType.Int).Value = 14
Dim ParamTotal As New SqlParameter("@lng_CodigoGenerado", SqlDbType.Int)
ParamTotal.Direction = ParameterDirection.Output
cmd.Parameters.Add(ParamTotal)
Dim dr As SqlDataReader = cmd.ExecuteReader
CON.Close()
Mensaje.Label2.Text = cmd.Parameters("@lng_CodigoGenerado").Value.ToString
Mensaje.ShowDialog()
Dim cmd1 As New SqlCommand
cmd1.CommandText = "[sp_Ins_tbl_VisitasEspeciales_Visitantes]"
cmd1.CommandType = CommandType.StoredProcedure
cmd1.Connection = CON
cmd1.Parameters.Add("@ID_VisitaEspecial", SqlDbType.Int).Value = cmd.Parameters("@lng_CodigoGenerado").Value.ToString.Trim
cmd1.Parameters.Add("@ID_KardexDeVisitaEspecial", SqlDbType.Int).Value = Mensaje.Label2.Text
Dim ParamTotal1 As New SqlParameter("@lng_CodigoGenerado", SqlDbType.Int)
ParamTotal1.Direction = ParameterDirection.Output
cmd1.Parameters.Add(ParamTotal1)
Dim dras As SqlDataReader = cmd1.ExecuteReader
Dim cmd2 As New SqlCommand
cmd2.CommandText = "[sp_Ins_tbl_VisitasEspeciales_Internos]"
cmd2.CommandType = CommandType.StoredProcedure
cmd2.Connection = CON
cmd2.Parameters.Add("@ID_VisitaEspecial", SqlDbType.Int).Value = cmd.Parameters("@lng_CodigoGenerado").Value.ToString.Trim
cmd2.Parameters.Add("@ID_KardexDeInterno", SqlDbType.Int).Value = 603
Dim ParamTotal2 As New SqlParameter("@lng_CodigoGenerado", SqlDbType.Int)
ParamTotal2.Direction = ParameterDirection.Output
cmd2.Parameters.Add(ParamTotal2)
Dim dra As SqlDataReader = cmd2.ExecuteReader
Catch ex As Exception
MsgBox(ex.Message)
End Try
- Cambiado Enrique M. Montejo lunes, 17 de noviembre de 2014 7:56 Pregunta relacionada con el acceso a datos con objetos ADO .NET.
Todas las respuestas
-
-
Hola Anabelen:
Podrías regalarnos la descripción completa del mensaje de error que estas recibiendo, al igual en que linea y en que momento de la ejecución del software ocurre, recuerda que entre mas datos nos proporciones mas rápido obtendrás la respuesta que necesitas.
Saludos desde Monterrey, Nuevo León, México!!!
-
Estimados amigos: aparece el error restriccion farengey en la tabla VisitaEspecial_Visitante y en la siguiente igual...
haber si me explico bien: para guardarse la tercera tabla recibe el dato ID autonumerico generado (clave primaria a clave secundaria) de la segunda tabla, igual la segunda tabla recibe el ID autonumerico generado de la primera tabla a la segunda como clave secundaria...
eso es lo que pretendo hacer con ese codigo, no se si lo estoy haciendo bien...