Problemas con mis TextBox

10/12/2005 - 06:43 por Daniel H. Villa | Informe spam
Hola:

Tengo un problema serio al momento de insertar registros en una tabla de SQL
Server.

El modo de inserción esta bien, lo estoy haciendo con un stored procedure,
pero el problema, es que no me inserta los valores que tengo en mis textbox.

Al dar en el boton nuevo, me limpia mis textbox, les tecleo los nuevos
valores y al momento de dar boton Aceptar, lo guarda todo OK, pues no ya que
me guarda los valores del primer registro. No me toma los valores que yo
introduzco. Estuve debugeando y hay un momento que antes de ejecutar mi
inserción me toma los valores del primer registro. No se que esta pasando.

Paso parte de mi codigo, estoy trabajando con ASP.Net utilizando VB.Net

Public Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnNuevo.Click

Me.txtAp_Mat.Text = ""

Me.txtAp_Pat.Text = ""

Me.txtLogin.Text = ""

Me.txtNombre.Text = ""

Me.txtPassword.Text = ""

End Sub


Public Sub btnAceptar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAceptar.Click

Insert_Usuario()

End Sub



Public Sub Insert_Usuario()

Cmd = New SqlCommand("sp_UsuarioInsert", SqlConnection)

Cmd.CommandType = CommandType.StoredProcedure

' Ap_Pat

Dim pAp_Pat = New SqlParameter("@Ap_Pat", SqlDbType.VarChar)

pAp_Pat.Value = Me.txtAp_Pat.Text

Cmd.Parameters.Add(pAp_Pat)

' Ap_Mat

Dim pAp_Mat = New SqlParameter("@Ap_Mat", SqlDbType.VarChar)

pAp_Mat.Value = Me.txtAp_Mat.Text

Cmd.Parameters.Add(pAp_Mat)

' Nombre

Dim pNombre = New SqlParameter("@Nombre", SqlDbType.VarChar)

pNombre.Value = Me.txtNombre.Text

Cmd.Parameters.Add(pNombre)

' Login

Dim pLogin = New SqlParameter("@Login", SqlDbType.VarChar)

pLogin.Value = Me.txtLogin.Text

Cmd.Parameters.Add(pLogin)

' Password

Dim pPassword = New SqlParameter("@Password", SqlDbType.VarChar)

pPassword.Value = Me.txtPassword.Text

Cmd.Parameters.Add(pPassword)

' ejecuta

Cmd.ExecuteNonQuery()

End Sub



Ojala y alguien encuentre la forma de que me respete la inserción sobre los
textbox que estoy cambiando


Salu2 :-)))

(""'·._.·L.I. Daniel Villa·._.·'"")

Preguntas similare

Leer las respuestas

#6 Daniel H. Villa
12/12/2005 - 22:09 | Informe spam
Hola Marckys

este es el codigo del SP lo hago en el SQL Server

CREATE PROCEDURE sp_UsuarioInsert
(
@Ap_Pat varchar(15),
@Ap_Mat varchar(15),
@Nombre varchar(15),
@Login varchar(10),
@Password varchar(10)
)
AS
Insert into Tbl_Usuario (Ap_Pat, Ap_Mat, Nombre, Login, Password)
VALUES (@Ap_Pat, @Ap_Mat, @Nombre, @Login, @Password)
GO

Pero como lo dije anteriormente siempre me guarda los valores del primer
registro, nunca me toma los valores que yo teclee en mis textbox

Salu2 :-)))

(""'·._.·L.I. Daniel Villa·._.·'"")


"Marckys" escribió en el mensaje
news:
Según comentas si ejecutas el insert N veces siempre te inserta el mismo
valor ??
Tu código parece correcto cuando, debugas y le pasas los valores a los
parámetros del stored en ese momento son correctos ??

Puedes mostrar el código del stored ???

Saludos
Marckys --> Power by C#
MCP - MCAD.NET

Coopera con el foro. Dinos si te sirvió la respuesta aquí planteada.




"Daniel H. Villa" escribió:

no Leonardo.

Mis valores los esta guardando bien, veo que no me entiendes. Pasa que al
debugear me esta tomando los valores del primer registro. No me esta
tomando
los valores que yo introduzco en mis textbox, no tiene nada que ver con
mi
SP.

Ya ejecute varios insert y todos me esta guardando los valor del primer
registro.

