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

How do you determine the current record index when using the standard report designer?

edited November 2006 in General
Hello Fellow Report Builder Pro People,

I'm currently using version "9" of Report Builder Pro.

Can someone please give me some assistance as to how you can determine
the current record index when invoking the standard report designer? I
know how to do it in code when using a JITPipeline. Can it be done when
the Data Pipeline in the standard report designer appears to default to a
DBPipeline?

Thanks,

George



--- posted by geoForum on http://delphi.newswhat.com

Comments

  • edited November 2006
    Hi George,

    Sorry, but I'm a bit unclear what you are trying to accomplish. The
    JITPipeline and DBPipeline are both descendents of the same class so you
    should be able to determine the current record for each the same way in
    code. When you load the end-user designer however, the cursor will always
    be at the first record. It's not until you preview or print the report that
    the dataset is traversed.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited December 2006
    Hello Nico,

    Sorry for any confusion.

    When I load the end-user designer, the data tab seems to default to a
    DBPipeline. I couldn't find a "RecordIndex" property for the DBPipeline
    which I could use in event processing. I know a "RecordIndex" property
    does exist for a JITPipeline (...I've used it in creating reports in
    code...).

    In the end-user designer, can another type of "pipeline" (EX.
    JITPipeline) be specified instead of a DBPipeline (...which seems to be
    the default...). If so, can you please tell me how you can do it?

    Please correct me if I'm wrong, but the end-user designer and wizards
    appear to be geared towards direct database access via SQL queries.

    Thanks Again,

    George Spicka
    Ticketmaster
    George.Spicka@Ticketmaster.com


    always
    that
    when
    to a



    --- posted by geoForum on http://delphi.newswhat.com
  • edited December 2006
    Hi George,

    Yes you are correct. The data workspace (DADE) is designed to work with SQL
    queries accessed directly from a database. The nature of the JITPipeline
    and its required customization prevents it from being used in DADE. What
    type of datasource do you have your data in currently? Would it be possible
    to move it to a relational database such as Access or SQL Server?

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited December 2006
    Hello Nico,

    Thanks for verifying the dataworkspace (DADE) ties to SQL queries.

    The data we deal with is currently maintained in MS SQL Server databases.

    Can you recommend a way to determine the number of records returned by
    the SQL queries in "pre" report processing or prviewing/printing? This
    would allow us to warn clients (...via some type of message...) before
    large amounts of report data would be previewed/printed and/or give them
    an option to cancel the report generation.

    I've previously used the "RecordCount" and "RecordIndex" in the
    JITPipeline to determine the total number of records and current record.
    Are there corresponding properties available when using the DBPipeline?

    Thanks,

    George Spicka
    Ticketmaster
    George.Spicka@Ticketmaster.com


    SQL
    JITPipeline
    What
    possible
    DBPipeline
    you
    determine
    designer? I



    --- posted by geoForum on http://delphi.newswhat.com
  • edited December 2006
    Hi George,

    Since the DBPipeline connects to a SQL dataset, it does not need to know the
    record count ahead of time like the JITPipeline does. It will simply
    traverse the number of records given by the database. You will need to
    access the database directly to determine the number of records returned by
    a Query. This could be done fairly simply using a separate query (Select
    Count(*)) or using the RecordCount property of the Query object.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
This discussion has been closed.