FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Fastreport - Como hago la conexion - SOLUCIONADO
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Fastreport - Como hago la conexion - SOLUCIONADO
Posted: Mon Sep 12, 2011 07:25 PM
Que componente debo instalar, para hacer la conexion de la base de datos Mysql.
No logro hacer la conexion.
Instale myoledb-3.9.6 ... Alguien tiene un ejemplo. de un reporte sencillo con Mysql

Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: Fastreport - Como hago la conexion
Posted: Mon Sep 12, 2011 08:41 PM

Con que estas haciendo la conexion a MYSQL? Estoy usando TDolphin y es tan facil como usar DATABASE.? Por favor se mas claro para ayudarte a lo de fast report.saludos. :shock:

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Re: Fastreport - Como hago la conexion
Posted: Mon Sep 12, 2011 09:14 PM
Gracias Jose Luis
Quiero Hacer un reporte con Fastreport nunca lo he utilizado esta herramienta, cualquier ejemplo bienvenido.

Tu tienes un ejemplo completo como se haria con TDOLPHIN, ya baje la libreria de TDOLPHIN





Logro hace la conexion con la base de datos, pero cuando hago la consulta no me muestra las columnas, que la deberia de mostrar el FielAlias. Si lo hago con Acces si funciona.

Saludos
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Re: Fastreport - Como hago la conexion
Posted: Mon Sep 12, 2011 11:16 PM
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Re: Fastreport - Como hago la conexion
Posted: Tue Sep 13, 2011 10:59 PM

Daniel , si estoy analizado este hilo...
El inconveniente que he tenido es que el codigo no esta completo para compilart la clase,, ejemplo falta algunos recursos.

Saludods , Gracias por su respuesta

Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Re: Fastreport - Como hago la conexion
Posted: Tue Sep 13, 2011 11:14 PM
Ruben...

El intentar construir el ejemplo sera imposible, no hay que prestarle atencion a la "carpinteria" solo a la parte que construye el reporte partiendo del recordset generado por dolphin

copio y pego el ejemplo de nicanor (con lineas comentadas por mi)

En este ejemplo os reportes estan almacenados en una tabla (reportes) y no en disco local

seria buena idea que nicanor nos mostrara un screenshot de este reporte (solo si es posible)

Code (fw): Select all Collapse
//----------------------------------------------------------------------------//
Function report_manopd()

   Local oFrP

  cSql := "select distinct m.id,m.maniobra as numero, m.fecini as fecha, .........."
  
  oRpt := oServer:Query( "Select reporte, file from reportes where id = 3") //Reporte a usar


  TRY 
  
     oTip := oServer:Query( cSql ) //Creacion del recordset
    
  CATCH
  
     Msginfo("Error datos incompletos")
     return
  
  END   
  oFrP := frReportManager():new() //creacion del objeto frReportManager
  
  with object oFrP  


     :SetUserDataSet("manimov",mysqlfields(oTip),;
                            {|| oTip:GoTop()} ,;
                            {|| oTip:SKIP(1)},;
                            {|| oTip:SKIP(-1) },;
                            {|| oTip:EOF() },;
                            { | aField | oTip:FieldGet( afield )} ) //configuracion del data set del reporte, este es el metodo que hace toda la magia

     :LoadFromString( oRpt:file ) //Carga el reporte guardado en la tabla

     // las siguientes lineas son configuraciones del reporte
     :SetTitle( "Diseñador de Informes" )
     :PreviewOptions:SetButtons( FR_PB_PRINT + FR_PB_EXPORT + FR_PB_ZOOM + FR_PB_FIND + FR_PB_OUTLINE + FR_PB_NAVIGATOR )
     :PreviewOptions:SetMaximized(.f.)
     :PreviewOptions:SetBounds(120, 120, 800, 600)     
     :PreviewOptions:SetMaximized(.f.)
     :PreviewOptions:SetBounds(120, 120, 800, 600)
     :ShowReport() //muestra el reporte
     :ClearDataSets() //limpia el data set
     :DestroyFr() //limpieza interna del objeto frReportManager
     
  end with

Return

//--------------------------------------------// 
 
function mysqlfields( oQry )
Local clField := "" 

    nLen := oQry:Fcount()

    for x := 1 to oQry:Fcount()
    
       cLfield := cLfield + oQry:FieldName( x ) + iif( x < nLen ,";","" )

    Next
     
