Page 1 of 2

Clase para leer DBF desde Dialogo

PostPosted: Fri Apr 26, 2019 3:48 pm
by Compuin
Hola foro,

Asi como existe la clase txbrowse que se crea con la informacion de los campos de las tablas, existe o se podra crear una clase que llene un dialogo con los get de la misma forma que se hace con xbrowse, es decir, los coloque en forma automatica dentro del dialogo (1 registro a la vez)

Atento a sus comentarios

Re: Clase para leer DBF desde Dialogo

PostPosted: Fri Apr 26, 2019 4:02 pm
by Antonio Linares
La próxima versión de FWH incluirá la función XEdit() que aquí se incluye:

Code: Select all  Expand view
#include "FiveWin.ch"

function Main()

   USE clients
   XEdit()
   USE

return nil

function XEdit()

return FW_Record():New():Edit()


Image

Re: Clase para leer DBF desde Dialogo

PostPosted: Fri Apr 26, 2019 4:06 pm
by Compuin
Muchas gracias maestro, es justo lo que estoy buscando

Ohh ok ya vi que es algo que viene para la proxima version

Re: Clase para leer DBF desde Dialogo

PostPosted: Fri Apr 26, 2019 4:12 pm
by Compuin
Me arroja este error
..\..\bcc73\lib\psdk\shell32.lib + >> b32.bc
echo ..\..\bcc73\lib\psdk\gdiplus.lib + >> b32.bc
echo ..\..\bcc73\lib\psdk\rasapi32.lib, >> b32.bc
IF EXIST xplook.res echo xplook.res >> b32.bc
..\..\bcc73\bin\ilink32 -Gn -aa -Tpe -s @b32.bc
Turbo Incremental Link 6.80 Copyright (c) 1997-2017 Embarcadero Technologies, Inc.
Error: Unresolved external '_HB_FUN_FW_RECORD' referenced from C:\DEMO\OBJ\T24.OBJ
Error: Unable to perform link

** error 2 ** deleting demo.exe

C:\demo>if exist demo.exe demo.exe
C:\demo>

Re: Clase para leer DBF desde Dialogo

PostPosted: Fri Apr 26, 2019 4:19 pm
by Antonio Linares
Pruébalo con tu versión actual de FWH porque debería funcionarte :-)
( de no ser así, necesitas una versión de FWH actualizada)

Code: Select all  Expand view
#include "FiveWin.ch"

function Main()

   USE clients
   XEdit( , "NAME,ADRESS" )
   USE

return nil

function XEdit( uSource, cFieldList, lNew )

return FW_Record():New( uSource, cFieldList, lNew ):Edit()


Image

Re: Clase para leer DBF desde Dialogo

PostPosted: Fri Apr 26, 2019 4:21 pm
by Compuin
Antonio Linares wrote:Pruébalo con tu versión actual de FWH porque debería funcionarte :-)
( de no ser así, necesitas una versión de FWH actualizada)

Code: Select all  Expand view
#include "FiveWin.ch"

function Main()

   USE clients
   XEdit( , "NAME,ADRESS" )
   USE

return nil

function xEdit( uSource, cFieldList, lNew )

return FW_Record():New( uSource, cFieldList, lNew ):Edit()


Uso la version 18.05

Re: Clase para leer DBF desde Dialogo

PostPosted: Fri Apr 26, 2019 4:31 pm
by Antonio Linares
Prueba así:

Code: Select all  Expand view
function XEdit( uSource, cFieldList, lNew )

return TDataRow():New( uSource, cFieldList, lNew ):Edit()

Re: Clase para leer DBF desde Dialogo

PostPosted: Fri Apr 26, 2019 5:46 pm
by Compuin
Antonio Linares wrote:Prueba así:

Code: Select all  Expand view
function XEdit( uSource, cFieldList, lNew )

return TDataRow():New( uSource, cFieldList, lNew ):Edit()


Funciono Ok,

Hay forma de organizar y/o posicionar en el Dialogo los campos usando esta funcion ?

Re: Clase para leer DBF desde Dialogo

PostPosted: Sat Apr 27, 2019 7:50 am
by Antonio Linares
Estamos implementándolo...

Re: Clase para leer DBF desde Dialogo

PostPosted: Sat Apr 27, 2019 12:49 pm
by Compuin
Antonio Linares wrote:Estamos implementándolo...


Muchas gracias, sera un gran aporte

Re: Clase para leer DBF desde Dialogo

PostPosted: Sun Apr 28, 2019 1:44 am
by AIDA
Genial :shock:

tengo una preguntita se podrá implementar en el XBrowse() un boton para poder insertar un registro entre dos registros 8)

XBrowse(Alias("CAVA"),"LOS MODELOS DE MI CAVA",lAutoSort,bSetUp, aCols, bSelect, lExcel,lFastEdit)

ya sabes siempre estoy dando lata :mrgreen:

Saluditos :wink:

Re: Clase para leer DBF desde Dialogo

PostPosted: Sun Apr 28, 2019 7:32 am
by Antonio Linares
Aida,

Si usas un índice solo tienes que añadir un registro cuya clave esté entre los dos

O te refieres a hacerlo sin usar un índice ?

Re: Clase para leer DBF desde Dialogo

PostPosted: Mon Apr 29, 2019 2:08 am
by AIDA
Hola

a si es sin usar indices :mrgreen:

Saluditos :wink:

Re: Clase para leer DBF desde Dialogo

PostPosted: Fri May 03, 2019 1:22 am
by AIDA
Hola

no se si leyeron mi ultimo post :roll:

donde comento que si se podrá poner un botón para meter un registro entre dos registro un INSERTAR REGISTRO
para cuando no se usen indices.

Saluditos :wink:

Re: Clase para leer DBF desde Dialogo

PostPosted: Fri May 03, 2019 6:55 am
by Antonio Linares
Aida,

Aqui lo tienes. Por favor haz una copia de seguridad de tu DBF antes de probarlo :-)
Code: Select all  Expand view
#include "FiveWin.ch"

function Main()

   USE clientes
   XBrowse( ,,, { | oBrw | BrwSetup( oBrw ) } )
   USE

return nil

function BrwSetup( oBrw )

   @ 05, 154 BTNBMP Prompt "*" SIZE 15, 16 PIXEL OF oBrw:oWnd FLAT  ;
      TOOLTIP FWString( "Insert" ) ACTION ( InsertRecord(), oBrw:SetFocus() ) ;
      COLOR CLR_BLACK, CLR_WHITE

return nil

function InsertRecord()

   local nRecNo := RecNo()
   local aData  := FW_DbfToArray()
   local aRec   := Array( Len( aData[ nRecNo ] ) )

   hb_AIns( aData, nRecNo, aRec, .T. )
   DbGoTop()
   FW_ArrayToDbf( aData,,, .T. )
   DbGoTo( nRecNo )

return nil