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

Separate Crosstab designer from end-user designer?

edited March 2003 in End User
So far we've felt that the end-user designer was a bit too complicated for
our end users, so we've haven't made it available in our app.

But the Crosstab designer is less complex, and very powerful all by itself.
So I'm investigating whether we can use that.

I've made a dialog that's similar to the one in ppCTDlg. I can display it
with field names available for use in the crosstab. But I'm not sure I'm on
the right track. For example, the accepted way to control field aliases is
to put them in a data dictionary, which is connected to the end-user
designer, which invokes the crosstab designer. I'm having trouble seeing
how to have a data dictionary for the crosstab designer in my configuration.
And we allow users to name fields, so showing their alias is essential.

More than a solution to this one problem, I'm looking for opinions as to
whether this is a sound approach, or whether it's a mistake because the
Crosstab designer was never meant to be used independently.

Thanks.

Mike Carroll
Sigma Data Systems, Inc.

Comments

  • edited March 2003
    You don't need a new dialog class, just use ours! :)

    For this example, the report on the form has a crosstab in the detail band,
    which is empty, but connected to a data pipeline. Make sure your crosstab
    has its pipeline assigned, or assign it one at runtime before showing the
    designer and it should work automatically:

    uses
    ppCTDlg;

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    DesignCrossTab(ppCrossTab1);

    ppReport1.Print;
    end;

    procedure TForm1.DesignCrossTab(aCrossTab: TppCrossTab);
    var
    lDesigner: TppCrossTabDesignerForm;
    begin

    lDesigner := TppCrossTabDesignerForm.Create(nil);

    try
    lDesigner.CrossTab := aCrossTab;

    lDesigner.ShowModal;

    finally
    lDesigner.Free;
    end;

    end;


    --
    Cheers,

    Jim Bennett
    Digital Metaphors


  • edited April 2003
    Hi Jim,

    I think I can state one of my questions more clearly:

    Is it possible to use a TppDataDictionary without using a TppDesigner?

    It looks like the answer is No, because the designer's
    DataSettings/DataDictionary property is the only way to connect up the
    TppDataDictionary to anything. Is that right?

    Thanks much.

    Mike Carroll
    Sigma Data Systems, Inc.
  • edited April 2003
    Yes. What is your goal? The data dictionary allows you to limit the tables
    and fields that the user can use when designing a query dataview. If you
    have no designer, then you don't need the data dictionary to limit the
    tables and fields for the uesr, because the dataviews (with tables and
    fields defined) are already created by you. The reports simply can be
    printed by the user.


    Cheers,

    Jim Bennett
    Digital Metaphors


This discussion has been closed.