Return cLfield      

//-------------------------------------------------------//
Posts: 132
Joined: Thu Mar 08, 2007 06:12 PM
Re: Fastreport - Como hago la conexion
Posted: Wed Sep 14, 2011 05:03 AM

Saludos !

Ruben, descarga este prototipo, aca uso TDolphin y FastReport, dentro del zip esta el leeme.txt
espero que te ayude.

http://www.4shared.com/file/X5D8CfKl/Prototipo.html

Desde la Republica Bolivariana de Venezuela

Harbour / Bcc / MinGW / Fwh 13.9
Posts: 302
Joined: Fri Apr 23, 2010 04:30 AM
Re: Fastreport - Como hago la conexion
Posted: Wed Sep 14, 2011 11:27 AM

Hola todos,

Demen un tiempo y les armo un zip con las clases y los ejemplos para que vean como se integra fastreport con tdolphin.

Slds

Nicanor

Nicanor Martinez M.
Auditoria y Sistemas Ltda.
MicroExpress Ltda.
FW + FWH + XHARBOUR + HARBOUR + PELLES C + XDEVSTUDIO + XEDIT + BCC + VC_X86 + VCC_X64 + MINGW + R&R Reports + FastReport + Tdolphin + ADO + MYSQL + MARIADB + ORACLE
nnicanor@yahoo.com
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Re: Fastreport - Como hago la conexion
Posted: Wed Sep 14, 2011 04:37 PM
Gracias Daniel
Este ejemplo lo entiendo, pero parte de uno ya creado, Un codigo Similar pero creando el reporte desde cero


Daniel Garcia-Gil wrote:Ruben...

El intentar construir el ejemplo sera imposible, no hay que prestarle atencion a la "carpinteria" solo a la parte que construye el reporte partiendo del recordset generado por dolphin

copio y pego el ejemplo de nicanor (con lineas comentadas por mi)

En este ejemplo os reportes estan almacenados en una tabla (reportes) y no en disco local

seria buena idea que nicanor nos mostrara un screenshot de este reporte (solo si es posible)

Code (fw): Select all Collapse
//----------------------------------------------------------------------------//
Function report_manopd()

   Local oFrP

  cSql := "select distinct m.id,m.maniobra as numero, m.fecini as fecha, .........."
  
  oRpt := oServer:Query( "Select reporte, file from reportes where id = 3") //Reporte a usar


  TRY 
  
     oTip := oServer:Query( cSql ) //Creacion del recordset
    
  CATCH
  
     Msginfo("Error datos incompletos")
     return
  
  END   
  oFrP := frReportManager():new() //creacion del objeto frReportManager
  
  with object oFrP  


     :SetUserDataSet("manimov",mysqlfields(oTip),;
                            {|| oTip:GoTop()} ,;
                            {|| oTip:SKIP(1)},;
                            {|| oTip:SKIP(-1) },;
                            {|| oTip:EOF() },;
                            { | aField | oTip:FieldGet( afield )} ) //configuracion del data set del reporte, este es el metodo que hace toda la magia

     :LoadFromString( oRpt:file ) //Carga el reporte guardado en la tabla

     // las siguientes lineas son configuraciones del reporte
     :SetTitle( "Diseñador de Informes" )
     :PreviewOptions:SetButtons( FR_PB_PRINT + FR_PB_EXPORT + FR_PB_ZOOM + FR_PB_FIND + FR_PB_OUTLINE + FR_PB_NAVIGATOR )
     :PreviewOptions:SetMaximized(.f.)
     :PreviewOptions:SetBounds(120, 120, 800, 600)     
     :PreviewOptions:SetMaximized(.f.)
     :PreviewOptions:SetBounds(120, 120, 800, 600)
     :ShowReport() //muestra el reporte
     :ClearDataSets() //limpia el data set
     :DestroyFr() //limpieza interna del objeto frReportManager
     
  end with

Return

//--------------------------------------------// 
 
function mysqlfields( oQry )
Local clField := "" 

    nLen := oQry:Fcount()

    for x := 1 to oQry:Fcount()
    
       cLfield := cLfield + oQry:FieldName( x ) + iif( x < nLen ,";","" )

    Next
     
Return cLfield      