Salu2 :-)))

(""'·._.·L.I. Daniel Villa·._.·'"")


"Leonardo Azpurua [mvp vb]" <l e o n a r d o (arroba) m v p s (punto) o r
g>
escribió en el mensaje news:e1ZD0nb$
>
> "Daniel H. Villa" escribió en el
> mensaje
> news:%23degE%23a$
>> hola Leonardo:
>>
>> Gracias por tu observación pero en cuanto al problema de que no me
>> guarda
>> los valores de mi textbox?? Ojala y alguien me ayude
>
> No te guarda los valores porque los parametros alfanumericos que estas
> pasando tienen todos una longitud de un caracter.
>
> Si no tienes en la tabla al menos un registro que contenga solo campos
> de
> longitud 1, entonces deberías revisar el texto del SP.
>
> Para poder pasar los valores al SP, debes especificar la dimension de
> las
> variables alfa en los parametros.
>
> No recuerdo si es necesario que los tipos y dimensiones de los
> argumentos
> en la llamada coincidan con los tipos y dimensiones de los argumentos
> declarados.
>
> ¿No se produce ninguna excepción al llamar al SP?
>
> Salud!
>
>



Respuesta Responder a este mensaje
#7 Lord Voldemort
12/12/2005 - 23:52 | Informe spam
prueba esta ...usar esta funcion para insertar..

Public Sub Insert_Usuario()
Dim sqlConsulta as String
sqlConsulta = "sp_UsuarioInsert '" & Me.txtAp_Mat.Text & "', '" &
Me.txtAp_Pat.Text & "', '" & Me.txtLogin.Text & "', '" & Me.txtNombre.Text
& "', '" & Me.txtPassword.Text & "'"

debug.writeline(sqlconsulta) ' solo para ver como quedo armado tu SP con
sus valores.. tienen quedar separados por coma y entre comillas simples los
textos..

Cmd = New SqlCommand(sqlConsulta, SqlConnection)
Cmd.CommandType = CommandType.StoredProcedure
Cmd.ExecuteNonQuery()

End

no se donde lo pegas a tu conexion.. tu sabras...
saludos..


"Daniel H. Villa" wrote in message
news:e%2348jyU$
Hola:

Tengo un problema serio al momento de insertar registros en una tabla de
SQL Server.

El modo de inserción esta bien, lo estoy haciendo con un stored procedure,
pero el problema, es que no me inserta los valores que tengo en mis
textbox.

Al dar en el boton nuevo, me limpia mis textbox, les tecleo los nuevos
valores y al momento de dar boton Aceptar, lo guarda todo OK, pues no ya
que me guarda los valores del primer registro. No me toma los valores que
yo introduzco. Estuve debugeando y hay un momento que antes de ejecutar mi
inserción me toma los valores del primer registro. No se que esta pasando.

Paso parte de mi codigo, estoy trabajando con ASP.Net utilizando VB.Net

Public Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnNuevo.Click

Me.txtAp_Mat.Text = ""

Me.txtAp_Pat.Text = ""

Me.txtLogin.Text = ""

Me.txtNombre.Text = ""

Me.txtPassword.Text = ""

End Sub


Public Sub btnAceptar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAceptar.Click

Insert_Usuario()

End Sub



Public Sub Insert_Usuario()

Cmd = New SqlCommand("sp_UsuarioInsert", SqlConnection)

Cmd.CommandType = CommandType.StoredProcedure

' Ap_Pat

Dim pAp_Pat = New SqlParameter("@Ap_Pat", SqlDbType.VarChar)

pAp_Pat.Value = Me.txtAp_Pat.Text

Cmd.Parameters.Add(pAp_Pat)

' Ap_Mat

Dim pAp_Mat = New SqlParameter("@Ap_Mat", SqlDbType.VarChar)

pAp_Mat.Value = Me.txtAp_Mat.Text

Cmd.Parameters.Add(pAp_Mat)

' Nombre

Dim pNombre = New SqlParameter("@Nombre", SqlDbType.VarChar)

pNombre.Value = Me.txtNombre.Text

Cmd.Parameters.Add(pNombre)

' Login

Dim pLogin = New SqlParameter("@Login", SqlDbType.VarChar)

pLogin.Value = Me.txtLogin.Text

Cmd.Parameters.Add(pLogin)

' Password

