FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour eror export datos condicionados a Excel oBrw:ToExcel() SOLVE
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
eror export datos condicionados a Excel oBrw:ToExcel() SOLVE
Posted: Fri Jul 24, 2020 05:25 PM
Hola amigos.
¿Pueden indicarme dónde está el error en el siguiente codigo?

La falla es que únicamente exporta datos para la columna 1 (state), dejando las demás en blanco, en el fichero Excel.

Code (fw): Select all Collapse
#include "fivewin.ch"
#include "xBrowse.ch"

Function Main()
local oDlg, oBrw, cAlias, oFont
local oState, cState

   dbUseArea(.t.,,"Customer","CUST",.f.) 
   dbSelectArea("CUST")
   index on field->State To cu temporary
   cAlias := Alias()

   (cAlias)->( OrdSetFocus("cu") )

   cState := space(len(Cust->state))

   DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14

   DEFINE DIALOG oDlg SIZE 800,500 PIXEL TRUEPIXEL FONT oFont;
      TITLE "Exportar Brw-Xls datos condicionados"

   @ 20, 20 SAY "State" SIZE 100,20 PIXEL OF oDlg

   @ 20,120 GET oState VAR cState SIZE 100,20 PIXEL OF oDlg PICTURE "@!" 

   @ 50,120 BUTTON "Exportar" SIZE 100,20 PIXEL OF oDlg  ;
            ACTION Exporte(oBrw,cState) WHEN !empty(cState)

   @ 20,250 XBROWSE oBrw SIZE -20,-20 PIXEL OF oDlg ;
      DATASOURCE "CUST" ;
      COLUMNS 'State','First', 'City' ;
      CELL LINES NOBORDER

   WITH OBJECT oBrw
      oBrw:CreateFromCode()
   END

   ACTIVATE DIALOG oDlg CENTERED

   RELEASE FONT oFont

   (cAlias)->(dbCloseArea())
return nil
//-----------------------------------------//
Function Exporte(oBrw,cState)
local aRecNo := {}
local bCondi := { || (oBrw:cAlias)->STATE == cState }

   //Preparar array de registros a exportar, según condición.
   (oBrw:cAlias)->( DBEVAL( { || AAdd( aRecNo, RECNO() ) }, bCondi ) )

   (oBrw:cAlias)->( DBseek(cState,.t.) )
   oBrw:Refresh()

   //Asignar el array a oBrw:aSelected, exportar datos, y limpiar oBrw:aSelected
   oBrw:aSelected := aRecNo
   oBrw:ToExcel()    // <--- Por qué solo exporta valores para la columna 1 (State)?
   oBrw:aSelected := {} 

Return nil


Gracias.
Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Error export datos condicionados a Excel oBrw:ToExcel()
Posted: Fri Jul 24, 2020 11:09 PM
Working correctly for me here:



May we know which version of FWH you tested?
Regards



G. N. Rao.

Hyderabad, India
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Error export datos condicionados a Excel oBrw:ToExcel()
Posted: Sat Jul 25, 2020 01:21 AM

Rao, thanks for your reply.
Fwh1709.

Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Error export datos condicionados a Excel oBrw:ToExcel()
Posted: Thu Jul 30, 2020 03:07 AM
For FWH 1709, please make this small modification in the function Exporte(...)

Code (fw): Select all Collapse
Function Exporte(oBrw,cState)
local aRecNo := {}
local bCondi := { || (oBrw:cAlias)->STATE == cState }
local nStyle := oBrw:nMarqueeStyle

   //Preparar array de registros a exportar, según condición.
   (oBrw:cAlias)->( DBEVAL( { || AAdd( aRecNo, RECNO() ) }, bCondi ) )

   (oBrw:cAlias)->( DBseek(cState,.t.) )
   oBrw:Refresh()

   //Asignar el array a oBrw:aSelected, exportar datos, y limpiar oBrw:aSelected
   oBrw:aSelected := aRecNo
   oBrw:nMarqueeStyle := 4
   oBrw:ToExcel()    // <--- Por qué solo exporta valores para la columna 1 (State)?
   oBrw:nMarqueeStyle := nStyle
   oBrw:aSelected := {}

Return nil


Please let us know if this works
Regards



G. N. Rao.

Hyderabad, India
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Error export datos condicionados a Excel oBrw:ToExcel()
Posted: Thu Jul 30, 2020 04:39 PM
nageswaragunupudi wrote:For FWH 1709, please make this small modification in the function Exporte(...)

Code (fw): Select all Collapse
Function Exporte(oBrw,cState)
local aRecNo := {}
local bCondi := { || (oBrw:cAlias)->STATE == cState }
local nStyle := oBrw:nMarqueeStyle

   //Preparar array de registros a exportar, según condición.
   (oBrw:cAlias)->( DBEVAL( { || AAdd( aRecNo, RECNO() ) }, bCondi ) )

   (oBrw:cAlias)->( DBseek(cState,.t.) )
   oBrw:Refresh()

   //Asignar el array a oBrw:aSelected, exportar datos, y limpiar oBrw:aSelected
   oBrw:aSelected := aRecNo
   oBrw:nMarqueeStyle := 4
   oBrw:ToExcel()   
   oBrw:nMarqueeStyle := nStyle
   oBrw:aSelected := {}

Return nil


Please let us know if this works


Yes. Now it is working fine.
Thanks.
Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql

Continue the discussion