Google Groups unterstützt keine neuen Usenet-Beiträge oder ‑Abos mehr. Bisherige Inhalte sind weiterhin sichtbar.

Looking for a good Report writer

1 Aufruf
Direkt zur ersten ungelesenen Nachricht

Jim Covington

ungelesen,
03.08.1999, 03:00:0003.08.99
an
Dear Anyone:

I am looking for a good Report writer that I can build financial Statements
from an Access DataBase. Does anyone know of a good one?


Jim

Tim Sullivan

ungelesen,
03.08.1999, 03:00:0003.08.99
an
ReportBuilder is great. www.digital-metaphors.com

--
Tim Sullivan
Unlimited Intelligence Limited
www.uil.net

Jim Covington <jwco...@telapex.com> wrote in message
news:7o7883$mm...@forums.borland.com...

Jim Gunkel

ungelesen,
03.08.1999, 03:00:0003.08.99
an
You should take a look at ReportPrinter Pro, www.nevrona.com . Its visual
designer, called Rave, has several unique features that make financial
content reports very easy to create. In the 3.0F release a feature was
added that allows the printing of totals before the details without
requiring double passes through the data, even across multiple pages.
Another common financial requirement is printing page number sub-ranges for
invoice batches. For example, with ReportPrinter Pro you could have a
single report print out batches of multi-page invoices with the individual
invoice page number range on each page (1 of 3, 2 of 3, 3 of 3, 1 of 2, 2 of
2, 1 of 4,...). This also does not require a double pass through the data
like other reporting tools do.

ReportPrinter Pro works very well with Access or any other database that you
can get to from within Delphi and can even do master-detail type reports on
data stored in memory arrays, string grids, binary files using its
LocalFilter features. Full end user designer support and many other
features make it hard to beat so stop by our web site and take a look at out
fully functional trial version. Let me know if you have any questions and
I'll be glad to help. Thanks,

Jim Gunkel
Nevrona Designs
www.nevrona.com

Jim Gunkel

ungelesen,
04.08.1999, 03:00:0004.08.99
an

Frederick C. Wilt

ungelesen,
05.08.1999, 03:00:0005.08.99
an

Jim Gunkel <ji...@nevrona.com> wrote in message
news:7ob8g6$qb...@forums.borland.com...

> You should take a look at ReportPrinter Pro, www.nevrona.com . Its visual

Since I haven't had any luck over at the Nevrona forum perhaps I can get
some help here.

We are in the process of implementing end-user reporting in our app (in the
past we only offered canned reports via Crystal).

Two things currently are preventing us from using RP (which we have).

1. If we have a column name like "User First Name" this ends up in the RAVE
designer displaying as "User_First_Name". You seem to be enforcing that
naming convention for Delphi objects. We need to have the column names
display without any such changes.

2. I cannot figure out how to create and destroy data connections during
runtime. While I can create them and they work once the report has been
saved I cannot delete them. I don't really need to delete them, I need to
update them but I started with the delete/re-create approach.

I would very much like to use RP but I need some help.

Regards, Frederick C. Wilt

Jim Gunkel

ungelesen,
07.08.1999, 03:00:0007.08.99
an
Frederick C. Wilt <fcw...@mindspring.com> wrote in message
news:7oc8ol$ra...@forums.borland.com...

> We are in the process of implementing end-user reporting in our app (in
the
> past we only offered canned reports via Crystal).
>
> Two things currently are preventing us from using RP (which we have).
>
> 1. If we have a column name like "User First Name" this ends up in the
RAVE
> designer displaying as "User_First_Name". You seem to be enforcing that
> naming convention for Delphi objects. We need to have the column names
> display without any such changes.

The Name of the field components must conform to normal Delphi rules,
however, all fields have a FullName property that will allow you to define a
more natural name for the column (with spaces and other non-alphanumeric
characters). The FullName property is what is used for the Ctrl-Drag
operation from the Project Tree to the page designer to create column titles
and is also used in our wizards for easier reference.