Dim pPassword = New SqlParameter("@Password", SqlDbType.VarChar)

pPassword.Value = Me.txtPassword.Text

Cmd.Parameters.Add(pPassword)

' ejecuta

Cmd.ExecuteNonQuery()

End Sub



Ojala y alguien encuentre la forma de que me respete la inserción sobre
los textbox que estoy cambiando


Salu2 :-)))

(""'·._.·L.I. Daniel Villa·._.·'"")



Respuesta Responder a este mensaje
#8 Marckys
13/12/2005 - 08:33 | Informe spam
Uff, esto es un poco raro.

El código no parece que tenga nada fuera de lo común, lo que tendrías que
hacer es depurar paso a paso y controlar si los valores que le asignas a los
parámetros son los correctos o en algún momento en tu código los textBox
cogen el valor de algún otro lado.

Saludos.

Marckys --> Power by C#
MCP - MCAD.NET


"Daniel H. Villa" escribió:

Hola Marckys

este es el codigo del SP lo hago en el SQL Server

CREATE PROCEDURE sp_UsuarioInsert
(
@Ap_Pat varchar(15),
@Ap_Mat varchar(15),
@Nombre varchar(15),
@Login varchar(10),
@Password varchar(10)
)
AS
Insert into Tbl_Usuario (Ap_Pat, Ap_Mat, Nombre, Login, Password)
VALUES (@Ap_Pat, @Ap_Mat, @Nombre, @Login, @Password)
GO

Pero como lo dije anteriormente siempre me guarda los valores del primer
registro, nunca me toma los valores que yo teclee en mis textbox

Salu2 :-)))

(""'·._.·L.I. Daniel Villa·._.·'"")


"Marckys" escribió en el mensaje
news:
> Según comentas si ejecutas el insert N veces siempre te inserta el mismo
> valor ??
> Tu código parece correcto cuando, debugas y le pasas los valores a los
> parámetros del stored en ese momento son correctos ??
>
> Puedes mostrar el código del stored ???
>
> Saludos
> Marckys --> Power by C#
> MCP - MCAD.NET
>
> Coopera con el foro. Dinos si te sirvió la respuesta aquí planteada.
>
>
>
>
> "Daniel H. Villa" escribió:
>
>> no Leonardo.
>>
>> Mis valores los esta guardando bien, veo que no me entiendes. Pasa que al
>> debugear me esta tomando los valores del primer registro. No me esta
>> tomando
>> los valores que yo introduzco en mis textbox, no tiene nada que ver con
>> mi
>> SP.
>>
>> Ya ejecute varios insert y todos me esta guardando los valor del primer
>> registro.
>>
>> Salu2 :-)))
>>
>> (""'·._.·L.I. Daniel Villa·._.·'"")
>>
>>
>> "Leonardo Azpurua [mvp vb]" <l e o n a r d o (arroba) m v p s (punto) o r
>> g>
>> escribió en el mensaje news:e1ZD0nb$
>> >
>> > "Daniel H. Villa" escribió en el
>> > mensaje
>> > news:%23degE%23a$
>> >> hola Leonardo:
>> >>
>> >> Gracias por tu observación pero en cuanto al problema de que no me
>> >> guarda
>> >> los valores de mi textbox?? Ojala y alguien me ayude
>> >
>> > No te guarda los valores porque los parametros alfanumericos que estas
>> > pasando tienen todos una longitud de un caracter.
>> >
>> > Si no tienes en la tabla al menos un registro que contenga solo campos
>> > de
>> > longitud 1, entonces deberías revisar el texto del SP.
>> >
>> > Para poder pasar los valores al SP, debes especificar la dimension de
>> > las
>> > variables alfa en los parametros.
>> >
>> > No recuerdo si es necesario que los tipos y dimensiones de los
>> > argumentos
>> > en la llamada coincidan con los tipos y dimensiones de los argumentos
>> > declarados.
>> >
>> > ¿No se produce ninguna excepción al llamar al SP?
>> >
>> > Salud!
>> >
>> >
>>
>>
>>



Respuesta Responder a este mensaje
#9 Daniel H. Villa
13/12/2005 - 21:56 | Informe spam
Hola Lord, Marcks y Leonardo:

Tuve que hacer lo siguiente para que tomara los valores de mi textbox:

Agregue otros textbox que solo van a servir para Introducir los datos a
insertar. Se que esta mal la forma pero, solo lo hice asi para que
funcionara.

