Separate Crosstab designer from end-user designer?
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.
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.
This discussion has been closed.
Comments
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
http://www.digital-metaphors.com
info@digital-metaphors.com
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.
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
http://www.digital-metaphors.com
info@digital-metaphors.com