> 2. I cannot figure out how to create and destroy data connections during
> runtime. While I can create them and they work once the report has been
> saved I cannot delete them. I don't really need to delete them, I need to
> update them but I started with the delete/re-create approach.

I assume you are trying to dynamically create/destroy DataViews at runtime.
Is this right? If so, the method to delete a dataview is to call
RaveProject1.ProjMan.DeleteItem(DataView); You must also call
NotifyChanging(DataView,nil); (defined in RVClass.pas) to let all of the
other Rave components know that the DataView object is changing to nil (i.e.
being deleted). Within Rave at design-time this is normally handled
automatically, but it is not called during runtime deletions. I noticed
your message on the RANT forum and this is the piece that was causing you
problems. I'll make sure to document it in the RANT.TXT file.

For creating a dataview we created some useful functions to make it fairly
easy. So for example, if you want to create a dataview for your data
connection component MyCXN you would call the following code:

MyDataView := CreateDataView(CreateDataCon(MyCXN));

To do a replacement of MyDataView with the dataview that you wanted to
delete, you could also use the NotifyChanging event. Here's an example of
the full code that should work to replace one dataview with another (and
keep the links for existing components intact):

OldDataView := RaveProject1.ProjMan.FindRaveComponent('MyDV',nil);
RaveProject1.ProjMan.DeleteItem(OldDataView);
NewDataView := CreateDataView(CreateDataCon(MyCXN));
NotifyChanging(OldDataView,NewDataView);

Note that at design time this is a lot easier, simply right click on the
dataview in the Data View Dictionary and select Refresh and it will update
all of the field definitions. Thanks,

Jim Gunkel
Nevrona Designs

Jim Gunkel

ungelesen,
07.08.1999, 03:00:0007.08.99
an

your message on the RANT forum (sorry this slipped by) and this is the


piece that was causing you problems. I'll make sure to document it in
the RANT.TXT file.

For creating a dataview we created some useful functions to make it fairly
easy. So for example, if you want to create a dataview for your data
connection component MyCXN you would call the following code:

MyDataView := CreateDataView(CreateDataCon(MyCXN));

To do a replacement of MyDataView with the dataview that you wanted to
delete, you could also use the NotifyChanging event. Here's an example of
the full code that should work to replace one dataview with another (and
keep the links for existing components intact):

OldDataView := RaveProject1.ProjMan.FindRaveComponent('MyDV',nil);
RaveProject1.ProjMan.DeleteItem(OldDataView);
NewDataView := CreateDataView(CreateDataCon(MyCXN));
NotifyChanging(OldDataView,NewDataView);

Note that at design time this is a lot easier, simply right click on the
dataview in the Data View Dictionary and select Refresh and it will update
all of the field definitions. Thanks,

Jim Gunkel
Nevrona Designs
www.nevrona.com

Frederick C. Wilt

ungelesen,
09.08.1999, 03:00:0009.08.99
an

Jim Gunkel <ji...@nevrona.com> wrote in message
news:7ohk7e$2k...@forums.borland.com...

> The Name of the field components must conform to normal Delphi rules,
> however, all fields have a FullName property that will allow you to define
a
> more natural name for the column (with spaces and other non-alphanumeric
> characters). The FullName property is what is used for the Ctrl-Drag
> operation from the Project Tree to the page designer to create column
titles
> and is also used in our wizards for easier reference.

Thanks for the help on creating dataviews at runtime - now I need to go try
it.

As regards the component Name I understand that the component needs a Name
the Delphi can use and this name therefore needs to conform the Delphi rules
for naming. I would argue however that the end user never needs to see the
Delphi name (an artifact of the implementation and unrelated to the needs of
the end user), but instead should only see a 'end user friendly' name. The
FullName property would fill this criteria if it (and only it) was used
everywhere in the RAVE designer but I don't believe that is the case.

So back to work and thanks again.

Regards, Frederick C. Wilt

0 neue Nachrichten