Sobre DataSet
Publicado: Mié Sep 07, 2005 11:12 am
Esto es parte de un proceso para cambiar datos a una Dbf, a partir de un DataSet...
METHOD xFactura( dDataAbono, cFactura ) CLASS TFrmControlIncidents
If Val( cFactura ) = 0
return Nil
EndIf
::oDbfDataSet1:OrdSetFocus( 4 )
::oDbfDataSet1:Seek( Dtos( dDataAbono ) )
While !::oDbfDataSet1:Eof() .and. ::oDbfDataSet1:FieldGetByName("DATAABONO") == dDataAbono
::oDbfDataSet1:Edit() //Aqui supongo que debe de hacer el bloqueo del registro
::oDbfDataSet1:FACTURA := Str( Val( cFactura ), 5 )
::oDbfDataSet1:Update()
::oDbfDataSet1:Skip()
EndDo
::oDbfDataSet1:OrdSetFocus( 6 )
::oDbfDataSet1:GoTop()
::oDbfDataSet1:Refresh()
Bien, el cambio lo hace perfectamente... ahora bien.
¿Es correcto... es así como debe de hacerse???
De ser correcto...
¿Cómo tengo el control del bloqueo de registros ???
Si :Edit() se encarga del bloqueo, ¿Cuando se libera el registro?
¿Como hago para volver al registro que estaba antes de modificar???
De momento, eso...
Un Saludo,
Xevi.
--
METHOD xFactura( dDataAbono, cFactura ) CLASS TFrmControlIncidents
If Val( cFactura ) = 0
return Nil
EndIf
::oDbfDataSet1:OrdSetFocus( 4 )
::oDbfDataSet1:Seek( Dtos( dDataAbono ) )
While !::oDbfDataSet1:Eof() .and. ::oDbfDataSet1:FieldGetByName("DATAABONO") == dDataAbono
::oDbfDataSet1:Edit() //Aqui supongo que debe de hacer el bloqueo del registro
::oDbfDataSet1:FACTURA := Str( Val( cFactura ), 5 )
::oDbfDataSet1:Update()
::oDbfDataSet1:Skip()
EndDo
::oDbfDataSet1:OrdSetFocus( 6 )
::oDbfDataSet1:GoTop()
::oDbfDataSet1:Refresh()
Bien, el cambio lo hace perfectamente... ahora bien.
¿Es correcto... es así como debe de hacerse???
De ser correcto...
¿Cómo tengo el control del bloqueo de registros ???
Si :Edit() se encarga del bloqueo, ¿Cuando se libera el registro?
¿Como hago para volver al registro que estaba antes de modificar???
De momento, eso...
Un Saludo,
Xevi.
--