De sql a dbf

De sql a dbf

Postby JoseAlvarez » Tue Aug 01, 2023 3:47 pm

Saludos amigos foreros.

Alguien tiene algun ejemplo de como llevar los datos resultantes de una consulta sql a una dbf?

La idea es generar reportes desde esa dbf.

Gracias por las ideas que puedan aportarme.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
JoseAlvarez
 
Posts: 753
Joined: Sun Nov 09, 2014 5:01 pm

Re: De sql a dbf

Postby karinha » Tue Aug 01, 2023 4:11 pm

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7381
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: De sql a dbf

Postby leandro » Tue Aug 01, 2023 7:44 pm

Hola como vas?

Con ADO lo hacemos de la siguiente manera:

Code: Select all  Expand view

    cQry := "SELECT * FROM tu_tabla"
    oRs := FW_OPENRECORDSET(oCn,cQry,adLockOptimistic,adOpenKeyset)
    FW_AdoExportToDBF( oRs , ".\dbfs\elresultado.dbf" , .F. )
    oRs:close()

       De aqui en adelante haces el resto del informe.
       Utilizando esta técnica se acelera de manera asombrosa el proceso de generación de informes
       sobre todo cuando estas trabajando en un servidor remoto
 
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1488
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: De sql a dbf

Postby JoseAlvarez » Wed Aug 02, 2023 12:30 am

Gracias joao, voy a darle un vistazo.

Leandro, muchas gracias. No uso ADO. Uso tdolphin.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
JoseAlvarez
 
Posts: 753
Joined: Sun Nov 09, 2014 5:01 pm

Re: De sql a dbf

Postby cmsoft » Wed Aug 02, 2023 11:41 am

Hola Jose:
En los samples de DOLPHIN tienes un ejemplo
Code: Select all  Expand view

#include "tdolphin.ch"

FUNCTION Main()
 
   LOCAL oServer, oQry
   LOCAL oExp, cTime
 
   D_SetCaseSensitive( .T. )
   
   IF ( oServer := ConnectTo() ) == NIL
      RETURN NIL
   ENDIF
   cls
   oQry = oServer:Query( "SELECT * FROM clientes" )
   
   oExp = oQry:Export( EXP_DBF, "client.dbf" )
   oExp:bOnStart = { || QOut( "Started..."), QOut( ""), cTime := Time() }
   oExp:bOnRow = {| o, n | ShowLine( n, oQry:LastRec() ) }
   oExp:bOnEnd = { || QOut( "Elapse time: " + ElapTime( cTime, Time() ) ), QOut( "Finished...") }
   
   oExp:Start()
   
RETURN NIL


PROCEDURE ShowLine( n, nTotal )

@ Row(),1 say Str( n / nTotal * 100 ) + "%"

RETURN
 
User avatar
cmsoft
 
Posts: 1204
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: De sql a dbf

Postby jair » Wed Aug 02, 2023 11:58 am

Code: Select all  Expand view


oCn   := FW_DemoDB()  // Maria db nativo
//  oCn := Maria_Connect( {cHost, "", cUser, cPass } )
//FWCONNECT oCn HOST "localhost" USER "root" PASSWORD "secret" DB "fwh"


cSql  := "SELECT * FROM minhatabela"
   oCn:SaveToDBF( cSql, "c:\temp\TEMP.DBF" )
   OU
   cFile := Get_File()
   oCn:SaveToDBF( cSql, cFile )
 
Last edited by jair on Wed Aug 02, 2023 9:27 pm, edited 2 times in total.
jair
 
Posts: 26
Joined: Sun Aug 27, 2017 7:18 pm

Re: De sql a dbf

Postby cmsoft » Wed Aug 02, 2023 3:32 pm

jair wrote:
Code: Select all  Expand view

cSql  := "SELECT * FROM minhatabela"
   oCn:SaveToDBF( cSql, "c:\temp\TEMP.DBF" )
   OU
   cFile := Get_File()
   oCn:SaveToDBF( cSql, cFile )
 

No veo el metodo SaveToDbf en la clase TDolphin, existe?
User avatar
cmsoft
 
Posts: 1204
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: De sql a dbf

Postby JoseAlvarez » Wed Aug 02, 2023 6:40 pm

Gracias César, gracias Jair.

Muchas gracias a todos.

Voy a probar y estaré comentando los resultados.

Un abrazo.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
JoseAlvarez
 
Posts: 753
Joined: Sun Nov 09, 2014 5:01 pm

Re: De sql a dbf

Postby nageswaragunupudi » Fri Aug 04, 2023 8:04 am

Running SQL query directly from DBF
Please try these samples.
You can do a lot more
Code: Select all  Expand view
cFolder := "c:\fwh\samples\"
oCn := FW_OpenAdoConnection( cFolder )
oRs := FW_OpenRecordSet( oCn, "
SELECT ID,FIRST,CITY,SALARY FROM CUSTOMER" )
XBROWSER  oRs AUTOSORT
oRs:Close()
oCn:Close()


Another example:
Code: Select all  Expand view
cFolder := "c:\fwh\samples\"
oCn := FW_OpenAdoConnection( cFolder )
oRs := FW_OpenRecordSet( oCn, ;
   "
SELECT [STATE],SUM(SALARY) AS SALARY FROM CUSTOMER GROUP BY STATE" )
XBROWSER  oRs AUTOSORT
oRs:Close()
oCn:Close()
Regards

G. N. Rao.
Hyderabad, India
User avatar
nageswaragunupudi
 
Posts: 10316
Joined: Sun Nov 19, 2006 5:22 am
Location: India


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 37 guests