Me doy cuenta que al cargar mi pagina al accesar a mis registros, a pesar de
que cuando doy Boton Nuevo, y limpiar los text= "", para editar con mis
nuevos valores, al regresar, me doy cuenta que vuelve a mostrar los valores
del primer registro. Les paso mi programación, haber si se puede mejorar, ya
que es ilogico que cree otros textbox para agregar o editar y otros para
accesar a los valores de mi tabla.

Imports System.Data.SqlClient

Imports Agencia.Posicion

Public Class logininfo

Inherits System.Web.UI.Page

Public Conexion As String

Public SqlConnection, Cmd

Public Dr As SqlDataReader

Protected WithEvents txtNombre01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtAp_Pat01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtAp_Mat01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtLogin01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtPassword01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtNombre02 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtAp_Pat02 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtAp_Mat02 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtLogin02 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtPassword02 As System.Web.UI.WebControls.TextBox

Protected WithEvents lblConfirma As System.Web.UI.WebControls.Label

Protected WithEvents txtConfirma As System.Web.UI.WebControls.TextBox

Protected WithEvents lblMensaje As System.Web.UI.WebControls.Label

Public pTotReg As Integer

Public Property pBoton() As String

Get

If ViewState("pBoton") Is Nothing Then

Return ""

End If

Return DirectCast(ViewState("pBoton"), String)

End Get

Set(ByVal value As String)

ViewState("pBoton") = value

End Set

End Property

#Region " Web Form Designer Generated Code "



<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

End Sub

Protected WithEvents btnAceptar As System.Web.UI.WebControls.Button

Protected WithEvents btnCancelar As System.Web.UI.WebControls.Button

Protected WithEvents btnSalir As System.Web.UI.WebControls.Button

Protected WithEvents btnEliminar As System.Web.UI.WebControls.Button

Protected WithEvents btnNuevo As System.Web.UI.WebControls.Button

Protected WithEvents btnEditar As System.Web.UI.WebControls.Button

Protected WithEvents btnUltimo As System.Web.UI.WebControls.Button

Protected WithEvents btnSiguiente As System.Web.UI.WebControls.Button

Protected WithEvents btnAnterior As System.Web.UI.WebControls.Button

Protected WithEvents btnPrimero As System.Web.UI.WebControls.Button

Protected WithEvents lblRegistro As System.Web.UI.WebControls.Label

Protected WithEvents lblNumReg As System.Web.UI.WebControls.Label

Protected WithEvents lblPosReg As System.Web.UI.WebControls.Label

'NOTE: The following placeholder declaration is required by the Web Form
Designer.

'Do not delete or move it.

Private designerPlaceholderDeclaration As System.Object

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Init

'CODEGEN: This method call is required by the Web Form Designer

'Do not modify it using the code editor.

InitializeComponent()

End Sub

#End Region

Public Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load

'Put user code to initialize the page here

If Not Page.IsPostBack Then

pPosReg = Posicion.pPosReg.ToString()

End If

Conexion = "Initial Catalog=Agencia;Data Source=dhvilla\misqlserver;user
id=sa;password =pal42pat"

SqlConnection = New SqlConnection(Conexion)

SqlConnection.Open()

Tot_Reg()

Obt_Array()

Cmd = New SqlCommand("Select TOP 1 * FROM tbl_Usuario Order By ID ASC",
SqlConnection)

Muestra_Datos()

End Sub

Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnNuevo.Click

pBoton = "Nuevo"

Nuevo_Editar()

Limpia_Text()

' Recorre() ' Se puso porque perdia la posición

End Sub

Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnEditar.Click

Nuevo_Editar()

Recorre() ' Se puso porque perdia la posición

pBoton = "Editar"

End Sub

Public Sub btnAceptar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAceptar.Click

If pBoton = "Nuevo" Then

Insert_Usuario()

Tot_Reg()

pPosReg = pTotReg

'Else

End If

pBoton = ""

Aceptar_Cancelar()

Recorre() ' Se puso porque perdia la posición

End Sub

Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnCancelar.Click

pBoton = ""

Aceptar_Cancelar()

Recorre() ' Se puso porque perdia la posición

End Sub

Public Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnSiguiente.Click

Tot_Reg()

If pPosReg < pTotReg Then

pPosReg = pPosReg + 1

End If

Recorre()

