Fast Reports -Sergey Rests

User avatar
Marco Turco
Posts: 858
Joined: Fri Oct 07, 2005 12:00 pm
Location: London
Contact:

Re: Fast Reports -Sergey Rests

Post by Marco Turco »

This is a really bad and unaspected news.
We also using the Spirin's fastreport library
and it is really an excellent product that permits to have the FastReport power embedded in FWH with just a single self-contained dll.

I hope Antonio could take-over the Spirin sources.
Best Regards,

Marco Turco
SOFTWARE XP LLP
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Fast Reports -Sergey Rests

Post by Antonio Linares »

Is there a way that we could know the most active FastReport users groups ? It seems as the product is developed with Delphi.

I think that the best solution would be to turn it open source with a PayPal donation for her.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Fast Reports -Sergey Rests

Post by Antonio Linares »

Is Spirin's FastReport just a DLL wrapper to FastReport ?

Who is FastReport developer ?

Is there a demo version for Spirin's DLL ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
reinaldocrespo
Posts: 918
Joined: Thu Nov 17, 2005 5:49 pm
Location: Fort Lauderdale, FL

Re: Fast Reports -Sergey Rests

Post by reinaldocrespo »

Antonio;

I've just sent you an email with information and links. Hope that helps.

Reinaldo.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Fast Reports -Sergey Rests

Post by Antonio Linares »

It seems to me as Sergey adapted FastReport to be used with Harbour, but he was not FastReports developer.

I may be wrong, so I appreciate your comments
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
reinaldocrespo
Posts: 918
Joined: Thu Nov 17, 2005 5:49 pm
Location: Fort Lauderdale, FL

Re: Fast Reports -Sergey Rests

Post by reinaldocrespo »

Antonio;

You are absolutely right. All he did was obtain permission to distribute FastReports to the xbase community by developing the wrapper functions needed to use it. His business was the wrappers not fastreports itself.

Take a look at Fast Reports Inc. website:

http://www.fast-report.com/



Reinaldo.
User avatar
reinaldocrespo
Posts: 918
Joined: Thu Nov 17, 2005 5:49 pm
Location: Fort Lauderdale, FL

Re: Fast Reports -Sergey Rests

Post by reinaldocrespo »

FastReports has distributors all over the place:
http://www.fast-report.com/en/news/9512.html

Reinaldo.
User avatar
reinaldocrespo
Posts: 918
Joined: Thu Nov 17, 2005 5:49 pm
Location: Fort Lauderdale, FL

Re: Fast Reports -Sergey Rests

Post by reinaldocrespo »

Also check Philpenko's demo on using FastReports component from Delphi XE2. FR is now a standard component on Delphi:

http://www.youtube.com/watch?v=WZ3YdKpX ... e=youtu.be

Reinaldo.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Fast Reports -Sergey Rests

Post by Antonio Linares »

Reinaldo,

Then I see no problem at all as continuity of FR is asured :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
reinaldocrespo
Posts: 918
Joined: Thu Nov 17, 2005 5:49 pm
Location: Fort Lauderdale, FL

Re: Fast Reports -Sergey Rests

Post by reinaldocrespo »

Right, but not of the wrapper funcs or the FrSystH.dll. Every time a new FR version is released, Sergey would prepare a new .dll, .prg and .ch for us. Many times if you need some functionality that FR offers but was not part of the .prg/.dll (frh), he would rebuild them to include the needed functionality.

For example: not long ago, workareas set from code in frh did not understand extended field types such as timestamp and money fields. Sergey had to fix the .dll so that workareas from .adt or visual foxpro .dbf tables with extended fieldtypes would be received correctly by fast report. When FR included a new export format, Sergey had to rebuild the .dll and write the new wrapper (and class method) to make it available to frh.

I'm not sure all Sergey did, but for sure frh depended on his support. Frh is not sold nor maintained by fastreports.

Check the google group for frh:

https://groups.google.com/forum/?fromgr ... _x_harbour
Reinaldo.
User avatar
lucasdebeltran
Posts: 1303
Joined: Tue Jul 21, 2009 8:12 am
Contact:

Re: Fast Reports -Sergey Rests

Post by lucasdebeltran »

