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

Problem with two pipelines

edited August 2012 in General
Hi guys,
I'm using two pipelines in my report.
Pipeline1 contains all daily bookings of the employees for the first day
of an month to the last of an month.
Pipeline2 contains all monthly values (extra work, flextime, etc.) For
one employee one record.

I'm using a group (Pipeline1) which takes a break after each Personal
ID. This works good.

My problem is, that I don't know how to say that the Pipeline2 should
change to the next Personal ID if the group takes a break.

Is there maybe any property like DataSet.Locate() ?? or how could I
solve this problem.

I'm using Delphi 2009 with RB 14.05

Comments

  • edited August 2012
    Hi David,

    My suggestion would be to create a master dataset (containing only
    unique Personal ID's). Then link the master to the two datasets you
    currently have on the PersonalID field. These datasets would need to be
    ordered on the linking field.

    The main report will be connected to the master pipeline, and two
    subreports will be connected to pipeline1 and pipeline2. This way each
    time the master record changes, each subreport will print the data for
    that PersonalID.

    See the following article for more information, specifically the section
    on creating a master with two details.

    http://www.digital-metaphors.com/rbWiki/Data_Access/Fundamentals/Data_Traversal

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited August 2012
    Hi Nico,
    I've found another solution:

    I used a variable with this calculation:
    if dbPipeline1['ID'] <> dbPipeline2['ID_PERSONAL'] then
    Region1.Visible := False
    else
    Region1.Visible := True;

    and then I set the properties bind and stretch of the Region1 to True.

    Have a nice day
    David
This discussion has been closed.