//-------------------------------------------------------//
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Re: Fastreport - Como hago la conexion
Posted: Wed Sep 14, 2011 09:27 PM
El Ejemplo de prototipo esta Bien Excelente que me envio compubrion... Excelente.
TIene Un genera Generador de Informes Carga La plantilla, hasta ahi no tengo problema.
http://imageshack.us/photo/my-images/684/fastrep1.jpg/
" alt="" loading="lazy">
http://imageshack.us/photo/my-images/854/fastrep2.jpg/
" alt="" loading="lazy">
EL Lio que tengo es en esta parte..
Escojo el componente de la plantilla Base de Datos ADO y Aqui hago la conexion. Donde Escojo el proveedor de OLE DB Que se llama Mysql OLEDB Provider (Este es el correcto)
Hago la conexion y me dice que es satisfactoria (En las Propiedades de Este componente).
Luego Escojo Bien Table ADO para seleccionar Una tabla o Consulta ADO oara generar una sentencia SQL.
Si escojo table ADO --> En la propiedades de este componente en el Item TableName deberia mostar todas as tablas de la base de datos, pero no me muestra nada. Lo mismos pasa con Consulta ADO
El el Item FieldAlieses deberia mostar la lista de columnas, bien sea de la tabla o de la consulta SQL. No muestra nada.
Instale Instale myoledb-3.9.6 ... Este Funciona O hay otro, sera este el problema o me falta un paso.

Este es mi problema es el el momento de Diseñar el reporte,

Gracias al Forum (Espero que sea entendible mi problema descrito)
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Re: Fastreport - Como hago la conexion - SOLUCIONADO
Posted: Thu Sep 15, 2011 10:23 PM

Gracias Ya hice mi primer Reporte, ya vi como era , estaba Interpretando mal.
y muchas gracias a todos los compañeros del Forum que me colaboraron
El Problema era que esta tratando de hacer la conexion directamente en el diseñador del Reportes y crear el Query, pero nunca me funciona.
TOme como base todos lo ejemplos que me aportaron,

Saludos

Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
Posts: 132
Joined: Thu Mar 08, 2007 06:12 PM
Re: Fastreport - Como hago la conexion - SOLUCIONADO
Posted: Thu Sep 15, 2011 11:00 PM

Saludos !
Que bueno que consegiste la solución.

Tambien puedes hacer la conexion a tu Base de datos creando previante un DSN de usuario o de Sistema, como tu lo prefieras, luego en fastreport en modo diseño seleccionas la pestaña data, luego selecciones el icono identificado con la palabra (ADO) das doble click sobre este te sale es dialog de propiedades de conexcion pulsas sobre la pestaña conexion y selecciones el origen de datos creado previamente, ya con esto tienes la conexion a tu base de datos.

Para obtener datos mediante una colsulta ( Query ), seleccionas el icono de consulta ado, das doble click y escribes tu qry

Ejem Select * from tutbla ya tienes una consulta

Despues pulsas la pestaña (Page1) comienzas a diseñar tu reporte

Harbour / Bcc / MinGW / Fwh 13.9
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Re: Fastreport - Como hago la conexion - SOLUCIONADO
Posted: Fri Sep 16, 2011 07:40 PM

Gracias coompañero por su respuesta.

Bueno lo hice de la manera como esta el codigo que me facilitaste del programa Prototipo.
De la manera que tu me dices no me funciona algo debo estar haciendo mal.
Si hago la conexion, Todo lo que tu dices hasta el Query.
Ejem Select * from tutbla ya tienes una consulta y luego doy Despues pulsas la pestaña (Page1) comienzas a diseñar tu reporte.
La duda en donde me muestra la columnas de Query, porque no las veo y las necesito para hacer el reporte.
De todas manera voy a intertar esta manera para ver si me funciona asi.

Gracias y Saludos

Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
Posts: 132
Joined: Thu Mar 08, 2007 06:12 PM
Re: Fastreport - Como hago la conexion - SOLUCIONADO
Posted: Fri Sep 16, 2011 11:48 PM

Saludos !

Ruben, despues de hacer la conexion y crear el Query en la parte derecha del diseñador te salen los datos que trajo el query
Te envio a correo imagenes

Harbour / Bcc / MinGW / Fwh 13.9

Continue the discussion