End Sub

Private Sub btnAnterior_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAnterior.Click

Tot_Reg()

If pPosReg <= pTotReg And pPosReg > 1 Then

pPosReg = pPosReg - 1

End If

Recorre()

End Sub

Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnUltimo.Click

Tot_Reg()

pPosReg = pTotReg

Recorre()

End Sub

Private Sub btnPrimero_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnPrimero.Click

pPosReg = 1

Cmd = New SqlCommand("Select TOP 1 * FROM tbl_Usuario Order By ID ASC",
SqlConnection)

Muestra_Datos()

End Sub

Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnSalir.Click

Recorre() ' Se puso porque perdia la posición

SqlConnection.Close()

End Sub

Public Sub Nuevo_Editar()

Me.btnAceptar.Visible = True

Me.btnCancelar.Visible = True

Me.btnNuevo.Visible = False

Me.btnEditar.Visible = False

Me.txtAp_Mat01.Visible = False

Me.txtAp_Pat01.Visible = False

Me.txtLogin01.Visible = False

Me.txtNombre01.Visible = False

Me.txtPassword01.Visible = False

Me.txtAp_Mat02.Visible = True

Me.txtAp_Pat02.Visible = True

Me.txtLogin02.Visible = True

Me.txtNombre02.ReadOnly = False ' Lectura en Falso

Me.txtNombre02.BorderStyle = BorderStyle.NotSet ' Con Borde

Me.txtPassword02.Visible = True

Me.lblRegistro.Visible = False

Me.lblPosReg.Visible = False

Me.btnPrimero.Visible = False

Me.btnSiguiente.Visible = False

Me.btnUltimo.Visible = False

Me.btnAnterior.Visible = False

Me.lblConfirma.Visible = True

Me.txtConfirma.Visible = True

End Sub

Public Sub Aceptar_Cancelar()

Me.btnAceptar.Visible = False

Me.btnCancelar.Visible = False

Me.btnNuevo.Visible = True

Me.btnEditar.Visible = True

Me.txtAp_Mat01.Visible = True

Me.txtAp_Pat01.Visible = True

Me.txtLogin01.Visible = True

Me.txtNombre01.Visible = True

Me.txtPassword01.Visible = True

Me.txtAp_Mat02.Visible = False

Me.txtAp_Pat02.Visible = False

Me.txtLogin02.Visible = False

Me.txtNombre02.Text = "" ' Deja en Blanco lo guardado

Me.txtNombre02.ReadOnly = True ' Modo Lectura

Me.txtNombre02.BorderStyle = BorderStyle.None ' Sin Borde

Me.txtPassword02.Visible = False

Me.lblRegistro.Visible = True

Me.lblPosReg.Visible = True

Me.btnPrimero.Visible = True

Me.btnSiguiente.Visible = True

Me.btnUltimo.Visible = True

Me.btnAnterior.Visible = True

Me.lblConfirma.Visible = False

Me.txtConfirma.Visible = False

End Sub

Public Sub Muestra_Datos()

Dr = Cmd.ExecuteReader()

If Dr.Read = True Then

Me.lblRegistro.Text = "Usuario ID: " & Dr.Item("ID").ToString

Me.txtNombre01.Text = Dr.Item("Nombre").ToString

Me.txtAp_Pat01.Text = Dr.Item("Ap_Pat").ToString

Me.txtAp_Mat01.Text = Dr.Item("Ap_Mat").ToString

Me.txtLogin01.Text = Dr.Item("Login").ToString

Me.txtPassword01.Text = Dr.Item("Password").ToString

End If

Dr.Close()

End Sub

Public Sub Obt_Array()

If pTotReg > 1 Then

Dim lArray(pTotReg) As Integer

Cmd = New SqlCommand("Select ID FROM tbl_Usuario ORDER BY ID ASC",
SqlConnection)

Dr = Cmd.ExecuteReader()

Dim lPosReg = 1

While Dr.Read()

lArray(lPosReg) = Dr.Item("ID")

lPosReg = lPosReg + 1

End While

lPosReg = 1

Me.lblPosReg.Text = "Registro: " & lArray(lPosReg)

Dr.Close()

End If

End Sub

Public Sub Recorre()

Dim lArray(pTotReg) As Integer

Dim lPosReg As Integer = 1

Cmd = New SqlCommand("Select ID FROM tbl_Usuario ORDER BY ID ASC",
SqlConnection)

