Guardar Valores de Textbox de VB en Access

Espero que alguien de todos lo que participan aquí me puedan ayudar.
Estoy elaborando una pequeña aplicación, y mi problema es que quiero que los datos determinados en los textbox me los guarde mediante un commandbotton en una base de datos pero no he podido hacerlo elabore la conexión mediante abodc la pruebas me marcan que si existe conexión pero probablemente yo no estoy haciendo bien el guardar los datos son 30 campos los que quiero guardar y se guardar solo como respaldo en el primer renglón cada vez que guarde los datos se irán sustituyendo.
Saludos y muchas gracias
Víctor Inda
Sonora, Mexico

1 respuesta

Respuesta
Por lo largo que es tu tabla te sugiero te vayas con una matriz de controles la cual se trabaja de la siguiente manera:
1ro Agrega un label y un textbox en un formulario
2do Copialos y pegalos en el mismo formularios una vez que lo dibujes,
te advierte que ya existen los controles, y te pregunta que si deseas una matriz, respondes que si.
3ro repites el pegado 28 veces mas, notaras que debes ir arreglando la dispocision de los controles en la pantalla.
Continua...
Hola buenos días
Espero que alguien de todos lo que participan aquí me puedan ayudar.
Estoy elaborando una pequeña aplicación, y mi problema es que quiero que los datos determinados en los textbox me los guarde mediante un commandbotton en una base de datos pero no he podido hacerlo elabore la conexión mediante abodc la pruebas me marcan que si existe conexión pero probablemente yo no estoy haciendo bien el guardar los datos son 30 campos los que quiero guardar y se guardar solo como respaldo en el primer renglón cada vez que guarde los datos se irán sustituyendo.
Saludos y muchas gracias
Víctor Inda
Sonora, Mexico
Hola creo que no se envío tu respuesta
4to una vez que estés listo con los textos y los labels agregas un botón y haces el mismo proceso de copiado y pegado 4 veces, agregas el adodc y estamos listos...
Nota no te preocupes por los nombres de las etiquetas y los campos...
Continua...
En el Form_load escribes
With adodc1
.refresh
For I=0 to .recordset.count-1
Set text1(i).datasource= adodc1
text1(i).datafields = .recordset(i).name
Label1(i).caption = .recordset(i).name
next
Nota esto es bueno si en la BD los campos tienen nombres largos
Continua...
end with
Notaras que en ejecución los datos se ven directos en los textos, y los labels tienen los nombres de los campos indicandos el en texto, es importante mantener la relación Label1(0)-->Text1(0)
Ahora vamos con los Commands
Ellos también están en matriz así que cuando entres en el código de los mismos veras que siempre esta en
Private sub Command1_click(Index as Integer)
Esto implica que el evento es común para ellos, así que hay que diferenciarlos por el index
Si los Index están distribuidos de la siguiente forma vamos bien
0=>Nuevo
1=>Guardar
2=>Eliminar
3=>Refrescar
Entoncese escribes...
Realmente no es lo que ocupo cada campo tiene un valor distitivo, es decir ni un text tiene un valor igual, lo que necesito saber es cual es la instrucción así como la que pusiste al final para poder grabar cada uno de los campos en la base de datos, la instrucción que hice es esta, ya me había funcionado con otro programa pero la base de datos tenia un solo campo, pero esta tiene 30 y no los puedo ligar, el código que escribí es el siguiente:
Private Sub EnviarBD()
CnReporte.RecordSource = "Select * from Datos where ApellidoPat" = APELLIDOP.Text
With CnReporte.Recordset
!ApellidoPat = APELLIDOP.Text
!ApellidoMat = APELLIDOM.Text
!Nombres = NOMBREPILA.Text
!FechaNac = FECHA.Value
!Entidad = ESTADO.Text
!SexoM = Sexo.Text
!RFC = RFCVal.Text
!CURP = CURPVal.Text
!Empresa = NomEmp.Text
!Porporcion = ProporEmp.Text
!SalarioArea = SalMin.Text
!FactorInt = FactInt.Text
!Impuesto = ISSE.Text
!PrimaRiesgo = PrimaRiesgo.Text
!Topes = TopeSM.Text
!SueldoB = SueldoDeseado.Text
!ValesD = VaDep.Text
!PremiosAyP = BAYP.Text
!OtrasPgI = OPGISR.Text
!OtrasPgIM = OPGIMSS.Text
!OtrasPIMI = OPGISRIMSS.Text
!SMB = SueldoBruto.Text
!ISRMen = ISRaRetener.Text
!IMSSMen = IMSSaRetener.Text
!PrestMens = PrestMen.Text
!SMN = SueldoNeto.Text
!SQB = SBQuin.Text
!ISRQuin = IRQuin.Text
!IMSSQuin = IMRquin.Text
!PrestQuin = PrestQuin.Text
!SNQ = SNQuin.Text
!SBD = SBDec.Text
!ISRDec = IRDec.Text
!IMSSDec = IMRDec.Text
!PresDec = PrestDec.Text
!SND = SNDec.Text
!SBS = SBSem.Text
!ISRSem = IRSem.Text
!IMSSSem = IMRSem.Text
!PrestSem = PrestSem.Text
!SNS = SNSem.Text
!SD = SuDi.Text
!SDI = SuDIN.Text
!SBP = SueBru.Text
!VPP = ValesDes.Text
!PAP = PremPYA.Text
!OPGAPI = OPGINI.Text
!OPGAPIM = OPGIYNI.Text
!OPGAPIMI = TodasGrav.Text
!ImssPat = ImssPat.Text
!SarPat = SarPat.Text
!InfonavitPat = InfonavitPat.Text
!ImpEstPat = ImpEst.Text
!CostoMens = CostoMen.Text
!CostoQuin = CostoQuin.Text
!CostoDec = CostoDec.Text
!CostoSem = CostoSem.Text
.Update
End With
End Sub
Select case index
Case 0 ' Nuevo
adodc1.recordset.addnuw
Case 1' Agregar
adodc1.recordset.update
Command1_click 3
CAse 2 ' eliminar
Adodc1.recordset.delete
Command1_click 3
Case 3 ' Refresca
Adodc1.refresh
end select
Debes hacer el Addnew primero que nada
justo luego de la linea del With CnReporte.Recordset
Colocas
. Addnew
Prueba y me avisas... mi messenger es [email protected] por si requieres de una pregunta en linea

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas