The components of the FReport family were initially created for publishing financial reports as web pages (thus the name - FReport) and later developed into a fully functional set of components for developing ISAPI applications. The history of FReport components goes back to the times of Borland C++ Builder version 1 and has by now been developed to be compatible with the latest versions of C++ Builder and Delphi.

The components of the FReport family fall into two groups:

the components necessary for communicating with ISAPI server

the components necessary for visual designing of HTML documents

The components of the first group encapsulate the functionality necessary for an ISAPI extension, communication with the server, management of the generation of request results, receipt of request parameters from the server, and sending the generated results to the server, handling of the cookies and server variables, etc., also administration of sessions, identification of users, writing of log files, and reading of configuration files. Although a developer using FReport components has generally no need to use the ISAPI functions directly, the whole ISAPI interface is nevertheless available.

The components of the second group allow the visual designing of HTML documents using C++ Builder or Delphi IDE making all their powerful features, such as event handlers, inheritance, linking to databases using relevant components, available to the developer for web development. Here belong components that represent typical elements of HTML, such as EDIT, BUTTON, etc., but also special controller components like FReport, which control the whole process of generating HTML, TFRStyle that allows to add css styles to HTML documents, TFRGroupManager that lets us easily divide large request reports into smaller groups, TFRDataSource enabling to generate HTML documents that are linked to databases, and very easily realise typical data processing functions, such as adding, changing, deleting records, or more complex data processing functions, TFRDynamicImage that enables to draw in Canvas objects and automatically sends the drawn image in jpeg format to the client, and TFRImage that can read an image in most widespread graphics file formats, convert it into the jpeg format, and also link it to an IMAGEMAP element designed using IDE. All components enable to use event handlers to specify single characteristics of a HTML document during its generation, as it is characteristic of C++ Builder and Delphi.

As a result, using the components of the FReport family it may, with very little time, be possible to develop complex, attractive and extremely functional web solutions that can be used with all HTTP servers supporting ISAPI standard, such as Apache, Microsoft IIS, and other servers operating on the Windows platform. In many cases it is also possible to create complicated web pages requiring grouping techniques, drill-down mechanisms for reports, styles, etc. writing only single lines in the programme code leaving everything else to FReport components.

Why?

The FReport components have been developed keeping in mind the software developers who use C++ Builder or Delphi development tools and wish, with the help of a familiar development tool, to create a web-based user interface to existing applications or create completely new web-based applications. Using FReport components is easy - many complex questions have been solved through built-in functionality of the components, and can be utilized by a few mouse-clicks and a couple of code lines. Thus, the developer does not have to reinvent the wheel all over again and can concentrate on the actual development. Upon using the FReport components, it is not essential to have complete knowledge of HTTP, HTML, CSS, ISAPI, and JavaScript technologies. It is useful to have some knowledge in these areas, but a significant part of complex details has completely been covered by the components. The components encapsulate such topics as the identification of users and sessions, adding, changing and deleting of data in the database, grouping of request results, dril-down reports, styles and many more, also the issues that are characteristic of creating multi-thread server applications.

As the components are structured as typical VCL components and completed with help-files and detailed examples with specific comments on the use of main functions, the learning time needed prior to their use is minimum - a few hours and an experienced C++ Builder or Delphi programmer is able to create the most perfect web applications with the help of these components spending very little time on the actual development work. As all of the development is done in integrated Delphi or C++ Builder environment using visual designers, there is no need for using other HTML development tools. However, the possibility has been maintained to use template files created with other HTML development tools together with FReport components. Proceeding from the above, it can be assumed that with the help of FReport components it is possible to turn C++ Buider or Delphi into a very effective development tool, whereas the time and money spent prior to the launching of a marketable application is kept minimal.

Client-friendly licensing policy enables to get to know the components and study their suitability for particular task before deciding on the purchase. After the purchase, one does not need to change anything in the already compiled project, or install any additional components - it is sufficient just to insert the license key and re-compile the projects.