| TIP #1 :: Understanding and Taking advantage of "Drag and Group"
TIP #2 :: Changing EXISTING schedules (recurring instances) in your Enterprise environment
TIP #1 :: Understanding and Taking advantage of "Drag and Group"
For every Crystal Report you open
in .rpt Inspector Professional Suite or .rpt
Inspector Enterprise Suite, an in-memory database is
built with an index of all the objects in the
Crystal Report and an index of each object's
properties. We then expose these
valuable properties for the select object(s). Some properties are Read-Only, and some are
Read-Write.
You may already be familiar with
the concept of opening a Crystal Report in .rpt
Inspector, clicking on an object, in the grid of one
of the tabs in the Objects Pane (i.e. Reports tab
grid, Report object) and modifying one of the
properties that are automatically exposed in the
Properties Pane.
And you may already be familiar
with the concept of selecting several objects and
having the Properties Pane show you the properties
they have in common, and modifying them.
But did you know that there's more
you can do with the properties and grids? Did you
know that using the concept of "Drag and Group" you
can make analyzing / finding properties faster and
easier, and also make documenting and modifying
properties faster and easier too.
The concept of "Drag and Group" is
a simple one, yet a very powerful one.
As you should already know, .rpt
Inspector Professional Suite and .rpt Inspector
Enterprise Suite are made up of four main window panes:
"Reports Tree", "Properties", "Objects", and "Viewer". The
Objects pane contains multiple tabs, which are
organized by object type to ease in finding and
working with a particular type of object. Each of
those tabs contains a grid which has a pre-defined
set of columns.
When you open a Crystal Report,
the default tab on the Objects pane is the Reports tab,
with a report selected in the grid. Therefore the report
object's properties are displayed in the Properties
pane (i.e. "Report Title", "Report Path", "Report
File Name (Read-Only)", "Report Modified
(Read-Only)", "Content (Read-Only)", "Author",
"Keywords", etc.).
The grid in the Objects pane on
the Reports tab has set of predefined columns "File Name", "ReportTitle",
"ReportAuthor", "File Size", "ReportPath", and
"Modified" -- which show duplicate
information to those same
properties in the Properties pane.
When you click on a row of a grid
on any of the tabs on the Objects pane, the selected
row's object properties are revealed in the
Properties pane.
The "Drag" concept:
You can create a new column in the grids of the
various tabs on the Objects pane by simply dragging
an exposed property from the property list and
dropping it on the grid. But before to drag by the
property name and not the value for this to work.
The result is a new column that is dynamically for
you of the property you dragged. You can rearrange
the column order (by dragging it in the grid by the
column name) or resize it. You can also remove the
newly created column by right clicking on the column
name in the grid and selecting Delete from the pop
up menu.
For documentation and analysis
purposes, you can export the contents of the grid as
either a CSV file or Excel. Excel is recommended as
this will result in a 1 to 1 look and feel in Excel
as the rows and columns appear in the grid, while a
CSV will generate a text file with the values but
the formatting will be lost.
The "Group" concept:
Now to step this up a notch, let's introduce you to
the Group concept. Right click on a column in a
grid, even one of the newly created columns you made
using the above drag concept, and from the pop up
menu, select "Group By". This will create a
"Grouping" in the grid. A "Grouping" is a hierarchy
list that is very similar in concept to a pivot
table in Excel.
For example, if you grouped by "ReportTitle"
then you'll now see in the grid two rows. The first
row has a black background and can not be modified
always show the grouping order. The second row is
your group based on the property you grouped by and
has "+" next to the property. If you expand the "+",
you'll notice that you now have 1 or more rows in
the grouping that have the identical value for the
"Report Title" property.
Also notice that the rows have a
checkbox to the very left, which allows you to
select multiple items in the group which you want to
modify properties.
If you add additional columns to
the grouping, you can then quickly build a hierarchy
list that helps you quickly find specific set of
objects or reports, or properties to make your
actions.
Changing the grouping order is
easy too. Simply right click on any group title row
and you'll be presented with a popup menu with the
option of "Move to Top", "Move Up One", "Move Down
One", "Move to Bottom". Removing a property from a
group is also easy. Again, simply right click on any
group title and from the popup menu select "Ungroup"
(or "Ungroup All" to remove all the groupings on
this grid).
Be sure to expand the groupings
and set the right order if you're planning to export
to Excel, as it is a one to one export of what is
displayed in the grid.
Usage Example:
A perfect example of using this may be to find all
used and not used formulas in 1 or a couple hundred
Crystal Reports.
- Start by opening all the
reports you want to include in this process
- Once the Crystal Reports are
open, you need to let .rpt Inspector know which of
them you want to work it, so start by selecting the
reports in the Reports tab on the Objects grid or
the Reports Tree
- Then click on the Formulas
tab and click on at least one formula to expose
the property list
- Now drag out a special
property called "IsUsedInReport" to create a new
column
- Right click on this newly created
column and select "Group By IsUsedInReport"
- You should now have 2 rows.
One that contains child nodes that belong to the
"True" value of the property, and the other that
has child nodes that belong to the "False" value
of the property.
Another example is changing all
fonts to Arial.
- Start by opening all the
reports you want to include in this process
- Once the Crystal Reports are
open, you need to let .rpt Inspector know which of
them you want to work it, so start by selecting the
reports in the Reports tab on the Objects grid or
the Reports Tree
- Then click on the Objects tab
and click on at least one object property to
expose the property list
- Now drag out the "Font"
property to create a new column
- Right click on this newly
created column and select "Group By Font"
- You should now several rows
created. One for each value of the "Font"
property. You'll also probably have a row called
"Font (NULL)". This is normal as the child nodes
here will be objects which do not have a font
property
- You can change all the
children of a node by placing a check mark in
the box left of the property name row. Or if you
expand the node, you can select specific
children only
- Now on the property list
change the value for the font, and all the
selected nodes will automatically change
- To see the groupings refresh,
you need to click on any row, and from the popup
menu select "Refresh Grouping". By default this
refresh is to manual, as the more items and
groupings you have, it can take a while for each
property change you make to automatically
refresh. However, you can turn on automatic
refresh in TOOLS|OPTIONS|GROUPING
|