Page 3 of 4

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Tue Oct 23, 2018 8:12 pm
by Marcelo Roggeri
Hola buenas tardes, Cristobal estoy probando el testmdi.prg que compartiste, donde el menu lateral se puede ocultar.
El tema es que solo me toma una rayita en la parte superior para hacer doble click.
Te adjunto la imagen para que te des cuenta.
Image

otra cosa en la linea 168 comente esto //:nAlign := 3 porque daba error, luego lo compilo y te adjunto el error

Code: Select all  Expand view
Application
===========
   Path and name: C:\FEFWH\testmdi.exe (32 bits)
   Size: 3,958,784 bytes
   Compiler version: Harbour 3.2.0dev (r1801051438)
   FiveWin  version: FWH 18.04
   C compiler version: Borland/Embarcadero C++ 7.0 (32-bit)
   Windows version: 6.2, Build 9200

   Time from start: 0 hours 0 mins 0 secs
   Error occurred at: 10/23/18, 17:11:00
   Error description: Error BASE/1075  Argument error: >
   Args:
     [   1] = U  
     [   2] = N   1035

Stack Calls
===========
   Called from: .\source\classes\TEXPLBAR.PRG => TEXPLORERBAR:RESIZE( 244 )
   Called from: .\source\classes\CONTROL.PRG => TPANEL:_NALIGN( 1561 )
   Called from: testmdi.prg => HAZEXPLORERBAR( 168 )
   Called from: testmdi.prg => (b)MAIN( 56 )
   Called from: .\source\classes\WINDOW.PRG => TWINDOW:ACTIVATE( 1041 )
   Called from: testmdi.prg => MAIN( 56 )
 

Saludos y Muchas gracias
Marcelo

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Tue Oct 23, 2018 8:53 pm
by cnavarro
Marcelo, el ejemplo me funciona perfectamente y sin problemas

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Tue Oct 23, 2018 9:15 pm
by Marcelo Roggeri
Le agregue el alto de la wnd al panel 2 en la linea 170

:nHeight := oWnd:nHeight()

Code: Select all  Expand view
  WITH OBJECT ( oPnel2 := TPanel():New( 0, 0, 0, nWPanel, oExplBar ) )
      :SetColor( 0, METRO_OLIVE )
      :SetBrush( oBrush )
      //:nAlign  := 3

      :nHeight := oWnd:nHeight()  // ESTO AGREGUE YO

      WndHeight( :hWnd, :nHeight + 2 )
      :bPainted   := { | o | HazSayPnel() }
      :bLDblClick := { | o | lHide := !lHide, ;
                             oVSplitL:SetPosition( if( !lHide, nWPanel + 1, nPosVSp ) ), ;
                             Eval( oVSplitL:bChange ), ;
                             oVSplitL:Adjust(), oWndCalend:Refresh() }
   END WITH
 


y ahora si se ve.

Saludos
Marcelo

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Tue Oct 23, 2018 10:36 pm
by cnavarro
Bien, pero como te comento sin poner lo que has añadido y con el nalign a mi me funciona, tendré que ver por qué

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Sun Nov 11, 2018 6:33 pm
by cnavarro
cnavarro wrote:Primera version para implementar la tecnica de BlockChain
Ejemplo desarrollado con hashs
Para entender bien el ejemplo, por favor vea este video antes.
Espero sus comentarios

First version to implement the BlockChain technique
Example developed with hashs
To understand the example well, please watch this video before.
I await your comments

https://youtu.be/_160oMzblY8

Image

EXE sample

https://bitbucket.org/fivetech/fivewin- ... OCKFUL.EXE


Incluido en la nueva version de Fivewin 18.10

viewtopic.php?f=16&t=36338#p216789

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Sat Dec 22, 2018 1:11 am
by cnavarro
Aunque no creo que me dé tiempo a terminarlo, aquí dejo una imagen de un proyecto que llevo desarrollando hace tiempo
Pero aprovecho para desear a todos los componentes del foro Feliz Navidad

Image

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Sat Dec 22, 2018 12:14 pm
by Marcelo Roggeri
Hola Cristobal, buenos días que bien se ve la imagen del proyecto, gracias e igualmente el saludo a todo el foro. Bendiciones

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Sat Dec 22, 2018 4:23 pm
by cnavarro
Otro proyecto que estoy desarrollando: FASTREPORT.NET desde Fivewin

Image

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Fri May 31, 2019 2:35 am
by hua
cnavarro wrote:Aunque no creo que me dé tiempo a terminarlo, aquí dejo una imagen de un proyecto que llevo desarrollando hace tiempo
Pero aprovecho para desear a todos los componentes del foro Feliz Navidad

Image


Hi Cristobal,
Could you share the code of this? It's ok if it's not finished, I'm interested in the part that creates the UI.

Thank you very much

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Tue Jun 18, 2019 9:29 pm
by johan.soteldo
Me encanta esta parte de la navidad, puedo dejar volar mi imaginación con la intención de que mi Árbol de navidad sean el mejor de todo el vecindario, además me puedo reunir con toda mi familia en esta época del año.

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Tue Jul 09, 2019 6:01 pm
by lucasdebeltran
Cristóbal,

