Home Server
New Blog Posts: Merging Reports - Part 1 and Part 2

Server Error: ... connection string must be specified prior to connectin

edited September 2009 in Server
Hi

Using the command
http://192.168.1.27/CAReports/careport.dll?content=pdf&volume=reportFiles&name=reportfiles\account&frameset=1

I am trying to run an Advantage based report account.rtm through a webtier
ISAPI dll and a simple ReportServer and keep getting the following error...

Server Error: Processing request for report reportFiles\reportfiles\account
EADSDatabaseErro connection string must be specified prior to connectin


The ReportServer has two forms

frmServer which is auto created first
dmVolume which is 2nd on the Auto Create list.

In the dmVolume DataModuleCreate are the connection paths to the Advantage
data and I can see the connection being opened but then the connection is
instantly closed (There is no code in the unit to close the connection).

When the report is run then the above error occurs, presumably because the
connection has been closed and I presume the report process, in itself
cannot open the connection.

Advice greatfully appreciated.

Thanks in Advance

Philip L Jackson

Comments

  • edited September 2009
    Hi

    This behaviour only seems to occur when I connect to the data via a Data
    Dictionary (Alarm Master.add) - which all my production systems do.

    Without the Data Dictionary the the user stays connected and the process
    works except that each time the report is run, a new Advantage connection is
    made, which does not appear to be freed when the report is closed, so
    eventually the server will run out of connections - any advice on this one?

    Regards

    Philip L Jackson


  • edited September 2009

    1. Try running your report server project inside the Delphi IDE so that you
    can trace usign the debugger. Put a stop in the dmVolume.OnCreate and
    another one in the dmVolume.OnDestroy. The reason you see the connection
    opened/closed is that the dmVolume form is created/destroyed at server
    startup. This is done to register the dmVolume with the report catalog and
    then free up the resources. A separate dmVolume instance will be created
    each time a report is requested.

    2. Make sure that dmVolume contains an AdsConnection component that is
    configured with the appriate conenction string. The AdsConnection.Name must
    be the same as the DataSettings.DatabaseName saved for the report
    definition. Then at run-time the reference can be resolved.

    An example of using Advantage is installed to
    Demos\Servers\ExlporerDatabases\Advantange.




    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited September 2009
    Hi

    Sorry, I obviously did not make myself clear.

    The process works (and pdf's are created) when I use Advantage Free Tables,
    except that the Advantage connections remain open and connected to the data.

    The process does not work when I use Advantage Tables which are bound to a
    Data Dictionary. Instead of a pdf I get an error message that a connection
    string must be specified prior to connection.

    I will email a demo of this.

    Regards

    Philip L Jackson




  • edited October 2009
    Hi

    Any progress with the examples I sent?

    I have a customer who is keen to place an order for the Server but will not
    do so until this works. (+ this error would be apparent to all my other
    customers).

    Thanks in advance.

    Regards

    Philip L Jackson
  • edited October 2009
    Never received any example. Please resend. When we receive the example, I
    will email you back to confirm receipt.

    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited October 2009
    Hi

    I have just resent this to support@digital-metaphors.com

    Regards to all.

    Philip L Jackson

  • edited October 2009
    Hi

    I have followed your suggestion to test the report server using the client
    report explorer demo (rdAdvantageReportServer.exe) and an Advantage Data
    Dictionary rather than free tables.

    (a) In the Advantage Connection, if I use the Alias Name Property and set
    this to 'Alarm Master' then the Report Explorer works exactly as
    asdvertised. The number of connections to the data increases but I presume
    that some form of clean up process will free these at some time in the
    future. There is always 1 user connected to the data at all times.

    (b) In the Advantage Connection, if I remove the Alais Name and use the
    Connection Path property, set to 'c:\wamaster\dataadv\alarm master.add' -
    (which is how I run all my other applications) then

    1. The Report Explorer form is displayed
    2. When I select a report I get the Auto Search criteria
    3. When I enter the Auto Search Criteria and select 'search' I get
    "connection string must be specified prior to connectin"

    The process connects once (otherwise I would not even be able to see the
    rbFolders and rbItems + I can see the connection made in the Advantage
    Configuration Utility) however once the connection has been made to the
    explorer, I can see the connection being dropped so the Report Builder
    Service is no longer connected to the data such that when I then run the
    report there is no active connection to the data.

    I can live with using the Alias Name property rather than the Connection
    Path property so I will modify my application in the next few days and see
    how we go.

    Thanks for your assistance.

    Philip L jackson






This discussion has been closed.