Search Results for

    Show / Hide Table of Contents

    Server side

    You can find all source files of this example in the \FastReport\Demos\ClientServer\Server folder.

    Components used in this demo: server component TfrxReportServer (Serv), database connection component TADOConnection and TfrxADOComponents, along with other add-on FastReport components.

    For the convenience of clients, data about configuration of the server is stored in a file, which is editable by the built-in editor.

    File server.conf:

    [Server]
    ; TCP/IP port for HTTP server
    Port=80
    ; report session timeout in seconds
    SessionTimeOut=600
    ; client connection timeout in seconds
    SocketTimeOut=600
    ; index page filename
    IndexFileName=index.html
    ; path to folder with logs
    LogPath=.\logs\
    ; enable of log writing
    WriteLogs=1
    ; maximum log files in history
    MaxLogFles=5
    ; maximum log file size
    MaxLogSize=1024
    ; path to folder with the reports (*.fr3)
    ReportPath=.\reports\
    ; public document folder for documents and results
    RootPath=.\htdocs\
    ; disable of the caching document by the web browser
    NoCacheHeader=1
    ; GZIP compression enable
    Compression=1
    ; MD5 message integrity check
    MIC=1
    ; user login
    Login=
    ; user password
    Password=
    
    [ReportsCache]
    ; enable caching of the reports with same params
    Enabled=1
    ; path to chache folder
    CachePath=.\cache\
    ; dafault delay for cache of the report results in seconds
    DefaultLatency=300
    
    [ReportsLatency]
    ; cache delay for the 1.fr3 report in seconds
    1.fr3=10
    ; cache delay for the 1.fr3 report in seconds
    2.fr3=20
    ; add below the any reports for the custom cache delay setup 
    

    Fields of the configuration file correspond to field names of the TfrxReportServer.Configuration property.

    The "allow.conf" and "deny.conf" files contain lines with allowed and restricted addresses respectively.

    Database file is stored in the "\database" folder.

    In the main module, the constants with names of configuration files are defined:

    const
      CONFIG_FILE = 'server.conf';
      ALLOW_FILE = 'allow.conf';
      DENY_FILE = 'deny.conf';
    

    After program starts, the database is connected via the MicrosoftJet OLE DB interface.

    In variables ConfFile, AllowFile, DenyFile we a store path to configuration files:

    AppPath := ExtractFilePath(Application.ExeName);
    ConfFile := AppPath + CONFIG_FILE;
    AllowFile := AppPath + ALLOW_FILE;
    DenyFile := AppPath + DENY_FILE;
    

    Load config files to the Serv component:

    Serv.Configuration.LoadFromFile(ConfFile);
    Serv.AllowIP.LoadFromFile(AllowFile);
    Serv.DenyIP.LoadFromFile(DenyFile);
    

    Execute the server:

    Serv.Open;
    

    After all work is done, you are ready to use a powerful report server. Launch the any web browser and type http://127.0.0.1 in address line

    {width="296" height="227"}

    You can design reports with the help of the internal FastReport designer:

    OpenDialog1.InitialDir := Serv.Configuration.ReportPath;
    if OpenDialog1.Execute then
    begin
      frReport1 := TfrxReport.Create(nil);
      frReport1.LoadFromFile(OpenDialog1.FileName);
      frReport1.DesignReport;
      frReport1.Free;
    end;
    
    Back to top © 1998-2022 Copyright Fast Reports Inc.