Por favor, ¿nos puedes informar como llevas Fastreport? Gracias.

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Thu Jul 11, 2019 5:07 am
by anserkk
lucasdebeltran wrote:Cristóbal,

Por favor, ¿nos puedes informar como llevas Fastreport? Gracias.

I am also interested to know more about using Fastreport.net from Fivewin

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Thu Jul 11, 2019 12:12 pm
by cnavarro
anserkk wrote:
lucasdebeltran wrote:Cristóbal,

Por favor, ¿nos puedes informar como llevas Fastreport? Gracias.

I am also interested to know more about using Fastreport.net from Fivewin


Dear Lucas and Anser
I had not seen much interest in this topic and I devoted my time to other topics
I am developing a class that facilitates access to FastReport.Net
At the moment the class contains:
Code: Select all  Expand view

CLASS TFwFastReport FROM TDotNet

   DATA cFileReport      INIT ""      PROTECTED
   DATA cFilePrepared    INIT ""      PROTECTED
   DATA cFileExport      INIT ""      PROTECTED
   DATA lSeparatepages   INIT .T.     PROTECTED
   DATA nQuality         INIT 0       PROTECTED
   DATA nResolution      INIT 0       PROTECTED
   DATA cFolderIn        INIT ""
   DATA cFolderOut       INIT ""
   DATA cFolderExp       INIT ""
   DATA lPreview         INIT .T.
   DATA bPreviewWnd
   DATA bPreviewExp
   DATA cExeDesigner
   DATA cExeViewer
   DATA oWnd

   METHOD New( cDll, cSpace, cVerFrame, cLib ) CONSTRUCTOR
   METHOD Designer()
   METHOD FwExecute( cMethod, cParam )         INLINE ::Execute( , , cMethod, cParam )
   METHOD FwPrepare()                          INLINE ::FwExecute( "FwhPrepare", "" )
   METHOD FwReport()                           INLINE ::FwExecute( "FwhReport", "" )
   METHOD FwSavePrepare()                      INLINE ::FwExecute( "FwhSavePrepare", "" )
   METHOD FwExport( cFile, cType )
   METHOD FwExportHtml( cFile )
   METHOD FwExportPng( cFile )
   METHOD FwExportJpg( cFile )
   METHOD FwExportBmp( cFile )
   METHOD FwExportTif( cFile )
   METHOD FwExportGif( cFile )
   METHOD FwExportEmf( cFile )

   METHOD PreviewEmf( cFile )

   METHOD SetArraytoData( aDatos )
   METHOD SetDataArray( aDatos )
   METHOD SetDesigner( cExe )
   METHOD SetFileExport( cFile, cExt )
   METHOD SetFileReport( cFile, lExec )
   METHOD SetFilePrepared( cFile, lExec )

   METHOD SetViewer( cExe )
   METHOD Show( cFile )
   METHOD Viewer()

ENDCLASS
 


Also, the main problem I have is that I have never used FastReport and I do not know exactly the scope it has to have and the priorities to which I must give importance in its development.

These are my tests that work correctly

Code: Select all  Expand view

#include "FiveWin.ch"

Static cDll       := "d:\fwh\fwhteam\samples\FastFwh.dll"
Static cWorkSpace := "FastFwhR.Fwh"

Static oWnd
Static aTasks    := {}

//----------------------------------------------------------------------------//

Function Main()

   DEFINE WINDOW oWnd TITLE "FastReport NET from Fivewin: " + FWVERSION + ;
      " - ® Cristobal Navarro ( 2019 ) " + " - Right Click to Active"

   ACTIVATE WINDOW oWnd MAXIMIZED ;
      ON RIGHT CLICK FastReportNet()


Return nil

//----------------------------------------------------------------------------//