Hello Reinaldo,

Did you succeed in talking with Elena?.

The easiest way will be to obtain the sources. The key is to compile in delphi the .dll, as all the warpers to Harbour are already done.

Thank your for initiative.
Muchas gracias. Many thanks.

Un saludo, Best regards,

Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]

Implementando MSVC 2010, FWH64 y ADO.

Abandonando uso xHarbour y SQLRDD.
User avatar
reinaldocrespo
Posts: 918
Joined: Thu Nov 17, 2005 5:49 pm
Location: Fort Lauderdale, FL

Re: Fast Reports -Sergey Rests

Post by reinaldocrespo »

@Lucas; I continue to try via different methods. I hope to hear from her soon.

@Antonio; "FastReport for [x]Harbour" (FRH) is developed by Sergey Spirin with authority of the OEM-agreement with Fast Report Inc. For more information about Sergey Spirin look page about him.

FRH is implemented as one Win32 dynamic link library (all in one dll) plus [x]Harbour-class of interaction with this library, which is supplied in source code and can be added to any [x]Harbour-application. Binding to HB API functions is performed at moment of object creating of this class, ie the model of "late binding" is implemented. Thus, the report generator has full access to the data of [x]Harbour-applications it can call all its procedures and functions, etc. FRH do not open any tables, all data it recieves directly, by calling HB API functions.

FRH does not require any installation. Redistribution FRH to end users is simply including FRH-dll as a part to your applications. For the full information on these products, please, download the documentation at section "Downloads Trial and Docs".

http://www.spirins.com/
Luisão PITBULL
Posts: 22
Joined: Fri May 04, 2012 3:26 pm

Re: Fast Reports -Sergey Rests

Post by Luisão PITBULL »

colleagues does anyone know how to use the command lines below with array

Code: Select all

 oFrPrn:SetMasterDetail("relven5a", "relven5c", {||relven5a->pedido})      
 oFrPrn:SetResyncPair( "relven5a", "relven5c" )
 


thank you
Luizão PITBULL
FWH1104,XHARBOUR1.2,MYSQL\SQLLIB
User avatar
reinaldocrespo
Posts: 918
Joined: Thu Nov 17, 2005 5:49 pm
Location: Fort Lauderdale, FL

Re: Fast Reports -Sergey Rests

Post by reinaldocrespo »

Lets us say that you have an array aData where each element is an array of { CustomerNo, CustomerName, City } ;

Code: Select all

   LOCAL hData    := { "customerno" => 1,;
                         "customername" =>2,;
                         "city" =>3 }

      :SetUserDataSet( "Customers", "CustomerNo;CustomerName;City", ;
                     { || nAt := 1  },;
                     { || nAt++ },;
                     { || nAt-- },;
                     { || nAt > LEN( aData ) },;
                     { |cFld| nCol := hGet( hData, LOWER( cFld ) ),  aData[ nAt, nCol ] } )

 
That will do it.

If you have other files with a relationship then you would need to resync() just the affected workarea.

For example, lets say you have an invoices table that relates to the customer number on the array, then you need to manually move the pointer on the invoices workarea and resync it every time you change row on the array, like this:

Code: Select all

      bResync := { |n| "Invoices"->( dbSeek( aData[ n, 1 ] ) ), oFrh:Resync( "invoices" ) }
      :SetWorkArea( "Invoices", Select( "invoices" ) )
      :SetUserDataSet( "Customers", "CustomerNo;CustomerName;City", ;
                     { || nAt := 1, EVAL( bResync, nAt )  },;
                     { || nAt++, EVAL( bResync, nAt ) },;
                     { || nAt--, EVAL( bResync, nAt ) },;
                     { || nAt > LEN( aData ) },;
                     { |cFld| nCol := iif( hHasKey( hData, LOWER( cFld ) ), hGet( hData, LOWER( cFld ) ), 1 ),;
                                  aData[ nAt, nCol ] } )

 

Reinaldo.
ShumingWang
Posts: 454
Joined: Sun Oct 30, 2005 6:37 am
Location: Guangzhou(Canton),China

Re: Fast Reports -Sergey Rests

Post by ShumingWang »

Post Reply