Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: lavi en Lunes 10 de Diciembre de 2007, 23:33
Título: Porq No Pasa De Un Registro Al Otro???
Publicado por: lavi en Lunes 10 de Diciembre de 2007, 23:33
la idea es que genere un autonumérico mediante el programa... trabajo en 3 capas para acceder a bd; presentación (forms), dominio (conecta presentación y persistencia) , persistencia (accede directamente a la bd);;; y miren el cód. q lo q no logro es que de un id 417 pase al 418 automaticamente...
presentación (frmingreso) luego de hacer el alta; insertaria el nuevo id en la caja de texto;
txtId.TEXT = CLDAFILIADO1.NuevoID.ID
en dominio; busca la de persistencia para el nuevo id del afiliado
Public Function NuevoID() As cAfiliado2 Set NuevoID = New cAfiliado2 NuevoID.ID = clpAfiliado2.NuevoID.ID End Function
en persistencia,,,, seria donde estaría el error... supongo MIREN EL COD!
Public Function NuevoID() As cAfiliado2 'Agrego un nuevo id a cada afiliiado que voy ingresando Set NuevoID = New cAfiliado2 Set rs = mBASE.abrirsnapshot("Afiliado2") If Not rs.EOF And Not rs.BOF Then rs.MoveLast NuevoID.ID = Val(rs!ID) + 1 Else NuevoID.ID = 1 End If End Function
NO SE; QUEDA TRABADO Y CON ESTE COD NO PASA DEL 417 AL 418 ...
DESDE YA GRACIAS.... :)
Título: Re: Porq No Pasa De Un Registro Al Otro???
Publicado por: cpmario en Martes 11 de Diciembre de 2007, 17:52
Revisa el código colocando un MsgBox para ver si MoveLast te coloca en el último registro. Por ejemplo
Código: Text
If Not rs.EOF And Not rs.BOF Then
rs.MoveLast
MsgBox "Ultimo ID Registrado: " & Val(rs!ID)
NuevoID.ID = Val(rs!ID) + 1
Else
NuevoID.ID = 1
End If
:comp:
Título: Re: Porq No Pasa De Un Registro Al Otro???
Publicado por: DiabloRojo en Jueves 13 de Diciembre de 2007, 15:22
Me llama la atención esta línea:
Citar
Set rs = mBASE.abrirsnapshot("Afiliado2")
Si estás abriendo la tabla como snapshot no hay forma de que puedas actualizar o añadir ningún registro. Esta forma de abrir las tablas se usa para realizar consultas (o sea, sólo para leer la información).
Saludos,
DiabloRojo.
Título: Re: Porq No Pasa De Un Registro Al Otro???
Publicado por: lavi en Viernes 14 de Diciembre de 2007, 20:31
Si claro, por esto que vos decis; como es solo para realizar consultas el snapshot lo utilizo en esta función. En realidad aquí:
If Not rs.EOF And Not rs.BOF Then rs.MoveLast MsgBox "Ultimo ID Registrado: " & Val(rs!ID) NuevoID.ID = Val(rs!ID) + 1Else NuevoID.ID = 1 End If
no existe una modificación en la base, lo único que hace es levantar el NuevoID.ID y llevarlo al formulario; lee el registro de la bd y levanta a el form... por esto sigo con el problema y realmente creo q no es de código.....