Function FastReportNet()

   local cPathReports := "D:\FastReportNet\VSC2017\Demos\Reports"
   //local cFileFrx  := "D:\Fwh\FwhTeam\samples\fastreport\frh\reps\4.frx"
   //local cFilePrx  := "D:\Fwh\FwhTeam\samples\fastreport\frh\reps\4.fpx"
   local cFileFrx  := "D:\FastReportNet\VSC2017\Demos\Reports\box.frx"
   local cFileFpx  := "D:\FastReportNet\VSC2017\Demos\Reports\box2.fpx"
   local cFileFpx1 := "D:\FastReportNet\VSC2017\Demos\Reports\box.fpx"
   local cFileExp  := "D:\FastReportNet\VSC2017\Demos\Reports\box2.html"
   local cFilePng  := "D:\FastReportNet\VSC2017\Demos\Reports\box2.png"
   local cFileBmp  := "D:\FastReportNet\VSC2017\Demos\Reports\box2.bmp"
   local cFileJpg  := "D:\FastReportNet\VSC2017\Demos\Reports\box2.jpg"
   local cFileTif  := "D:\FastReportNet\VSC2017\Demos\Reports\box2.tif"
   local cFileGif  := "D:\FastReportNet\VSC2017\Demos\Reports\box2.gif"
   local cFileHtml := "D:\FastReportNet\VSC2017\Demos\Reports\box2.html"
   local cFileEmf  := "D:\FastReportNet\VSC2017\Demos\Reports\box3.emf"
   local aDatos    := { "a", "b", "c", "d" }
   local oNet
   local oErr

   TRY
      oNet := TFwFastReport():New( cDll, cWorkSpace )
      WITH OBJECT oNet
         //
         //:SetDllName( cDll )
         //:SetNameSpace( cWorkSpace )
         //

         :oWnd    := oWnd

         //
         :SetDesigner( "D:\FastReportNet\FastReport.Community\Designer.exe" ) // .frx
         :SetViewer( "D:\FastReportNet\FastReport.Community\Viewer.exe" )     // .fpx
         //

         cFileFrx := "D:\FastReportNet\VSC2015_1\FastFwh\FastFwh\in\report.frx"

         :SetFileReport( cFileFrx )
         //
         if Empty( :GetNetError() )
            :SetFilePrepared() // cFileFpx )
         endif
         if Empty( :GetNetError() )
            :FwReport()
         endif
         if Empty( :GetNetError() )
            :SetDataArray( aDatos )
         endif
         if Empty( :GetNetError() )
            :FwPrepare()
         endif
         if Empty( :GetNetError() )
            :FwSavePrepare()
         endif
         //
         if Empty( :GetNetError() )

            //:Viewer()
            //:Designer()

            //:FwExport( cFilePng )
            //:FwExportPng()

            //:FwExport( cFileBmp )
            //:FwExportBmp()

            //:FwExport( cFileJpg )
            //:FwExportJpg()

            //:FwExport( cFileTif )
            //:FwExportTif()

            //:FwExport( cFileGif )
            //:FwExportGif()

            //:FwExport( cFileHtml )
            //? :SetFileExport( , "html" )
            //:FwExport( , "html" )
           
            //:FwExportHtml()

            ? :SetFileExport( , "emf" )
            :FwExport( , "emf" )

            //:FwExportEmf()

         endif
         if Empty( :GetNetError() )
            //? :GetResult()
            //? :GetReturnValue()
            //? :GetValueReturn()
            if :lPreview
               :Show()
            endif
         endif

         if !Empty( :GetNetError() )
            ? :GetNetError()
         endif

         :End()
      END
   CATCH oErr
   
   END TRY

Return nil

//----------------------------------------------------------------------------//
// Export FastReport to standard preview of FW
//----------------------------------------------------------------------------//

function PreviewEmf( cFile )

   LOCAL oPrn, oFont

   PRINTER oPrn PREVIEW

      DEFINE FONT oFont NAME "Times New Roman" SIZE 0,-14 OF oPrn

      PAGE
      oPrn:ImportWMF( cFile )

      oPrn:CmSay(  0.4,  1, cFile )
      oPrn:CmSay(  1.0,  1, "Fichero Exportado de FastReport .NET" )
      oPrn:CmSay(  1.6,  1, "Cristobal Navarro" )
     
      ENDPAGE

   ENDPRINT

   oFont:End()

   //MsgInfo( "Work done!", "Look" )

return nil

//----------------------------------------------------------------------------//
 

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Wed Jul 17, 2019 4:31 am
by anserkk
Dear Mr.Cristobal,

Thank you for sharing the code.

cnavarro wrote:Also, the main problem I have is that I have never used FastReport and I do not know exactly the scope it has to have and the priorities to which I must give importance in its development.


The FastReport available for Harbour ( I am NOT talking about FastReport.NET ) is a one single DLL file without any external dependency which is to be distributed along with our application EXE file ie something similar to the way FreeImage.DLL works. The viewer, the designer everything is inbuilt into that FastReport DLL file.

To me, the following are the main attractions in FastReport

1. No other files required, just one single DLL along with our FiveWin application EXE file.
2. Another advantage of FastReport is that it can generate PDF files with a very small file size.
3. The preview of the report is good.

Inspecting your code, I see few references to other external EXE's for the viewer, designer etc. For eg
Code: Select all  Expand view
Static cDll       := "d:\fwh\fwhteam\samples\FastFwh.dll"
...
:SetDesigner( "D:\FastReportNet\FastReport.Community\Designer.exe" ) // .frx
:SetViewer( "D:\FastReportNet\FastReport.Community\Viewer.exe" )     // .fpx
...
 


I was of the assumption that FastReport.NET also works in the same way as FastReport for Harbour ie with one single DLL file. Of course, the .NET Framework dependency will be there but then it is not a problem because nowadays Windows OS comes with preloaded .NET Framework. Dependency on multiple EXE's and DLL's for the report engine to function is always a maintenance headache.

Fivewin application is one single EXE and that's the charm. Hope I explained it correctly

Regards
Anser

Re: Decoremos el arbol de navidad de FWH - Decorate the FWH tree

PostPosted: Wed Jul 17, 2019 10:12 am
by cnavarro
Dear Anser

The references to these external programs are one more feature that I have added to verify, at the moment, that the reports are valid, but are not necessary for the operation of FastReport.net.
Its operation is identical to the one you mention. A single DLL that is called from Fw.