Dr = Cmd.ExecuteReader()

While Dr.Read()

lArray(lPosReg) = Dr.Item("ID")

lPosReg = lPosReg + 1

End While

lPosReg = pPosReg

Me.lblPosReg.Text = "Registro: " & lArray(lPosReg)

Dr.Close()

Cmd = New SqlCommand("Select * FROM tbl_Usuario Where ID = '" &
lArray(lPosReg) & "'", SqlConnection)

Muestra_Datos()

End Sub

Public Sub Tot_Reg()

Cmd = New SqlCommand("Select Count(*) AS Cuenta FROM tbl_Usuario",
SqlConnection)

Dr = Cmd.ExecuteReader()

If Dr.Read = True Then

Me.lblNumReg.Text = "Total de Usuarios: " & Dr.Item("Cuenta")

pTotReg = Dr.Item("Cuenta")

End If

Dr.Close()

End Sub

Private Sub Limpia_Text()

Me.txtAp_Mat02.Text = ""

Me.txtAp_Pat02.Text = ""

Me.txtLogin02.Text = ""

Me.txtNombre02.Text = ""

Me.txtPassword02.Text = ""

End Sub

Private Sub Insert_Usuario()

Cmd = New SqlCommand("sp_UsuarioInsert", SqlConnection)

Cmd.CommandType = CommandType.StoredProcedure

'Ap_Pat

Dim pAp_Pat = New SqlParameter("@Ap_Pat", SqlDbType.VarChar, 15)

pAp_Pat.Value = Me.txtAp_Pat02.Text

Cmd.Parameters.Add(pAp_Pat)

' Ap_Mat

Dim pAp_Mat = New SqlParameter("@Ap_Mat", SqlDbType.VarChar, 15)

pAp_Mat.Value = Me.txtAp_Mat02.Text

Cmd.Parameters.Add(pAp_Mat)

' Nombre

Dim pNombre = New SqlParameter("@Nombre", SqlDbType.VarChar, 15)

pNombre.Value = Me.txtNombre02.Text

Cmd.Parameters.Add(pNombre)

' Login

Dim pLogin = New SqlParameter("@Login", SqlDbType.VarChar, 10)

pLogin.Value = Me.txtLogin02.Text

Cmd.Parameters.Add(pLogin)

' Password

Dim pPassword = New SqlParameter("@Password", SqlDbType.VarChar, 10)

pPassword.Value = Me.txtPassword02.Text

Cmd.Parameters.Add(pPassword)

' ejecuta

Cmd.ExecuteNonQuery()

End Sub

Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnEliminar.Click

' If pBoton <> "" Then



' Else

Recorre() ' Se puso porque perdia la posición

' End If

End Sub

Private Sub txtConfirma_TextChanged(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles txtConfirma.TextChanged

If Me.txtPassword02.Text = Me.txtConfirma.Text Then

Else

End If

End Sub

End Class


Ahi contiene todo desde la conexión hasta los eventos del boton click para
Nuevo y Aceptar o Cancelar, asi como unas subrutinas


Salu2 :-)))

(""'·._.·L.I. Daniel Villa·._.·'"")


"Lord Voldemort" <lordvoldemort8@@@gmail.com> escribió en el mensaje
news:%23ejxm42$
prueba esta ...usar esta funcion para insertar..

Public Sub Insert_Usuario()
Dim sqlConsulta as String
sqlConsulta = "sp_UsuarioInsert '" & Me.txtAp_Mat.Text & "', '" &
Me.txtAp_Pat.Text & "', '" & Me.txtLogin.Text & "', '" &
Me.txtNombre.Text & "', '" & Me.txtPassword.Text & "'"

debug.writeline(sqlconsulta) ' solo para ver como quedo armado tu SP
con sus valores.. tienen quedar separados por coma y entre comillas
simples los textos..

Cmd = New SqlCommand(sqlConsulta, SqlConnection)
Cmd.CommandType = CommandType.StoredProcedure
Cmd.ExecuteNonQuery()

End

no se donde lo pegas a tu conexion.. tu sabras...
saludos..


"Daniel H. Villa" wrote in message
news:e%2348jyU$
Hola:

Tengo un problema serio al momento de insertar registros en una tabla de
SQL Server.

