FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Tdatabase con varios DBF
Posts: 564
Joined: Thu Oct 13, 2005 09:23 AM
Tdatabase con varios DBF
Posted: Fri Jul 28, 2017 04:11 PM

Hola,

estoy migrando una vieja aplicación y quiero usar TDatabase de FWH. Revisando los ejemplos y demás, hay una cosa que no tengo clara y es el uso de la clase con varios DBF. ¿ Se puede crear un tdatabase para cada dbf que abro o al crear el objeto dbf y cambiar de alias mediante un select se cambia el objeto database de manera automática ? ¿ Algún ejemplo de uso de TDatabase con varios DBF ?

Saludos,
José Luis

Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Tdatabase con varios DBF
Posted: Fri Jul 28, 2017 04:21 PM
Mira se ayuda, vários ejemplos simples de uso.

https://www.4shared.com/rar/rFE4iUitei/AULAINI.html

Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Tdatabase con varios DBF
Posted: Fri Jul 28, 2017 04:52 PM
Mi primero ejemplo en fivewin the best: a long long time ago. jejejejejejejejejej



Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Tdatabase con varios DBF
Posted: Fri Jul 28, 2017 10:36 PM
karinha wrote:Mi primero ejemplo en fivewin the best: a long long time ago. jejejejejejejejejej



Saludos.


this program is made by another man (Aulaware - A. Canudas) , you cannot be this man :-)
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 564
Joined: Thu Oct 13, 2005 09:23 AM
Re: Tdatabase con varios DBF
Posted: Sat Jul 29, 2017 09:50 AM

Gracias Joao,
no puedo ejecutar la aplicación porque tengo Windows 10 y no hay manera. He estado revisando el código y lo que hace es que cada vez que abre un DBF le asocia un objeto TDatabase. Creo que no es la manera de hacer las cosas, porque se puede quedar a mitad de editar un registro por no poder abrir otro dbf simplemente para seleccionar un registro como clave ajena.
Yo lo que quiero hacer es tener varias DBF abiertas, cada una con su objeto TDatabse asociado. ¿ Como puedo hacer esto ?

Saludos,

Posts: 564
Joined: Thu Oct 13, 2005 09:23 AM
Re: Tdatabase con varios DBF
Posted: Sun Jul 30, 2017 08:28 AM

Contestado en viewtopic.php?f=3&t=34394

Gracias,

Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Tdatabase con varios DBF
Posted: Tue Aug 01, 2017 01:50 PM
José Luis Sánchez wrote:Contestado en viewtopic.php?f=3&t=34394

Gracias,


José, el intento, és que cuando posible, cambie los ejemplos a 32 ó 64 bits. Gracias, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Tdatabase con varios DBF
Posted: Tue Aug 01, 2017 01:56 PM
Como yo uso:

Code (fw): Select all Collapse
    IF DeOndeVem != [DELIVERY] .AND. DeOndeVem != [RESERVAS] .AND. ;
       DeOndeVem != [LOCACAO]

       IF NetUse( "CADETIQ", .T. )
          OrdListAdd( "CADETIQ", "RAZ_MATRIC", "DEST_NOME", "END",             ;
                                 "NOME_ARTIS", "CPF",       "CNPJ",            ;
                                 "TELEFONE" )
          //OrdDescend( ,,.T. ) // - Crescente
          OrdDescend( ,,.F. )   // - Decrescente
          DATABASE DbClientes
          DbClientes:Gotop()
          DbClientes:Load()
          DbClientes:SetBuffer( .T. )
       ELSE
          MsgStop( "Banco de Dados dos CLIENTES Bloqueado", "Cuidado!" )
          RETURN NIL
       ENDIF
    ENDIF

    IF NetUse( "CABCLALF", .T. )   // Exclusive:  .F.  Shared: .T.

       DATABASE DbCabec
       DbCabec:Load()
       DbCabec:SetBuffer( .T. )
       DbCabec:GoTop()
       DbSkip(-1)
    ELSE
       MsgStop( "Banco de Dados Bloqueado", "Cuidado!" )
       RETURN NIL
    ENDIF

    IF NetUse( "PAIEMAE", .T. )
       OrdListAdd( "PAIEMAE", "RAZ_MATRIC" )
       OrdDescend( ,,.F. ) // - Decrescente
       DATABASE DbPaieMae
       DbPaieMae:Gotop()
       DbPaieMae:Load()
       DbPaieMae:SetBuffer( .T. )
    ELSE
       MsgStop( "Banco de Dados dos CLIENTES Bloqueado", "Cuidado!" )
       RETURN NIL
    ENDIF

    DbSelectArea( ( DbClientes:cAlias ) )
    DbClientes:SetOrder( 2 )
    DbGoTop()


Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341

Continue the discussion