El modo de inserción esta bien, lo estoy haciendo con un stored
procedure, pero el problema, es que no me inserta los valores que tengo
en mis textbox.

Al dar en el boton nuevo, me limpia mis textbox, les tecleo los nuevos
valores y al momento de dar boton Aceptar, lo guarda todo OK, pues no ya
que me guarda los valores del primer registro. No me toma los valores que
yo introduzco. Estuve debugeando y hay un momento que antes de ejecutar
mi inserción me toma los valores del primer registro. No se que esta
pasando.

Paso parte de mi codigo, estoy trabajando con ASP.Net utilizando VB.Net

Public Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnNuevo.Click

Me.txtAp_Mat.Text = ""

Me.txtAp_Pat.Text = ""

Me.txtLogin.Text = ""

Me.txtNombre.Text = ""

Me.txtPassword.Text = ""

End Sub


Public Sub btnAceptar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAceptar.Click

Insert_Usuario()

End Sub



Public Sub Insert_Usuario()

Cmd = New SqlCommand("sp_UsuarioInsert", SqlConnection)

Cmd.CommandType = CommandType.StoredProcedure

' Ap_Pat

Dim pAp_Pat = New SqlParameter("@Ap_Pat", SqlDbType.VarChar)

pAp_Pat.Value = Me.txtAp_Pat.Text

Cmd.Parameters.Add(pAp_Pat)

' Ap_Mat

Dim pAp_Mat = New SqlParameter("@Ap_Mat", SqlDbType.VarChar)

pAp_Mat.Value = Me.txtAp_Mat.Text

Cmd.Parameters.Add(pAp_Mat)

' Nombre

Dim pNombre = New SqlParameter("@Nombre", SqlDbType.VarChar)

pNombre.Value = Me.txtNombre.Text

Cmd.Parameters.Add(pNombre)

' Login

Dim pLogin = New SqlParameter("@Login", SqlDbType.VarChar)

pLogin.Value = Me.txtLogin.Text

Cmd.Parameters.Add(pLogin)

' Password

Dim pPassword = New SqlParameter("@Password", SqlDbType.VarChar)

pPassword.Value = Me.txtPassword.Text

Cmd.Parameters.Add(pPassword)

' ejecuta

Cmd.ExecuteNonQuery()

End Sub



Ojala y alguien encuentre la forma de que me respete la inserción sobre
los textbox que estoy cambiando


Salu2 :-)))

(""'·._.·L.I. Daniel Villa·._.·'"")







Respuesta Responder a este mensaje
#10 Marckys
14/12/2005 - 08:40 | Informe spam
Yo no domino el VB, pero por lo que veo cuando haces postback siempre cargas
los datos.

Cuando clicas en el botón de guardar vuelves a cargar los datos y por eso te
carga siempre el primer valor.

Tendrías que controlar la carga de datos cuando te interese y no siempre.

Public Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load

'Put user code to initialize the page here



...

End Sub

Saludos

Marckys --> Power by C#
MCP - MCAD.NET


"Daniel H. Villa" escribió:

Hola Lord, Marcks y Leonardo:

Tuve que hacer lo siguiente para que tomara los valores de mi textbox:

Agregue otros textbox que solo van a servir para Introducir los datos a
insertar. Se que esta mal la forma pero, solo lo hice asi para que
funcionara.

Me doy cuenta que al cargar mi pagina al accesar a mis registros, a pesar de
que cuando doy Boton Nuevo, y limpiar los text= "", para editar con mis
nuevos valores, al regresar, me doy cuenta que vuelve a mostrar los valores
del primer registro. Les paso mi programación, haber si se puede mejorar, ya
que es ilogico que cree otros textbox para agregar o editar y otros para
accesar a los valores de mi tabla.

Imports System.Data.SqlClient

Imports Agencia.Posicion

Public Class logininfo

Inherits System.Web.UI.Page

Public Conexion As String

Public SqlConnection, Cmd

Public Dr As SqlDataReader

Protected WithEvents txtNombre01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtAp_Pat01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtAp_Mat01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtLogin01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtPassword01 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtNombre02 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtAp_Pat02 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtAp_Mat02 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtLogin02 As System.Web.UI.WebControls.TextBox

Protected WithEvents txtPassword02 As System.Web.UI.WebControls.TextBox

Protected WithEvents lblConfirma As System.Web.UI.WebControls.Label

Protected WithEvents txtConfirma As System.Web.UI.WebControls.TextBox

Protected WithEvents lblMensaje As System.Web.UI.WebControls.Label

Public pTotReg As Integer

Public Property pBoton() As String

Get

If ViewState("pBoton") Is Nothing Then

Return ""

End If

Return DirectCast(ViewState("pBoton"), String)

End Get

Set(ByVal value As String)

ViewState("pBoton") = value

End Set

End Property

#Region " Web Form Designer Generated Code "



<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

End Sub

Protected WithEvents btnAceptar As System.Web.UI.WebControls.Button

Protected WithEvents btnCancelar As System.Web.UI.WebControls.Button

Protected WithEvents btnSalir As System.Web.UI.WebControls.Button

Protected WithEvents btnEliminar As System.Web.UI.WebControls.Button

Protected WithEvents btnNuevo As System.Web.UI.WebControls.Button

Protected WithEvents btnEditar As System.Web.UI.WebControls.Button

Protected WithEvents btnUltimo As System.Web.UI.WebControls.Button

Protected WithEvents btnSiguiente As System.Web.UI.WebControls.Button

Protected WithEvents btnAnterior As System.Web.UI.WebControls.Button

Protected WithEvents btnPrimero As System.Web.UI.WebControls.Button

Protected WithEvents lblRegistro As System.Web.UI.WebControls.Label

Protected WithEvents lblNumReg As System.Web.UI.WebControls.Label

Protected WithEvents lblPosReg As System.Web.UI.WebControls.Label

'NOTE: The following placeholder declaration is required by the Web Form
Designer.

'Do not delete or move it.

Private designerPlaceholderDeclaration As System.Object

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Init

'CODEGEN: This method call is required by the Web Form Designer

'Do not modify it using the code editor.

InitializeComponent()

End Sub

#End Region

Public Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load

'Put user code to initialize the page here

If Not Page.IsPostBack Then

pPosReg = Posicion.pPosReg.ToString()

End If

Conexion = "Initial Catalog=Agencia;Data Source=dhvilla\misqlserver;user
id=sa;password =pal42pat"

SqlConnection = New SqlConnection(Conexion)

SqlConnection.Open()

Tot_Reg()

Obt_Array()

Cmd = New SqlCommand("Select TOP 1 * FROM tbl_Usuario Order By ID ASC",
SqlConnection)

Muestra_Datos()

End Sub

Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnNuevo.Click

pBoton = "Nuevo"

Nuevo_Editar()

Limpia_Text()

' Recorre() ' Se puso porque perdia la posición

End Sub

Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnEditar.Click

Nuevo_Editar()

Recorre() ' Se puso porque perdia la posición

pBoton = "Editar"

End Sub

Public Sub btnAceptar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAceptar.Click

If pBoton = "Nuevo" Then

Insert_Usuario()

Tot_Reg()

pPosReg = pTotReg

'Else

End If

pBoton = ""

Aceptar_Cancelar()

Recorre() ' Se puso porque perdia la posición

End Sub

Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnCancelar.Click

pBoton = ""

Aceptar_Cancelar()

Recorre() ' Se puso porque perdia la posición

End Sub

Public Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnSiguiente.Click

Tot_Reg()

If pPosReg < pTotReg Then

pPosReg = pPosReg + 1

End If

Recorre()

End Sub

Private Sub btnAnterior_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAnterior.Click

Tot_Reg()

If pPosReg <= pTotReg And pPosReg > 1 Then

pPosReg = pPosReg - 1

End If

Recorre()

End Sub

Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnUltimo.Click

Tot_Reg()

pPosReg = pTotReg

Recorre()

End Sub

Private Sub btnPrimero_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnPrimero.Click

pPosReg = 1

Cmd = New SqlCommand("Select TOP 1 * FROM tbl_Usuario Order By ID ASC",
SqlConnection)

Muestra_Datos()

End Sub

Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnSalir.Click

Recorre() ' Se puso porque perdia la posición

SqlConnection.Close()

End Sub

Public Sub Nuevo_Editar()

Me.btnAceptar.Visible = True

Me.btnCancelar.Visible = True

Me.btnNuevo.Visible = False

Me.btnEditar.Visible = False

Me.txtAp_Mat01.Visible = False

Me.txtAp_Pat01.Visible = False

Me.txtLogin01.Visible = False

Me.txtNombre01.Visible = False

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida