SSRS
SSRS
ED907905
90521-10-1606-583101001
10.1
Revision: December 01, 2015 5:38 p.m.
Total pages: 89
course.ditaval
SQL Server Reporting Services for Epicor ERP Contents
Contents
SQL Server Reporting Services for Epicor ERP Course.........................................................7
Before You Begin....................................................................................................................8
Audience.........................................................................................................................................................8
Prerequisites....................................................................................................................................................8
Environment Setup..........................................................................................................................................8
Report Types.........................................................................................................................10
Review ERP Schema..............................................................................................................11
Field Help Technical Details............................................................................................................................11
Workshop - Use the Field Help................................................................................................................11
Data Dictionary Viewer..................................................................................................................................12
Tables.....................................................................................................................................................12
Fields......................................................................................................................................................13
Table Linking.................................................................................................................................................13
Modify System Reports........................................................................................................15
Workshop - Add a Logo.................................................................................................................................15
Create Report Style.................................................................................................................................15
Add a Logo Image..................................................................................................................................16
Upload and Test Report..........................................................................................................................16
Workshop - Add a Table/Column...................................................................................................................17
Modify Report Data Definition................................................................................................................17
Create Report Style.................................................................................................................................18
Add the New Field..................................................................................................................................19
Upload and Test the Report....................................................................................................................20
BAQ Reports..........................................................................................................................21
Workshop - Create SSRS BAQ Report.............................................................................................................21
Add the New BAQ Report.......................................................................................................................21
Perform an Initial Test.............................................................................................................................22
Create Report Option.............................................................................................................................23
Add Report Filter....................................................................................................................................23
Create Sort Options................................................................................................................................24
Design BAQ Report Layout......................................................................................................................25
Add the BAQ Report...............................................................................................................................26
Routing Rules........................................................................................................................28
Rule Elements................................................................................................................................................28
Workshop - AR Invoice Forms by Currency.....................................................................................................29
Create Alternate Peso Report Style..........................................................................................................29
Design the Peso AR Invoice.....................................................................................................................30
Create Alternate Euro Report Style..........................................................................................................30
Design the Euro AR Invoice.....................................................................................................................31
Create Currencies Report Style................................................................................................................32
This course introduces Microsoft SQL Server Reporting Services (SSRS) reports and their implementation in Epicor
ERP.
Microsoft SQL Server Reporting Services (SSRS) is a server-based reporting platform that provides comprehensive
reporting functionality for generating reports from SQL Server databases.
For creating custom reports, the workshops in this course uses Microsoft SQL Server Report Builder, which is a
report authoring tool that allows the user to get started quickly in a Microsoft Office-like environment.
Upon successful completion of this course, you will be able to:
• Use the SSRS Report Manager management tool and the Report Builder authoring tool to create custom
reports.
• Add custom SSRS reports to the Epicor ERP application menu system and retrieve them for viewing.
• Edit an Epicor ERP shipped SSRS report.
• Create a BAQ report and then use the Report Builder authoring tool to design an SSRS report layout for the
report.
• Create routing rules that determine how report output generates, prints, and distributes.
• Add an SSRS printer in the Epicor Client and print SSRS reports.
• Understand the report security resources available when working with custom and shipped SSRS reports in
Epicor.
Read this topic for information you should know in order to successfully complete this course.
Audience
Prerequisites
To complete the workshops in this course, the necessary modules must be licensed and operating in your training
environment. For more information on the modules available, contact your Epicor Customer Account Manager.
It is also important you understand the prerequisite knowledge contained in other valuable courses.
• Navigation Course - This course introduces navigational aspects of the Epicor application's user interface.
Designed for a hands-on environment, general navigation principles and techniques are available at each of
the interface levels in the Epicor application - system, module, and program. Workshops focus on each of
these levels and guide you through each navigational principle introduced.
• Recommended Industry Knowledge -
• Exposure to other reporting programs.
• Knowledge of relational database concepts such as table relationships, records, and field types.
• Understanding of the current release application functionality.
Environment Setup
The environment setup steps and potential workshop constraints must be reviewed in order to successfully
complete the workshops in this course.
Your Epicor training environment, in which the Epicor demonstration database is found, enables you to experience
Epicor functionality in action but does not affect data in your live, production environment.
The following steps must be taken to successfully complete the workshops in this course.
1. Verify the following or ask your system administrator to verify for you:
• Your Epicor training icon (or web address if you are using Epicor Web Access) points to your
Epicor training environment with the Epicor demonstration database installed. Do not complete
the course workshops in your live, production environment.
Note It is recommended that multiple Epicor demonstration databases are installed. Contact
Support or Systems Consulting for billable assistance.
• The Epicor demonstration database is at the same service pack and patch as the Epicor
application. Epicor's education team updates the Epicor demonstration database for each service pack
and patch. If your system administrator upgrades your Epicor application to a new service pack or patch,
he or she must also download the corresponding Epicor demonstration database from EPICweb > Support
> Epicor > Downloads and install it. If this is not performed, unexpected results can occur when completing
the course workshops.
• Your system administrator restored (refreshed) the Epicor demonstration database prior to
starting this course. The Epicor demonstration database comes standard with parts, customers, sales
orders, and so on, already defined. If the Epicor demonstration database is shared with multiple users
(that is, the database is located on a server and users access the same data, much like your live, production
environment) and is not periodically refreshed, unexpected results can occur. For example, if a course
workshop requires you to ship a sales order that came standard in the Epicor demonstration database,
but a different user already completed this workshop and the Epicor demonstration database was not
restored (refreshed), then you will not be able to ship the sales order. Epicor's education team has written
the course workshops to minimize situations like this from occurring, but Epicor cannot prevent users
from manipulating the data in your installation of the Epicor demonstration database.
2. SSRS must have been configured for your training application server instance. Refer to ERP installation guide
for instructions for configuring SSRS on the Reporting Services tab of an application server instance.
3. You must have downloaded and installed Microsoft Report Builder on the client where you are taking
the course. Download the version of Report Builder that matches the Microsoft SQL Server version of your
training application server database.
4. Log in to the training environment using the credentials epicor/epicor. If you are logged into your training
environment as a different user, from the application Home Page click Settings to open the Settings Page,
and then choose Change User under General Options.
7. In Company Maintenance verify, or ask your system administrator to verify, that SSRS Printer Option on
the Email and Printing tab is set to either Client and Server Printing or Server Printing Only.
Note To refresh your Epicor training database, send a request that includes your site ID to
DL-SaaSSupport@epicor.com. Refreshing your training database may take up to 72 hours after the
request is received.
Report Types
The Epicor ERP application can utilize the following types of SSRS reports. You most likely will use all these types
of reports in your business flow.
SSRS report types:
1. System Reports - Installed with the application, each system report is the base version of the report. You
cannot modify these reports; this ensures you can always run the base version of each report. However you
can make a copy of a system report and then customize this copy as you need.
2. Custom Reports - These reports are customized versions of system reports. When you make a copy of a
system report in Report Data Definition Maintenance, you can then modify this report to better reflect
the data your organization needs to review. You make changes to the report's table structure within Report
® ®
Data Definition Maintenance and then make changes to the report layout in Microsoft Report Builder
(or a similar SSRS report layout tool).
3. Business Activity Query (BAQ) Reports - These custom reports are created from business activity queries
(BAQs) within the BAQ Report Designer. You can create BAQ reports from existing system BAQs or custom
BAQs. Just like you cannot modify system reports, you cannot modify system BAQs. However you can make
copies of BAQs within the Business Activity Query Designer to customize them.
This section of the course reviews the table and field name identification process in the Epicor ERP application,
using Field Help, and the Data Dictionary Viewer functionality. It also describes table linking procedures and
requirements, join type definitions and specifications.
A fundamental requirement when modifying or authoring reports or queries is to identify which tables within
the database contain the needed data, and which field names are used to store that data. This section provides
information on how to investigate schema details.
The Field Help feature is a quick reference tool that provides a brief field description and the technical property
reference for selected fields.
To enable Field Help, from the Help menu, select Field Help and click a field in the interface.
The Field Help sheet contains two menu items:
• Field Level Help - The Field Level Help is a text description of the field from the Application Help. You can
use Field Help as a learning tool, as it allows you to access documentation for each field.
• Technical Details - The technical details include the data dictionary information for the field. You use the
technical specifications for a field when building business activity queries (BAQs), using Business Process
Management (BPM) methods, and other advanced functions of the Epicor ERP application.
Note To view technical details, you must have permission to access the corresponding business object.
This permission is set in Process Security Maintenance for the bo.DataDict business object.
The technical details of the Field Help are valuable in understanding the table structure of the database. Keep
in mind that data can reside in multiple tables. The query topic displays where the data comes from.
You can also use the Customization feature to locate tables and fields.
In this workshop, use the Field Help to find table and field names.
The Field Help provides a Technical Details sheet to display the data dictionary information for a selected field.
The properties that display are helpful when you create a Business Activity Query and discuss the Data Dictionary
Viewer.
• Field Name - This displays the field name as defined by the Epicor application. This name is used in all
expressions.
• EpiBinding - This displays the table name and the field name. For example, the field displays Part.PartNum,
which means the table to use is the Part table and the field to pull into the query is the Part field. The syntax
is always <Tablename.Fieldname>.
• DB Field - This displays the database field property which also displays as <Tablename.Fieldname>.
• Format - This is the database format for this field and the number of characters to which that field is limited.
• Like - Use this field to validate a BAQ search and generate Foreign Key Views to indicate the common field
between two tables or datasets.
3. Place the cursor in the Field Help sheet header and click the push pin icon to dock the Field Help window.
5. In the Field Help sheet, click Technical Details and view the information.
You can adjust the Field Help width to see the fields properly.
6. Navigate to the Part > Sites > Warehouses > Primary Bin sheet and place the cursor in the Bin field.
The properties populate with the data in this field. The table and field combination display in the EpiBinding
field of the Technical Details in the format of <table>.<field>.
7. Navigate to the Part > Sites > Warehouses > Bin Information > Detail sheet and place the cursor in the
Bin field.
Notice the database field is different.
Note Data is often stored in multiple places, and table selection depends on the purpose of the query.
This example presented a part's listing with a part bin location.
Use the Data Dictionary Viewer to find and review details of each field and table within the database. Use this
program to better understand the purpose and data values of each field.
The Data Dictionary Viewer helps you to identify the fields and tables you want for a customization or a custom
report. This program is also an aid during upgrades, as you can view the current database structure to compare
it against a previous database version.
Important In Epicor ERP version 10, user-defined columns are placed within separate UD tables. For
example, the Part table may have a corresponding Part_UD table.
Tables
Use the Tables sheet to find and select the database table to review.
The Data Dictionary Viewer is organized by tables. A table is a set of fields that contain related information.
Example
• Use the Customer table to store all your customer records.
Data is often stored in multiple tables, each with a specific purpose. Use the Search option to display tables in
a grid format. The grid includes a brief overview of the tables and helps determine which table to use when a
field is located in more than one table.
Fields
Use the Fields sheet to display specific information about each selected field. All values for a selected field, such
as format, label, and description, display on this sheet.
Each table contains various fields. These items are individual pieces of information associated with the table, and
each field has a unique name.
Example The Customer table includes the identifying code for the customer (CustNum), name (Name),
and other specific details about the customer.
Tip The Data Dictionary Viewer properties are also available in the Technical Details area of the Field Help.
When accessed through the Field Help, the details are specific to the selected field.
Table Linking
You link multiple tables together to display the data you need within a business activity query (BAQ) or a custom
SQL Server Reporting Services (SSRS) report. You link one or more fields the tables have in common so the data
displays together in the output.
Table Links
Link tables so the records from one table match related records from another. This linking process involves using
a common field between the selected tables. For example, if you activate an Orders table and a Customers table,
link the tables so each order from the Orders table can be matched with the customer from the Customer table
that made the order.
Reporting or querying tools use this connection to identify related records between tables. In the above example,
the linking process ensures the data in each line of the report refers to the same order.
Link Types
The main link types are one table to another or one table to multiple others.
• One table to another - The primary table and the lookup table have a one-to-one relationship between
their records.
• One table to multiple others - The primary table and the lookup table have a one-to-many relationship
between their records.
Indexed Fields
An index field points to a data location which is a named path designed within the database in order to quickly
locate and store data or to easily retrieve data in a table. The index name and path, or index order, are identified
in the Data Dictionary Viewer and on the Field Help > Technical Details sheet.
Important Always use the Company field as it is the first indexed field and it is located at the top of the
Epicor ERP application table hierarchy. The data of each company is stored and separated from other
company data using the Company ID field. Since every table uses the Company field, you must select this
indexed field as one of the primary linking fields in a join.
There are no exceptions to this rule. You must select the Company field as a join field pair when linking
tables because company is at the top of the table hierarchy in the Epicor application. Your report will not
provide the correct results if this field is not used in the join.
The SSRS reports installed with the Epicor ERP application are built on dynamic database table structure known
as the Report Data Definition (RDD). This structure has been implemented to support good report performance.
In the following workshops, you will explore how to copy and modify RDDs and their accompanying SSRS definition
files (RDL files) to create custom versions of system reports. Note that to create a completely original RDD, you
need to use the Epicor ERP Software Development Kit (SDK). Using the ERP SDK is outside the scope of this
course.
® ®
The primary Microsoft tool you will use to modify SSRS reports is Microsoft SSRS Report Builder . Usually
called Report Builder, this application is an a Microsoft Office-like authoring tool for SSRS reports. Through this
application, you can modify existing SSRS reports and create new SSRS reports. You do this by defining what
data displays on the report and designing the report layout.
If you run the Epicor ERP application on your organization's network (on-premise), you will also need to use
® ®
Microsoft Report Manager . Installed as one of the components of SSRS, Report Manager is a web-based
report access and management tool you use to manage reports on the SSRS report server. Report Manager is a
good starting point for creating and editing reports; you can select a report and open it for editing in Report
Builder and you can launch Report Builder by itself to begin creating a new report.
As described previously in the Environment Setup section, be sure Report Builder is installed on your system;
you cannot do the workshops in this course without this application. If you run Epicor ERP on-premise, you can
launch the Report Builder from the Report Manager application on your server. If you run Epicor ERP through a
hosted (SaaS) environment, you must download and install Report Builder. In either case, be sure to use the
current Report Builder version.
Note For more information, review the SQL Server Reporting Services (SSRS) documentation available
from the Microsoft website.
Working in ERP, create a new report style for the Customer Statement Report that creates a copy of its SSRS
report file.
A report style defines a variation for a report in the Epicor ERP application. The variation is reflected mainly on
the report type, the report template being used, the report data output location, report options passed to the
reporting engine, and the companies in which the style can be used.
3. Expand Report Style(s). Highlight the Standard - SSRS style. From the Actions menu, select Copy Report
Style.
a. For Description, edit to read Standard - SSRS - XXX where XXX are your initials.
b. Report Location: take notice of the path here. This refers to a location in SSRS Report Manager. Note
that a copy of the report used in the original style has been placed in this location under CustomReports.
7. Click Actions > Download SSRS Report. Select an empty folder on your client computer, click OK, and
OK again.
8. Close Report Maintenance and leave the application running for use later in the workshop.
1. Open Windows Explorer and go to the folder to which you downloaded the report files in the previous
procedure.
2. Drill down into the StatementOfAccount folder, double-click CustSt.rdl to open the file in Report Builder
(see Environment Setup topic for instructions on installing Report Builder). When prompted for a server
name click Cancel.
The report opens in Design mode. If desired, increase zoom level in lower-right corner.
3. There is a large area of white space in the report above the report title (RptLiteralsLSubTitle). Right-click in
the white space area and select Insert > Image.
4. In the Image Properties dialog, click Import and browse to an image file (for example a .png or .jpg file)
you would like to use as a logo, and click OK.
4. Click the report style that you created, Standard - SSRS - XXX.
5. From the Actions menu, select Upload SSRS Report. Select the folder to which you downloaded the
reports previously for this workshop and click OK.
A confirmation of uploaded reports displays.
7. Under Report Options, change the Begin Date to be one year back of the End Date (to make sure you
have some sample data).
8. For Report Style, select Standard - SSRS - XXX where XXX are your initials.
In this workshop, you create a copy of the Sales Order Pick List report definition that ships with the Epicor ERP
application, and then create a new report style that uses the copied definition which is modified to use an
additional ERP table/column.
Working in Epicor ERP, copy a system report data definition and edit the copy to add a table to it.
A report data definition is a structure of tables and fields that will be used by a reporting engine (like Crystal,
EDI, SSRS or Bartender) to lay out data on a report.
5. For Report Def ID, enter SOPickXXX where XXX are your initials.
7. Click OK.
The newly-created report definition is displayed.
10. For the Starting At field, enter Customer, and click Search.
11. From the Search Results grid, select the Customer table and click OK.
12. From the File menu, select New > New Relationship. Click the Detail sheet.
a. Relation: OrderHedCustomer
b. Description: OrderHedCustomer
14. Click Save. The Relationship fields are added. Click Save again.
15. Close Report Data Definition and remain in the application for the next exercise.
Working in ERP, create a report style that uses the report data definition that you created in the previous procedure.
A report style defines a variation for a report in the Epicor ERP application. The variation is reflected mainly on
the report type, the report template being used, the report data output location, report options passed to the
reporting engine, and the companies in which the style can be used.
3. Expand the list of Report Styles. Make sure you have the Standard - SSRS style highlighted. From the
Actions menu, select Copy Report Style.
a. For Description, edit to read Standard - SSRS - XXX where XXX are your initials.
b. For Data Definition, select SOPickXXX where XXX are your initials.
c. Report Location: take notice of the path here. This refers to a location in SSRS Report Manager. Note
that a copy of the report used in the original style has been placed in this location under CustomReports.
7. Verify that the cursor is still on the newly-created style. In the Detail sheet, click Sync Dataset.
The expression in the SSRS report that generates the dataset for the report is now based off the report
definition you created, and the dataset items in the report now have the added schema items for you to
drag and drop onto the report.
8. Click Actions > Download SSRS Report. Select an empty folder on your client computer, click OK, and
OK again.
9. Close Report Maintenance and leave the application running for use later in the workshop.
In this procedure, you add the field to the body of the report.
1. Open Windows Explorer and go to the folder to which you downloaded the report files in the previous
procedure.
2. In the SalesOrderPickList folder, double-click SOPickL.rdl to open the file in Report Builder (see
Environment Setup topic for instructions on installing Report Builder). When prompted for a server name
click Cancel.
The report opens in Design mode. If desired, increase zoom level in lower-right corner.
3. In the Report Data pane, expand the OrderHed dataset and drag SalesRepCode (which is about 3/4 of
the list down) to the design area and drop it to the right of Calc_CustName placeholder box.
A new text box containing the placeholder [First(SalesRepCode)] is created.
a. Select General, and for Value, click fx to open the Expression window.
6. Inside the text box, use the arrow keys to get the cursor to the left of [SalesRepCode] and type Sales Rep:
(with an ending space).
7. Click the text box and use the handles to resize and move the text box so it displays even with the
Calc_CustName field.
4. Click the the report style that you created, Standard - SSRS - XXX.
5. From the Actions menu, select Upload SSRS Report. Select the folder to which you downloaded the
reports previously for this workshop and click OK.
A confirmation of uploaded reports displays.
6. Open the Sales Order Pick List report program window in company Epic06.
Menu Path: Sales Management > Order Management > Reports > Sales Order Pick List
7. Under Report Options, change the From date to be one year back of the To date (to make sure you have
some sample data).
8. For Report Style, select Standard - SSRS - XXX where XXX are your initials.
BAQ Reports
In the Epicor ERP application, the BAQ Report Designer enables you to design a SQL Server Reporting Services
(SSRS) report that displays the output from a Business Activity Query (BAQ).
You can create a report based on a system BAQ, an existing custom BAQ, or a custom BAQ you create in the
Business Activity Query Designer. You then select the query within the BAQ Report Designer. Working in
this tool you can open the report in SSRS Report Builder, where you can control the report layout and select the
data that displays in the report.
In this workshop, you add a BAQ report based on an existing BAQ, design the report layout in Microsoft SQL
Server Report Builder, save the report (.rdl) on the SQL Server Report Server, and add the report to the application
menu.
The workshop procedures use simple examples to demonstrate how create a report and then automatically
connect to Report Builder to define a layout that presents the data you need from the BAQ results. To address
complex data reporting requirements, continue to learn about how to create custom BAQs and design SSRS
reports. Courses and other training material are available from Epicor and Microsoft.
2. Click the down arrow next to New on the Standard toolbar and select New Report Definition.
3. On the Details sheet, enter or verify the following for the new report:
• For Report ID, enter aa_CustomerTest.
• For Description, enter SSRS BAQ Report Demonstration.
• For BAQ ID, locate and choose zCustomer01, which is an existing system BAQ.
• For Form Title, enter Customers SSRS Report Demonstration.
• For SSRS Report, note that aa_CustomerTest.rdl has been added automatically based on the value in
Report ID.
Tip Once you enter and save a Report ID, you cannot change this identifier. However you can make
a copy of the report to create a new identifier.
4. Click Save.
5. Leave the BAQ Report Designer open and navigate to Report Style Maintenance.
6. Retrieve your new report, and review the report style that has been created automatically for your new BAQ
Report.
b. Click the Styles tab and note the following about the new report style:
• Description and Report Type both indicate an SSRS report.
• Data Definition identifies the report data definition that has been created automatically for your
new report.
• Report Location is the report's location on the SSRS report server relative to the report server settings
in your Epicor ERP application server configuration.
7. Close Report Style Maintenance and remain in BAQ Report Designer for the next exercise.
In BAQ Report Designer, use the Test Report Form action to perform an initial test of the new report.
This verifies the report form and print preview functionality for the new report and enables you to obtain, from
the System Monitor, the report's TableGuid identifier that will be needed for testing the report while you are
working on the report design in Report Builder.
1. Verify that BAQ Report Designer is open and your new aa_CustomerTest report is displayed on the Detail
sheet.
2. Choose Actions > Test Report Form to display the report's form.
4. Close the report and report form and launch the application's System Monitor.
5. In the System Monitor, navigate to the Reports sheet and locate the line for your report.
The TableGuid identifier is in the FileName column found at the end of the Reports sheet grid. The value
will be similar to this example:
REPORT DATABASE: 2ca4ef91d3884e1db980f45e37ac42e6
For later use in this course, be sure to record the actual value by copying and pasting this value in Notepad
or a similar text editor. You will not need the REPORT DATABASE: portion.
Note If the FileName column does not display in the System Monitor, enable it in the Control
Properties dialog box. To do this:
• Ensure that the Reports sheet is selected and choose Tools > Personalization to open the Control
Properties dialog box.
• On the Reports sheet grid, click any Column Heading. This switches the Control Properties
display to layout settings for the tab.
• Under Layout in Control Properties, click Columns, and then click the Down Arrow at the far
right of the line to open Column Properties.
• In Column Properties, locate FileName and clear the Hidden check box.
• Click in Control Properties to close Column Properties and click OK.
• The FileName column is added to the Reports sheet grid and you now can obtain the TableGuid
identifier.
6. Close or minimize the System Monitor and remain in the BAQ Report Designer for the next exercise.
You can add option fields that will then display on the report interface. These options affect the results that
appear on the report output.
For this report, you want to give users an option that limits the report to only display customers placed on credit
hold. To do this, you add a check box users can decide to select. When users click on this check box, the report
only displays customers whose Credit Hold check box is active (set to TRUE).
3. Click Save.
Now add a filter to further restrict the data that displays on the report.
For this report, you want to give users the option to filter the results by sales territory.
4. Click Save.
Lastly you create sort options for the BAQ report. You want to first sort the results by customers and then by
state.
3. Now in the Sort Fields section, click the New Sort button.
A new row displays in the Sort Fields grid.
7. Now add a second sort option to display the results by state and then by customer. Click New > New Sort.
A new row displays on the Sort Options grid.
9. Now in the Sort Fields section, click the New Sort button.
A new row displays in the Sort Fields grid.
12. Now in the Sort Fields section, click the New Sort button.
A new row displays in the Sort Fields grid.
Create a new BAQ Report and use SSRS Report Builder to design the report layout.
This procedure is a simple example that demonstrates how you use the BAQ Report Designer features to create
a report and then automatically connect to Report Builder to define a layout the presents the data you need from
the BAQ results. Advanced users will be able to leverage both BAQs and SSRS to build more complex reports.
1. Verify that BAQ Report Designer is open and you new aa_CustomerTest report is displayed on the Details
sheet.
3. In Report Builder, select the Insert tab and then select Table > Table Wizard to run the New Table or
Matrix wizard.
5. Now in the Arrange fields screen, click and drag all the fields in the Available fields column to the Values
column.
6. Click Next.
7. On the Choose the Layout screen, clear all options and click Next.
8. On the Choose a Style screen, accept the default and click Finish to close the wizard.
a. Verify that you are on the Home tab and click Run.
b. At the top of the report page, enter the TableGuid identifier obtained in the previous exercise and click
View Report.
The report runs in HTML format, as it would if it was run from SQL Server Report Manager.
Important To be able to run the report in Report Builder, you must have sufficient permissions on
both the SQL Server Report Server and the SQL Server Database. See the requirements in the topic
Environment Setup if you are blocked from running the report.
11. In Report Builder, you can continue to make adjustments to the report design. As you work, be sure to save
and retest the report as described in steps 8 and 9.
12. When you are satisfied with the report, click the Report Builder button and choose Exit Report Builder.
13. Back in BAQ Report Designer, test the report to verify it in the application.
a. Click Actions > Test Report Form to open the report's form.
b. Click Print Preview to display the report with your design work.
The report displays in PDF format, which is the default for SSRS reports.
c. When done, close the report, and close the report form.
14. Remain in the application with the BAQ Report Designer open for the next exercise.
Add the BAQ report to the menu system in the Epicor ERP application.
For this example, the BAQ report is added to the application menu structure under Sales Management. You can
use locations and values that match the report you are working with.
2. On the Menu Maintenance tree, navigate to: Main Menu > Sales Management > Order Management
> Reports. Verify Reports is highlighted.
4. In the Menu ID field, enter UDXXX01 (where XXX are your initials).
Important It is an important standard practice to use a UD prefix when adding a menu ID. UD stands
for User Defined.
7. Click the Program Type drop-down menu and select BAQ Report.
8. Click Report and then search for and choose the BAQ report CustomerTest.
10. Log out and log back into the Epicor application.
This ensures you do not have to wait for an automatic update.
13. When done, close the print preview and form windows. You can leave the application running for later
exercises.
Routing Rules
Each Epicor ERP report has one or multiple report styles that define its type (such as SQL Server Reporting Services
(SSRS) and Outbound EDI), its report data definition, and the specific companies which can run the report style.
If you are developing an SSRS report style, you can also design a routing rule for it.
A routing rule determines how the report output generates, prints, and distributes. Routing rules help you
streamline reporting for specific business needs. They can be simple rules that define an alternate report style
users run when they need to print a report using a unique format, or complex rules that divide, or break, the
report run into multiple dataset partitions which they can link to separate rendering workflows for generating,
printing, previewing, and sending the report output. Even though the report and data generation process only
runs once, you can render multiple reports from this data based on audiences, business requirements, and other
factors.
For example, you do business with customers in several countries. You can create a routing rule for an AR Invoice
report style that prints different invoices formats. When users run this report style, the routing rule generates
different invoice documents based on each customer's country. By further leveraging the Bill-To Address on each
customer record, you could define more routing on this rule so each AR Invoice report is sent to each customer
as an email attachment. To indicate the purpose of the email, you could use the template to build the name of
the report and then publish this file name in the Subject field.
When you need to print reports, you can set up a rule condition to send each rendered report to a specific client
or server printer. Through this feature, you can make one version of the report print for a specific department,
and then cause the other version to print in a different department. You can then distribute information more
efficiently across your organization.
By designing routing rules that address various needs unique to your company and organization, you will generate
targeted documents for customers, suppliers, and internal users. Routing rules significantly improve how reports
communicate database information.
Rule Elements
The primary routing rule features are installed by default to mirror functionality available in previous Epicor ERP
versions. If your organization purchases the AdvancePrinting license, you can access the complete set of routing
rule elements.
Previous application versions provided some basic routing options. These features are still available for backwards
compatibility with older reports. The default installation contains these routing rule elements:
• Breaks -- This element determines which table and columns are used to divide, or break, the data output
into separate dataset partitions. You can then apply other elements, such as Filters and Conditions, to render
these dataset partitions through different report outputs.
• Filter -- Use this report action to evaluate break columns based on criteria you define.
• Alternate Report Style -- Through this report action, you define the report style used to render the report.
This alternate report style is an existing style available for the current SSRS report, and it can be linked to a
custom .rdl file.
• User Action -- Through this routing action, the report prints or displays based on what output the user selects
on the report window.
If your organization purchases the AdvancePrinting license, these additional routing rule elements are available:
• Conditions -- Through this element, you create conditions that evaluate incoming data partitions. These
conditions determine how the rule renders different reports and distributes the report output.
• Group By -- Use this report action to organize, or group, related reports based on criteria you define.
• Generate -- This routing action generates an electronic report file. This file is then available for display within
the System Monitor.
• Print -- Use this routing action to send the report to a specific client or server printer. The selected printer
then prints a hard copy of the report output.
• Print Preview -- Through this routing action, you generate a report preview that displays for the user.
• Send E-mail -- Use this routing action to create an e-mail template for the report. The report file is then sent
as an attachment with this e-mail.
To make it easier to render AR invoices for different currencies, you decide to create a report style with a routing
rule that filters on the currency code. The routing rule renders AR invoices using the alternate report styles you
create for each currency. You can design this routing rule with the default elements included with the basic
installation.
Note this example illustrates a routing rule for just the Peso and Euro currencies. You can extend this example
to render the AR Invoice form in any other currency variations you may need.
You begin by creating the alternate Peso and Euro report styles.
3. Click the Report ID... button to find and select the ARForm.
4. You can copy an existing SSRS report style to pull in the default SSRS values. From the tree view, select the
Standard - SSRS report style.
6. From the tree view, select the Standard - SSRS - Copy style you created.
9. Verify the Data Definition drop-down list displays the ARForm option.
10. For its Report Location, edit the first part of the path so that it reads:
reports/CustomReports/ARInvoiceForm_Peso/ARForm.
1. On your server machine, launch your web browser and navigate the Report Manager. For example:
http://MyEpicorEnvironment/Reports/Pages/Folder.aspx
The Home - Report Manager web page displays.
6. Use the breadcrumbs navigation at the very top left of Report Manager browser window to navigate to the
newly-named CustomReports/ARInvoiceForm_Peso folder.
7. Hover over the ARForm item (the .rdl file); from its drop-down list, select Edit in Report Builder.
8. You can now edit this report form as you need (supposing for this exercise that we are fomatting for the
peso currency audience). There is an open white space in the upper right of the report. From the Insert tab
in Report Builder, select Texbox icon.
9. Place your cursor inside the newly-created text box; type PESO.
For the purposes of this workshop, the exercise just demonstrates a simple change. You would do much
more to create a custom Peso AR Invoice form.
Now that you've created the custom reports, you can set up the alternate Peso and Euro report styles.
3. Click the Report ID... button to find and select the ARForm.
4. You can copy an existing SSRS report style to pull in the default SSRS values. From the tree view, select the
Standard - SSRS report style.
6. From the tree view, select the Standard - SSRS - Copy style you created.
9. Verify the Data Definition drop-down list displays the ARForm option.
10. For its Report Location, edit the first part of the path so that it reads:
reports/CustomReports/ARInvoiceForm_Euro/ARForm.
5. Use the breadcrumbs navigation at the very top left of Report Manager browser window to navigate to the
newly-named CustomReports/ARInvoiceForm_Euro folder.
6. You can now edit this report form as you need (supposing for this exercise that we are fomatting for the
Euro currency audience). There is an open white space in the upper right of the report. From the Insert tab
in Report Builder, select Texbox icon.
8. Click Save.
You next create the Currencies style that will have the routing rule. This new style is a variation from the base
SSRS report style.
1. From the tree view, select the Standard - SSRS report style again.
3. Be sure the copied style is selected. For its Description, you enter AR Invoice - Currencies.
4. Routing rules can only be created for SSRS report styles. From the Report Type drop-down list, verify the
SQL Server Reporting option displays.
5. Verify the Data Definition drop-down list displays the ARForm option.
6. Because you copied the base SSRS style, the Report Location displays the directory for the default ARForm.rdl
file. This routing rule will render alternate reports from the default report, so you use the original ARForm.rdl
file for this style.
You can now create the routing rule for the AR Invoice - Currencies report style.
4. Click the Design... button to display the Breaking and Routing Rule Designer.
You can now design the routing rule in the workflow designer.
5. From the Available Columns list, find and select the CurrencyCode column.
7. Click OK.
You next add a Filter element that checks for the Peso currency code.
2. Double-click the title for the Filter element to rename it; change its name to Peso.
4. Select the Peso Filter element. At the bottom of the Breaking and Routing Rule Designer, click the New
Condition button.
A new row displays that states "The specified breaking column is equal to the specified value."
7. Click OK.
The filter statement now states "the InvHead.CurrencyCode breaking column is equal to the PESO value.
3. Connect the Alt. Report Peso element to the Peso Filter element.
This Alternate Report Style element is linked to the custom ARForm.rdl file you created for this currency.
When the Filter element finds an invoice that uses the Peso currency, the AR Invoice form will generate or
print using the Peso currency .rdl file for this report.
7. Click OK.
You next repeat the previous workflow design to create a Euro workflow. When the filter discovers a Euro currency
code, it renders the AR Invoice form using the Euro report style.
4. Click and drag an Alternate Report Style element onto the workflow.
11. To finish this workflow, connect the Alt. Report Euro element to the existing User Action element.
This indicates when the invoice uses the Euro currency, the AR Invoice form will generate or print using the
Euro currency variation of this report. However because the report renders based on what the user selects
on the report window, there's no need to place another User Action element onto the workflow.
Your routing rule will now render the alternate Peso and Euro invoices, but it will not render other invoices that
do not use these currencies. To handle all invoices, you must set up a default workflow that checks for other
currencies and then renders the report using the base ARForm.rdl file.
1. Click and drag another Filter element onto the workflow pane.
4. Select the Default element and click the New Condition button.
5. Set up this statement to filter on the InvHead.CurrencyCode column again. However this time select the is
not equal to option and then enter the PESO value.
When you finish, the statement will be "The InvHead.CurrencyCode breaking column is not equal to the
PESO value.
6. Now add another New Condition to this filter. Be sure this statement uses the And operator and that it
checks for invoices that do not use the EURO currency.
When you finish, the statement will be "And The InvHead.CurrencyCode breaking column is not equal to
the EUR value.
Now the routing rule handles any AR invoices that do not use either the Peso or Euro currencies.
7. To finish this workflow, connect the Default element to the existing User Action element.
8. Your routing rule is designed. Click the Save and Exit button.
3. Click Save.
Now the next time a user selects the AR Invoice - Currencies report style, the routing rule checks the CurrencyCode
value. If the currency code value matches the Peso Filter element, the AR invoice renders the report using the
Peso report style you created for that currency. Likewise if the currency code matches the Euro currency code,
the rule renders the report using the Euro report style. Invoices which use other currencies will render using the
default AR Invoice report style.
You can continue to expand the rule by adding other currency filters. The routing rule would generate the
alternate reports which match those filters. Be sure you add "is not equal to" statements in the Default filter
element to render AR invoices that do not use the additional currencies.
This workshop illustrates how you create a routing rule. You will create a rule for the Customer Statement report.
You are an account manager, and you would like to review customer statements before you send them to the
customer contact. To do this, you create a routing rule that generates each customer statement as an e-mail
attachment, and then send these emails directly to your e-mail address.
Create Rule
2. Click the Report ID... button to find and select the Customer Statement (CustSt) report.
3. Now copy an existing SSRS style to pull in the primary set up options for the SSRS style. Click Actions >
Copy Report Style.
6. Because you copied the SSRS report style, most of the SSRS report style options are already set up for this
new style. Make sure that the Report Type drop-down list displays the SQL Server Reporting option.
7. Because you copied the default SSRS report style, the CustomReports parent folder now has a new
StatementOfAccount subfolder. The Report Location field displays this new subfolder; this report style will
render the report through the copied .rdl file in this subfolder.
8. To create a routing rule, the Output Location must be set to the Database option.
9. Click Save.
10. Now click New > New Breaking and Routing Rule.
11. From the Break Table drop-down list, select the Customer table.
This indicates your routing rule will use the columns on the Customer table to filter the incoming report
dataset. You must select a Break Table before you create a routing rule.
Design Rule
You next design the rule in the Breaking and Routing Rule Designer.
3. Select the Break element. From the Action statement, click the specified link.
The Break and Sort window displays.
4. From the Available Columns list, find and select the CustID column and click the Right Arrow button.
The CustID column now displays in the Selected Break Columns list.
5. Click OK.
6. Now add the e-mail action to the routing rule. Click and drag the Send E-Mail element onto the workflow
designer.
8. Select the Send E-Mail element again; an action statement displays below. Click the designed link.
The E-Mail template window displays.
10. Enter the From e-mail address for this e-mail. Enter your e-mail address (or an email address provided by
the instructor) in this field.
11. For the purposes of this workshop, you want to receive these e-mail messages. Enter your e-mail address
(or an email address provided by the instructor) in the To field.
12. Next define what will display in the Subject field. You enter "Recent Customer Statements" in this field.
13. You want each .pdf report to use the customer identifier for its file name. Right-click in the Attachment
Name field; from the context menu, select the Insert Fields options.
The Select Table Field(s) window displays.
17. Now enter the text you want to display in the Body field. Enter "The customer statement you requested is
attached."
19. You have finished the routing rule. Click Save and Exit.
You return to Report Style Maintenance. Notice the Breaking and Routing rule field displays a thumbnail
graphic of your routing rule.
Test Rule
You can now test the routing rule to verify it works as expected.
2. Enter the Report Options that you want for this report run.
3. Now click the Report Style drop-down list and select the Send E-Mail Preview option.
Notice the Routing check box is selected. This indicates the report style has an active rule.
4. You want the file attachment to use the .pdf file format. From the Output Format drop-down list, verify
the PDF option displays.
6. Double-click one of these messages; the Recent Customer Statements e-mail message window displays.
Notice the To and From fields display the e-mail accounts you set up in the E-Mail Preview template. The
report is also attached as a .pdf file; it uses the Customer ID value for the file name.
7. You can now double-click this attachment to display the Dalton customer statement.
Continue to review the other customer statements rendered during this print run.
During this series of exercises, you create a routing rule that filters on a custom attribute. The routing rule activates
when it locates this attribute on a specific record.
For this workshop, you want to set up a routing rule that automatically sends purchase orders to suppliers who
have email addresses. To do this, you first create a new EmailPO attribute. You use this EmailPO attribute to
indicate purchase orders can be sent by email to specific suppliers. You next create a copy of the Purchase Order
form and then set up a routing rule that filters on this attribute. When a supplier record has this EmailPO attribute,
the purchase order automatically generates and is sent to this supplier as an email attachment.
5. Click Save.
5. In the Email field, you normally would enter this supplier's email address. However for the purpose of this
workshop, enter your e-mail address (or an email address provided by the instructor) in this field.
Tip The program that generates the purchase order report first checks if a supplier contact has an
email address. If a contact has an email value on the Contacts > Detail sheet, the report uses this
contact's address to send the purchase order report. If the contact does not have an email address,
this email address from the Supplier > Address sheet is used instead.
7. From the Available Attributes list, select the Email POs to Suppliers attribute.
9. Click Save.
The Guthrie Casting supplier record now uses this attribute and default email address.
If you are setting this up for your company, you would continue to assign this attribute to other supplier records.
However for this workshop, you only need to assign this attribute to the Guthrie Casting supplier.
You want to email the Purchase Order report to this supplier. Because this report is an installed system report,
you need to create a copy of it before you can change it.
4. Make a copy of this report data definition. Click Actions > Duplicate Report.
The Duplicate Report Definition window displays.
7. Click OK.
You return to Report Data Definition Maintenance. The duplicate report data definition populates this
program window. Notice the System Report check box is clear (not selected).
8. Click Save.
You now change the report data definition so it includes the table that holds the EMailPO attribute.
1. From the tree view, expand the Report Data > POForm - Supplier Detail > Report Table node.
3. You need to output the VendorNum value so you can create a logical join with the VendAttr (Vendor
Attribute) table. Navigate to the Report Table > Exclusions sheet.
4. From the Report Table Exclusion grid, locate the row for the VendorNum column.
6. Now add the Vendor Attribute table. Next to the New button, click the Down Arrow; select New Table.
The Report Table > Detail sheet displays.
7. Right-click the Report Table field; from the context menu, select Table Search.
The Table Search window displays.
13. You need to exclude the SysRevID column and label. Highlight this row and select both its ExcludeColumn
and ExcludeLabel check boxes.
14. Likewise, highlight the SysRowID row. Select both the ExcludeColumn and ExcludeLabel check boxes.
Define Relationship
To complete the report data definition, you next join the VendAttr table to the POHeader table.
1. Next to the New button, click the Down Arrow; select New Relationship.
An empty report relationship value displays on the tree view.
2. Make sure this empty relationship node is selected on the tree view. Navigate to the Relationships > Detail
sheet.
6. Next click the Child Table drop-down list and select the VendAttr table.
8. You now must indicate which columns join these tables. In the Relationship Fields group box, click the
New button.
A new row displays in the Fields grid.
9. These tables need to share the same company. Click the Parent Field Name drop-down list and select
Company.
10. Now from the Child Field Name drop-down list, select Company.
11. To complete the relationship, these tables also need to share the vendor number. Once again in the
Relationship Fields group, click the New button.
12. From the Parent Field Name drop-down list, select VendorNum.
13. Likewise from the Child Field Name drop-down list, select VendorNum.
The customized report data definition is complete. You have created a new version of the purchase order form
that is linked to the Vendor Attribute (VendAttr) table. Your routing rule can now check for the Email attribute
value in this table.
You next create a new style for the purchase order form (POForm) that uses the modified report data definition.
3. Expand the list of Report Styles. Highlight the Standard - SSRS style, and from the Actions menu, select
Copy Report Style.
4. Select the newly-created Standard - SSRS - Copy style and navigate to the Detail sheet.
6. Now from the Data Definition drop-down list, select your POForm-Email data definition.
7. Confirm that the Output Location is set to Database. You can only design routing rules for report styles
that send output to the database.
8. Click Save.
The Company List grid populates with all companies in your organization.
Tip If you do not want to have this report style available in some companies, you would clear (de-select)
its Valid check box. However for this workshop, you want this report style available to all companies
in your organization.
This style is now available on the Purchase Order report window. When users click the Style drop-down list, the
Email PO style displays as an option.
Now that you have created the new style, you can design the routing rule.
1. With the newly-created Email PO style highlighted, next to the New button, click the Down Arrow; select
New Breaking and Routing Rule.
The Styles > Breaking/Routing Rule sheet displays. Notice the Data Definition field displays
POForm-Email report style.
2. You first define the table that defines the rule. From the Break Table drop-down list, select POHeader.
This routing rule needs to first locate the number of the purchase order. This determines the PO record that
generates in the report.
The routing elements display on the left side of the Breaking and Routing Rule Designer.
1. Click and drag the Break element onto the workflow designer.
3. Click and drag a connection line between the Start element and the Break element.
8. Click OK.
The routing rule now first checks the POHead.PONum column and captures this value.
Define Condition
Now add a condition element to the routing rule that checks for the EmailPO attribute on the supplier record
linked to the selected purchase order.
4. Add a statement to the Condition element. Click the Add New button.
9. Click OK.
If the condition is not met (resolves to False), you need this routing rule to generate the purchase order report
through the action the user selects on the report window.
To do this, add a default action to the routing rule:
1. From the Routing Actions elements, click and drag the User Action element to the workflow designer.
3. Click and drag a connection arrow from the False output to the User Action element.
Notice the Action Statement for this element:
• Execute the Client Print, Server Print, Print Preview, or Generate action selected by the user when
submitting the report.
This means that when the supplier record does not have the EmailPO attribute, the routing rule uses the action
the user selects on the Purchase Order report window.
Now define what happens when the condition is satisfied (resolves to True). You need the routing rule to send
this report to the supplier as an e-mail attachment.
1. Click and drag the Send E-Mail element onto the workflow designer.
3. Click and drag a connection arrow from the True output to the Send E-Mail element.
7. In the From field, enter the email address for your purchasing department. However for the purpose of this
workshop, enter your e-mail address (or an email address provided by the instructor) in this field.
Note After you see the technique in the next few steps, you could decide later to use
BuyerID_EMailAddress from POHeader in this field.
8. Right-click the To field; from the context menu, select Insert Fields.
The Select Table Field(s) window displays, defaulted to POHeader.
10. With POHeader still selected, select the check box next to Vendor_EMailAddress, and click OK.
11. Type Purchase Order: in the Subject field, then right-click and select Insert Fields.
The Select Table Field(s) window displays.
12. For Name, type PONum, then from POHeader, select the check box next to PONum and click OK.
13. You want each .pdf report to use the PO number for its file name. Right-click in the Attachment Name
field; from the context menu, select Insert Fields.
The Select Table Field(s) window displays.
15. From POHeader, select the check box next to PONum and click OK.
16. Lastly, enter the text you want to display in the Body field. Enter "We are placing an order with your
company. Please see the attached purchase order for information." Now add a couple spaces below this
line and then enter the "Thank you," text line.
You could elect to insert the buyer name as a signature by using BuyerID_Name from POHeader.
The routing rule is complete. You next activate the rule, and optionally test it by creating a purchase order.
3. Click Save.
Now whenever a user prints a PO using the Email PO report style, the routing rule checks to see if the supplier
has the EmailPO attribute. If the supplier record has this attribute, the purchase order is automatically sent
to this supplier as an e-mail attachment.
9. For Report Style select Email PO, and select Print Preview icon.
This will trigger an email that should come to the email you specified for Guthrie (step 5 of Select the
Attribute part of this workshop) that has this purchase order attached to it.
You want to print Job Traveler reports for all jobs which are past their requested due dates. You will then send
these reports immediately to a server printer so they are available for work on the production floor.
To do this, you will create a routing rule for the Job Traveler.
You begin by creating a new style for the Job Traveler within Report Style Maintenance.
2. Click the Report ID... button to find and select the Job Traveler.
3. From the tree view, select the Standard - SSRS report style.
7. Verify the Report Type drop-down list displays the SQL Server Reporting option.
8. You will use the installed Data Definition. Verify that JobTrav displays in this field.
9. Because you copied the default SSRS report style, the CustomReports parent folder now has a new JobTraveler
subfolder. The Report Location field displays this new subfolder; this report style will render the report
through the copied .rdl file in this subfolder.
10. Now for the Output Location, select the Database option.
3. Click the Break Table drop-down list and select the JobHead table. The JobHead table contains the
ReqDueDate (Requested Due Date) column you will use in the routing rule to determine whether a job is
overdue.
4. You are ready to create the routing rule. Click the Design... button.
You now create the routing rule on the Breaking and Routing Rule Designer. To begin, add a Break element that
breaks the data using the ReqDueDate (Requested Due Date) column.
5. Scroll through the Available Columns list to locate and select the ReqDueDate column.
7. Click OK.
Define Condition
You now add a Condition element that checks the ReqDueDate column against the system clock to see if a job
is overdue.
4. Now add a statement to the Condition element. Click the Add New button.
7. Scroll through the Fields list to find and select the ReqDueDate check box.
8. Click OK.
9. Now click the is equal to drop-down list; select the is less than option.
11. Scroll through the options and select the Today check box.
The condition statement now reads, "The JobHead.ReqDueDate report field on any row is less than the
Today system constant.
You now add a Print action and specify which server printer will print the overdue jobs.
Note You should only use the Print action element when you want to restrict a report to print out on a
designated printer. When you add a Print action element to a routing rule, users are forced to always use
the selected printer. Regardless of whether users choose a different printer, generate the report, or preview
the report on the report window, the report automatically prints out on the printer defined on the action
element.
2. Now connect the Print element to the True side of the Check If Late condition. This indicates when the
condition statement resolves to True, the workflow will move the report output to the Print element.
6. From the Printer drop-down list, select the server printer you will use with this routing rule.
7. Use the rest of the sheets and fields on this window to indicate how you want the Job Traveler reports to
print on this selected printer.
8. Click OK.
9. You have finished creating the rule. Click the Save and Exit button.
2. Click Save.
3. Users can now select your report style. Navigate to the Job Traveler Report.
Menu Path: Production Management > Job Management > Reports > Job Traveler
4. From the Report Style drop-down list, select the Overdue Jobs option.
5. Notice the Routing check box is active. This indicates the routing rule is active with this style.
Any overdue jobs are sent to the server printer. Your production center can now start working on these priority
jobs.
Rendering Reports
After you have created report styles, defined which companies can display them, and designed any routing rules
you need, users can run the reports.
Selecting a report from the Epicor ERP application menu opens a report window where users decide how they
will render the report. Users can render reports in the following ways:
• Print the report on an SSRS server printer.
• Print the report on a client printer.
• Display the report in a Print Preview window.
• E-mail the report to selected recipients.
• Fax the report to selected recipients.
• Generate the report to view and/or print later from the System Monitor.
You have already explored some of these options previously in this course. This section focuses on how to print
the report on an SSRS printer. It also explores two important functions; sending the report as an email attachment
and generating the report for later viewing/printing.
Printer records within the application identify your available printers. Use Printer Maintenance to define how the
application interacts with each server printer installed within the current company.
The printers you define here display on drop-down lists within Company Maintenance and Workstation
Maintenance to set up auto-printing. You also indicate whether a printer is compatible with SSRS printing. Printers
you indicate use SSRS then display as an option within the SSRS Server Printer window; users launch this window
from each report window.
5. In the Network Path field, enter the path for a printer that is shared on your network.
7. Click Save.
Users can now select this printer from the SSRS Server Printer window.
You can print a hard copy of a report on an SSRS server printer you added through Printer Maintenance.
To send the report to a server printer, you first select the printer and then determine other options for this hard
copy print run, including number of copies, page size, and print resolution.
To display the server printer options for the Job Traveler:
2. For the Report Style, verify Standard - SSRS (or another SSRS report style) displays.
5. Select the SSRS printer you wish to use from the Printer drop-down list. Typically all printers defined as
SSRS printers within Printer Maintenance display on this list. However if specific SSRS printers are defined
for the report style within Report Style Maintenance, these devices are the only options.
6. The From Page and To Page fields indicate the range of pages you will print during this run. The default
1 to 0 option indicates the entire report will print out.
7. The Duplex value indicates whether the report will print on both sides of a sheet. The default setting assigned
on the server printer displays in this field; you cannot change this value.
8. Use the Number Copies field to indicate how many hard copies you want to print out on the server printer.
9. Select the Collate check box to indicate the pages of each report copy print in sequence before the next
copy prints. You can then separate each copy of the report at the printer.
10. Click the Page Setting tab to adjust the layout of the printed page.
11. Select the Color check box to print out the report using color inks.
12. To switch the report orientation from Portrait (up and down) to Landscape (side to side), select the Landscape
check box.
13. The Paper Source Kind drop-down list defines the tray from which the paper is pulled during printing.
Select the option you need from this drop-down list. Options include FormSource, Manual Feed, Upper,
Large Capacity, and so on.
14. The Horizontal Resolution field indicates the resolution in dots per inch the text uses across each page.
If you need, you can adjust this value.
15. Likewise the Vertical Resolution field indicates the resolution in dots per inch the text users from top to
bottom on each page. You can also adjust this value.
16. Use the Paper Size Kind drop-down list to determine the size of the paper loaded into the printer. Options
include Letter, Legal, and so on. Select the paper size you need from this drop-down list.
17. If you select the Custom option from the Paper Size Kind drop-down list, you can modify the Paper Height
and Paper Width dimensions. You modify these dimensions using hundredths of an inch. For example,
paper that is 11 inches tall displays as 1100 in this field.
18. You can send the report as an e-mail attachment and/or a fax during the same print run. Use the E-Mail
sheet to set up the e-mail attachment and the Fax sheet to enter the fax parameters.
Note These features are also available from the report window by clicking the EMail/Fax button. The
following E-Mail a Report and Fax a Report workshops describe how you send the report as an e-mail
attachment and/or a fax.
19. When you finish selecting the server printer options, click OK.
The SSRS report prints out at the server printer using the options you selected on the SSRS Server Printer window.
E-mail a Report
You can immediately send the report as an e-mail attachment. To do this, you click the Email/Fax button on the
toolbar.
When you send a report through e-mail, it generates as an electronic file. You select the type, such as PDF or
Excel, for the file attachment. You then indicate who will receive the e-mail message. When you finish defining
the options, you can then send the report electronically to the e-mail recipients.
2. If the current report style has a routing rule, you need to shut it off. Clear (de-select) the Routing check
box.
4. Verify the E-Mail sheet displays. In the Subject field, enter the reason for the email. For this example, you
enter "Late Jobs". This text will display in the Subject field for the e-mail message.
5. The Attachment Type defines the type of electronic file you will attach to the email. The report generates
using this file type and then attaches the report file to the email. Notice you can select XML, PDF, Word,
and other file format types. Select the PDF option.
6. Enter who will receive this e-mail in the E-Mail To field. You can enter one or multiple e-mail addresses in
this field.
7. Likewise, enter who will receive this e-mail as a courtesy copy in the E-Mail CC field. You can also enter
one or multiple e-mail addresses in this field.
8. You can also enter who will receive this e-mail as a blind courtesy copy in the E-Mail BCC field. You can
enter one or multiple e-mail addresses in this field.
9. Use the E-Mail Body field to enter any additional text you want to include with the report. This text displays
within the message pane on the email window.
10. When you are ready to generate the attachment and send the e-mail, click OK.
Generate a Report
You can generate each report as an electronic file to view and print later. The generated report is available to
preview and print for a period of time you define on the report window.
2. Click the Archive Period drop-down list and select a time period option. This indicates how long the
rendered report remains on the server and displays on the System Monitor. Available options include Day,
Week, and Year.
For this example, you select the Week option. This indicates you can print or preview the instance of the
Job Traveler report for a week. After this week passes, the server will purge this instance of the report.
3. Enter a User Description for this report run. This text displays on the System Monitor to help you identify
this instance of the report.
8. You can print a hard copy of the report by clicking the Print button.
9. To display the report in a preview window, click the Print Preview button. For this workshop, click the Print
Preview button.
® ®
The report displays using the output format you selected. For the example, the report displays in Adobe Reader .
Menu Security
You can restrict who has access to a report by setting up security restrictions in Menu Maintenance. Use this
program to prevent some users from seeing the report icon on their Menu interface.
This workshop only covers a small part of the security features you can leverage in the Epicor ERP application.
You can authenticate the identity of users attempting to login, or call, the application, preventing malicious
access. You can also set up an account lockout policy that defines how many times users can fail to log into the
application. When they pass this Lockout Threshold you define, their user accounts are frozen, or locked, until
a duration of time passes or you manually release the account.
You can also authorize who has access to specific areas of the interface within the Epicor ERP application. This
workshop explores an authorization feature you can activate on a report's Menu icon. You control access to the
user interface through security groups and users. After you assign users to security groups, you can you can then
assign security privileges throughout the application. For example, you may want to prevent access to Payroll
programs for most users. You can use the security privilege tools to only give members of the Payroll security
group access to these programs.
Note To learn about the available security features, review the System Setup and Management course.
You can also review the Security chapter within the Implementation User Guide.
This topic provides a walk through of the Menu Maintenance security features in the Epicor Client.
You use Menu Maintenance for two security functions. You first use it to create Security Identifier (ID) records
that define which users and security groups do and do not have access through this security identifier. You then
select the security identifier (or level) you want for each program icon on the Menu.
2. Click the down arrow next to New on the Standard toolbar; select New Security.
3. Enter the Security ID that you want for this security level.
4. Enter a Description that briefly details the purpose for this security level.
5. Select the Security Manager Access Only check box to indicate that only security managers can access
programs assigned to this security level. No other users are able to see these programs.
Note You should select this option only when you want this ID to override all other security settings.
This option is useful when you are first setting up security, as it blocks all access until you create a
security plan. You indicate which users have security manager rights within User Account
Maintenance.
6. Select the Current Company Only check box to apply this security code against the Menu structure for
the current company. Only users with access through this security code can display and launch the programs
within this company node, but this security code is not applied against other companies. If the Current
Company Only check box is not selected (check box is clear), this security code is applied against all
companies within your Epicor application.
For example, if security code SEC545 is applied against Company A and it has its Current Company Only
check box selected, this level of security is in place and only users with access can expand this company
node and display its programs. This security code does not affect other areas of the Menu.
7. The Disconnected check box indicates whether this Security ID is available to use with Mobile Connect,
enabling you to connect to your database through a mobile device. Only specific security IDs created by
Epicor permit this feature, so you are not able to select this check box on your new security ID.
8. To prevent users within this security group from launching the Epicor application within an internet browser,
select the Exclude Epicor Web Access check box.
9. If you have Localization Developer rights, the Country/Country Group drop-down list appears. Use this
list to select a Country/Country Group code for the security group. All country and country group codes
assigned to the current company display on this drop-down list. If you select a code from this list, users
assigned to this security group will see all localized Menu programs linked to this CGC code, as well as any
Menu programs which do not have a CGC code assigned (null) to them.
10. The Menu Options field displays all the programs that currently use this security level. Because this record
is a new security ID, this field is blank. As you select this security ID for specific programs, this field displays
the selected programs that use this identifier.
11. Select the Allow Access to All Groups/Users check box to give everyone in the company access to programs
that use this security level.
12. To limit this program to specific users and/or groups, you first must clear the Allow Access to All
Groups/Users check box. The Groups/Users and Selected Groups/Users lists become active.
Important Until you add users and/or groups to the Selected Groups/Users list, nobody has access
through this security level. Be sure you are ready to assign security before you clear this check box.
13. In the Groups/Users list, highlight the specific group or user for which you want to give security access
and click the arrow button to move them onto the Selected Groups/Users list.
Note Only groups or users in this list will have access to programs assigned to this security level. Any
groups or users that remain in the Groups/Users list do not have access.
14. To prevent specific users/groups from accessing this security level, click on the Disallow Access tab.
15. Select the Disallow Access to All Groups/Users check box to prevent everyone in the company from accessing
programs assigned to this security level.
16. To disallow security access to specific users and/or groups, you first must clear the Disallow Access to All
Groups/Users check box. The Groups/Users and Selected Groups/Users lists both become active. Note that
until you add users and/or groups to the Selected Groups/Users list, everyone now has access through this
security level. Be sure you are ready to assign security before you clear this check box.
Note Any groups or users that remain in the Groups/Users list have access to the programs assigned
to this security level.
17. Use the arrow buttons to add and remove users from the Selected Groups/Users list.
18. When you finish, click Save and close Menu Maintenance.
If your ERP system administrator/host has granted you direct access to SSRS components and the ERP SQL database,
the procedures in this section describe additional ways of creating reports.
Important This topic or section describes functionality only available to on-premise ERP installations.
You have previously used the Report Builder to modify and design reports. If your Epicor ERP application is in
on-premise network, you also use SSRS Report Manager to administrate reports.
Report Manager and Report Builder can be accesses from either the server where your SQL Server installation is
located or from your Epicor ERP client machine. Because you can launch the Report Builder from the Report
Manager, you have additional capabilities to leverage while you customize SSRS reports. In this section, you can
choose the option for opening Report Manager that matches your environment.
Use this workshop if you are planning on working with Report Manager and Report Builder on the server where
your SQL Server installation is located. Report Manager is easy to find and launch from the Reporting Services
Configuration Manager.
1. On the server where your SQL Server is installed, locate Reporting Services Configuration Manager on
the Apps page or Start menu.
2. Start the Reporting Services Configuration Manager and click Connect to complete the connection to the
report server.
5. Now click the URL displayed in the right pane under Report Manager Site Identification.
Report Manager opens to its Home page, from which you can navigate the directory structure of the report
server. Note that buttons and links at the top of the page provide access to important functions, including
a start button for Report Builder. Also note the help link on the top right, which takes you to the Microsoft
web site for online help and supporting information resources.
7. On the New Folder page, create a folder to support the course workshops in which you will create new
custom reports:
In the workshops, you will save your custom reports to this folder from Report Builder, and point to the
folder to access reports from Epicor ERP.
8. Leave Reporting Services Configuration Manager and Report Manager running so that you can get
back to them easily during the upcoming workshops.
Use this workshop if you are planning on working with Report Manager and Report Builder on your Epicor ERP
client machine. You can connect to Report Manager through your Internet Explorer browser, where you will have
access to all Report Manager functionality, including access to Report Builder.
Important To ensure access to all Report Manager functionality, use Microsoft Internet Explorer running
in compatibility mode, as explained in this procedure.
1. If you do not already have it, obtain the Report Manager URL from your administrator.
As noted in the previous workshop, the URL can be obtained from the Reporting Services Configuration
Manager on the server, if you have access to the server.
3. Do the following to ensure that Internet Explorer is running in compatibility mode and Report Manager
functionality is enabled.
a. Verify that Internet Explorer is running in compatibility mode. For example, in Internet Explorer, open
the Tools menu and verify that Compatibility View is selected. You also can click the Compatibility
icon in the browser's address bar.
b. Hover your mouse over the Reports folder and click the arrow on the right to verify that the drop-down
menu displays. Inability to access the drop-down menus for folders and individual reports is the most
common problem if your browser is not in compatibility mode.
5. On the New Folder page, create a folder to support the course workshops in which you will create new
custom reports:
In the workshops, you will save your custom reports to this folder from Report Builder, and point to the
folder to access reports from Epicor ERP.
6. Leave the browser running with Report Manager displayed so that you can get back to it easily during the
upcoming workshops.
Open the Report Builder authoring tool and verify the connection to the SQL Server report server.
1. Ensure the Report Manager tool is open, as described in the previous workshops.
2. Click Report Builder at the top of the Report Manager Home page.
If you get a Do you Want to Run App message, click Run.
Report Builder is downloaded automatically if it is not already available. If a download is initiated, accept
any prompts to continue.
3. If a Getting Started page displays, select the Don't show this dialog box at startup check box and then
close the dialog box.
4. Click the Report Builder button (upper left corner of window) and then click Options.
The Report Builder Options window displays.
5. In Use this report server or SharePoint site by default, verify that the web service url is set for your SQL
Server report server.
In your work environment, the report server URL on this screen must always match the URL set for your SQL
Server report server in the Reporting Services Configuration Manager. Since you started Report Builder from
Report Manager, this URL should be set automatically and should not require adjustment.
Important If there is no value in the field or when in doubt about the value shown, open Reporting
Services Configuration Manager on the server and select Web Service URL on the left pane. Your
Report Builder options must match the URL displayed under Report Server Web Service URL. If you
are working from your Epicor ERP client and do not have access to server, contact your administrator
to obtain the correct URL.
7. To verify that you have a functioning connection to your report server, click the Report Builder button
(upper left corner of window) again and click Open.
The Open Report dialog box displays.
The web service URL for your report server should be displayed in the Look in field and the folder
XXXMyCustomReports that you created in the previous workshops should be available in the selection
pane.
If not, click Recent Sites and Servers on the left and then click your report server URL in the selection
pane.
In this workshop you will create a datasource in Report Manager to the ERP SQL Server database that you will
use in later workshops.
1. Ensure the Report Manager tool is open, as described in the previous workshops.
5. For Data source type, confirm the field is set to Microsoft SQL Server.
7. For Connect using, select Credentials stored securely in the report server. For User name, enter sa,
and for Password, the corresponding password for the sa user.
8. Click Test Connection, and after the success message, click OK.
Note In production you may use other credentials options, and using the sa account is not
recommended.
In these workshops, you will create a parts list report, save the report on the SSRS report server, and enable access
to the report through the menu system in the Epicor ERP application.
You will create a report that displays a parts list. You will then deploy the report and add it to the menu system
in your Epicor application.
2. To start Report Builder, click Report Builder at the top of the Report Manager Home page.
3. In Report Builder, click the Report Builder button (upper left corner of window) and then click New.
The New Report or Dataset window displays.
4. Verify that New Report is selected in the left pane and click Table or Matrix Wizard on the right.
5. If you are presented with the Choose a dataset screen, verify that Create a dataset is selected and click
Next.
Continue with the next step if this screen does not display.
6. On the Choose a connection to a data source screen, select the EpicorERP datasource you created
previously. Click the Browse... button.
The Select Data Source window displays.
7. Open the XXXMyCustomReports folder you created previously (where XXX are your initials).
11. When prompted for Data Source credentials, enter the credentials you used when creating the data source
and click OK.
You next create the query that pulls the data that displays on the report.
1. In the Design a Query screen, expand the folder for your training database, expand ERP>Tables, locate
the Part table, and expand the table to view its fields.
2. Select the following fields: Company, PartNum, PartDescription, ClassID, TypeCode, and UnitPrice.
As they are selected, the fields display in the Selected Fields pane.
4. Click Next.
5. Now in the Arrange fields screen, click and drag all the fields in the Available fields column to the Values
column.
6. Click Next.
The Choose the layout screen displays.
9. Click Finish.
The wizard closes and the table you have created displays in the Report Builder design view. At this point
you have a tabular report with a defined data source and data set.
1. Above the table, click on Click to add title and type Parts Report.
2. On the Home tab, select Run to preview what the report will look like.
3. Click the Report Builder button (upper left corner of window) and select Save As.
The directory structure of your report server displays. If not, click Recent Sites and Servers on the left and
then click your report server URL in the selection pane.
7. Place your cursor in the browser address window and copy the entire URL. You will use it in the next exercise.
Add your report to the menu system in your Epicor ERP application.
3. On the Menu Maintenance tree, navigate to: Main Menu > Material Management > Inventory
Management > Reports. Verify Reports is highlighted.
5. In the Menu ID field, enter UDXXX01 (where XXX are your initials).
Important Be sure to use a UD prefix when adding a menu ID. The UD prefix stands for User Defined,
and it is standard practice to use this prefix when adding a custom program to the menu.
6. In the Name field, enter XXX My Parts List Report (where XXX are your initials).
8. Click the Program Type drop-down menu and select URL Link.
Note The SSRS Custom Report Link program type is for use with the legacy SSRS Portal from earlier
ERP versions.
9. In the Program field, paste the report URL from the last step of the previous exercise.
Note If the URL is not in your computer clipboard, repeat the last step of the previous exercise.
11. Log out and log back into the Epicor application.
12. Open the XXX My Parts List Report report program window (where XXX are your initials).
Menu Path: Material Management > Inventory Management > Reports > XXX My Parts List Report
13. The report displays in your internet browser. If the report doesn't immediately display with data, click the
View Report button.
Add Parameters
In this workshop, you will create and test parameters for your report that filters the report data based on minimum
and maximum values for unit price.
Parameters can be added to your custom report as a filter option to show/hide data before printing. The main
thing to remember when adding a parameter is to be aware of the data you are filtering. The types of data you
can filter when adding a parameter consists of text, boolean (true/false), date/time, integer and float.
In this workshop, you add parameters to the parts list report you just created.
Create Parameters
Create two parameters for filtering the report on minimum and maximum values.
1. In Report Manager, navigate to XXXCustomReports, hover your mouse over MyPartsListReport, click
the arrow on the right, and then choose Edit in Report Builder.
Report Builder opens with your report displayed.
2. To create the minimum value parameter, right-click on Parameters in the Report Data pane and select
Add Parameter.
The Report Parameter Properties window displays.
a. In the Name field, enter UnitPriceFilter1. This name will not be visible on the report, just visible under
the Report Data pane.
b. In the Prompt field, enter Unit Price Sort Minimum. This name will be visible to the report user.
4. Now from the left pane, select Default Values and make the following adjustments:
5. Click OK.
You can now see your parameter in the Report Data pane under the Parameters tree.
6. To create the maximum value parameter, right-click Parameters in the Report Data pane and select Add
Parameter.
8. Now from the left pane, select Default Values and make the following adjustments:
9. Click OK.
You can now see your parameter in the Report Data pane under the Parameters tree.
11. Remain in Report Builder with MyPartsListReport displayed and go to the next exercise.
1. In Report Builder, verify that you are on the Home tab and MyPartsListReport is displayed.
2. In the Report Data pane, expand Datasets, right-click DataSet1 and select Dataset Properties.
3. Select Filters.
12. Verify your cursor is in the new filter you just created, click the Expression drop-down menu and select
[UnitPrice].
20. Remain in Report Builder with MyPartsListReport displayed and go to the next exercise.
Generate the report and test the parameters you just created.
1. In Report Builder, verify that you are on the Home tab and MyPartsListReport displays.
3. You can experiment with entering other values into the Unit Sort Price Minimum and Unit Sort Price
Maximum fields, clicking Refresh to update the displayed data based on the new values.
For the next exercise, remain in the Report Builder with the MyPartsListReport report displayed.
To make it easier to review the report, you can group the data using values you select. During this next exercise,
you will organize the Part Listing report based on the Part Type values.
You can further organize the report data by creating row and column groups. You can then group related records
together in the same area of the report.
1. In Report Builder, verify that you are on the Home tab and MyPartsListReport is displayed.
3. In the Row Groups pane at the bottom of the Report Builder window, right-click to display the context
menu. Select Add Group > Parent Group.
The Tablix group window displays.
6. Click OK.
A new row appears on the grid. You can now group the part records using the Part Type values (the Manufactured,
Purchased, and Sales Kit part types).
To complete the row group, you now format the report to make it easier to read.
1. Click and drag the [TypeCode] column into one of the empty cells in this new row.
3. Right-click this row; from the context menu, select Merge Cells.
The [TypeCode] value displays across all cells in the row. This causes the value to appear once in the row,
creating a cleaner looking report.
5. Add a color to the Group By row to help it stand out. Click the Fill button and select a color of your choice.
8. You next add a subheader that helps identify the columns within your group. Right-click the row; from the
context menu, select Insert Row > Inside Group - Below.
A new row displays under the [TypeCode] row.
9. In the columns, enter Company, Part, Description, Class, and Price respectively.
The report now displays the parts in three groups -- one for Sales Kit parts (K), one for Manufactured parts (M),
and one for Purchased parts (P).
In this workshop, you will create a new calculated field that multiplies the Unit Price by an exchange rate, and
you will add a new column to the report to display the calculated foreign currency values.
When creating reports, users may want information that is not directly available from the database. It often is
possible to make the required information available by adding calculated fields to the report.
2. Verify that you have the MyPartsListReport open and are on the Home tab.
4. Working with the new blank row at the bottom of the list, enter UnitPriceForeign in the Field Name
column.
7. Double-click UnitPrice.
15. Remain in Report Builder with MyPartsListReport displayed and go to the next exercise.
1. In Report Builder, verify that you are on the Home tab and MyPartsListReport is displayed.
6. Click the icon that displays on the right side of the field to view the field chooser.
7. Select UnitPriceForeign.
The new column with calculated value is now part of the report.
8. Adjust the Unit Price and Unit Price Foreign column placeholders to display values to two decimal places:
a. In the Unit Price column, select the placeholder (text) in the second row, right click and choose
Placeholder Properties.
c. In the Category list, choose Number and accept the default configuration of 12345.00.
9. Click Run.
Notice the new column with a conversion calculation displayed for each part.
Optionally, take a few minutes to view the parts list report with its added features in the Epicor ERP application.
1. If you are not already logged in, start the Epicor ERP application.
If prompted, enter manager for both user name and password.
2. Open the XXX My Parts List Report report program window (where XXX are your initials).
Menu Path: Material Management > Inventory Management > Reports > XXX My Parts List Report
4. Note that the report includes the column with calculated field.
5. Experiment with changing the parameter values at the top of the window and clicking View Report.
6. Close the print preview and report program windows. You can leave the application running for later
exercises.
In these workshops, you create an SSRS report that combines three separate reports to display a single report.
The first is the main report that displays general information about a user-selected customer. The second and
third reports are subreports embedded in the main report. Based on values passed from the main report into
subreport parameters, the subreports display detailed information about the selected customer's call activity and
open orders.
Important The reports in this workshop require four CRM call records that exist in the EPIC06 - Epicor
Education company/site. If you are not working in the EPIC06 company and demonstration database, you
will need to ensure that you have valid customer, call, and order records to support creating and viewing
the reports.
You first create the main customer report, add report parameters, and adjust format.
2. To start Report Builder, click Report Builder at the top of the Report Manager Home page.
3. In Report Builder, ensure that the Properties pane is displayed on the right hand side of the window.
If not, go to the View tab, select Properties, and then go back to the Home tab.
4. Click the Report Builder button (upper left corner of window) and then click New.
The New Report or Dataset window displays.
5. Verify that New Report is selected in the left pane and click Table or Matrix Wizard on the right.
6. If you are presented with the Choose a dataset screen, verify that Create a dataset is selected and click
Next.
Continue with the next step if this screen does not display.
7. On the Choose a connection to a data source screen, select the EpicorERP datasource you created
previously.
8. Click Next.
9. When prompted for Data Source credentials, enter the credentials you used when creating the data source
and click OK.
You now create the query for the Customer Main Report.
1. In the Design a Query screen, expand the folder for your training database (for example, ERP), expand
Tables, locate the Customer table, and expand the table to view its fields.
2. Select the following fields: Company, CustID, CustNum, Name, Address1, City, State, and Zip. As they
are selected, the fields display in the Selected Fields pane.
4. Click Next.
5. Now in the Arrange fields screen, click and drag all the fields in the Available fields column to the Values
column.
6. Click Next.
The Choose the layout screen displays.
9. Click Finish.
The wizard closes and the report displays on the Report Builder Home tab. At this point you have a tabular
report with defined data source and data set.
1. In the Report Data pane, adjust the name that has been assigned automatically to the new dataset:
a. Under Datasets, right-click the new dataset (the default name is DataSet1) and select Dataset
Properties.
2. Verify that the report table is updated to use the new dataset name:
b. Right-click the top left corner of the grey area and choose Tablix Properties.
c. For Dataset name, verify that CustomerDS is selected and click OK to close the dialog box.
Remain in Report Builder with the CustomerInfo report displayed and go to the next exercise.
Add Parameters
Add parameters and supporting dataset filters that enable the report user to select the Epicor company and
customer on which the report is based.
1. In Report Builder, verify that you are on the Home tab and the CustomerInfo report is displayed.
a. Right-click Parameters in the Report Data pane and select Add Parameter.
b. In the Report Parameter Properties dialog box, select General and make the following adjustments:
• For Name, enter Company.
• For Prompt, enter Epicor Company ID.
• For Data Type, verify that Text is selected.
d. Click OK.
a. Right-click Parameters in the Report Data pane and select Add Parameter.
• Click Add and, for both Label and Value, enter CLARKE.
• Click Add and, for both Label and Value, enter DALTON.
e. Click OK.
To create the dataset filters for the new parameters, do the following:
1. In the Report Data pane, right-click CustomerDS under Datasets and select Dataset Properties.
2. Select Filters.
3. Click Add.
6. For Value, click the fx button and make the following adjustments in the Expression dialog box:
7. Back at the Dataset Properties window, verify that you are still on Filters and click Add.
10. In the Value field, click the fx button and make the following adjustments in the Expression dialog box:
1. Click Run.
The report generates based on the default parameter values. You may see some formatting issues. Format
adjustments are the subject of the next exercise.
2. Optionally, to display a different customer, select it from the Customer ID drop-down menu and click View
Report. To change the company, manually replace the default value.
Remain in Report Builder with the CustomerInfo report displayed and go to the next exercise.
1. In Report Builder, verify that you are on the Home tab and the CustomerInfo report is displayed.
2. Hover over the bottom edge of the report body (initially aligned with the table bottom) to display the drag
icon then drag the report body bottom edge down to about 6 inches, as indicated on the vertical ruler.
This will give you some room when you later add the subreports.
4. Adjust the column headings. In the header row, select and change heading text as follows:
• CustID to Customer ID
• Name to Customer
• Address1 to Address
b. Right-click the bar above the CustNum column and select Column Visibility.
c. In the Column Visibility dialog box, choose Hide and click OK.
The CustNum column does not display. Also the report body height adjustment you made is not seen
because you have not yet added anything to that area. Look for column headers that wrap due to the name
changes you just made.
8. If needed to correct line wrap in column headers, select columns and drag the sides to adjust their width.
Retest and readjust as needed.
9. Optionally, do the following to familiarize yourself with the properties for controlling table cell automatic
sizing:
a. Right-click any cell and choose text box properties to display the Text Box Properties dialog box (cells
are text box objects by default).
b. In the General properties, under Sizing Options, note that Allow height to increase is selected by
default.
This property, which controls the <CanGrow> element in the report's .rdl file, enables the text box to
grow vertically to display its entire contents when the report is viewed. The companion Allow height
to decrease option controls the <CanShrink> property. These properties also can be seen and adjusted
in the Properties pane when you have a text box selected.
Remain in Report Builder with the CustomerInfo report displayed and go to the next exercise.
In this exercise, you work in Report Builder to create a report that displays Epicor CRM call details for the customer
currently displayed in the main report. In a later workshop, this report will be embedded as a subreport in the
main report.
Working in Report Builder, create the report that later will become the call activity subreport.
3. Verify that New Report is selected in the left pane and click Table or Matrix Wizard on the right.
4. If you are presented with the Choose a dataset screen, verify that Create a dataset is selected and click
Next.
Continue with the next step if this screen does not display.
5. On the Choose a connection to a data source screen, select the EpicorERP datasource you created
previously.
6. Click Next.
7. When prompted for Data Source credentials, enter the credentials you used when creating the data source
and click OK.
You next create the query for the Call Activity subreport.
1. In the Design a Query screen, expand the folder for your training database (for example, ERP), expand
Tables, locate the CRMCall table, and expand the table to view its fields.
4. Click Next.
5. Now in the Arrange fields screen, click and drag all the fields in the Available fields column to the Values
column.
6. Click Next.
7. Click Next.
The Choose the layout screen displays.
1. In the Report Data pane, adjust the name that has been assigned automatically to the new dataset:
a. Under Datasets, right-click the new dataset (the default name is DataSet1) and select Dataset
Properties.
Remain in Report Builder with the CRMActivity report displayed and go to the next exercise.
Add Parameters
Add the parameters that will receive, from the main report, the company and customer number on which the
subreport data display is based.
1. In Report Builder, verify that you are on the Home tab and the CRMActivity report is displayed.
2. Right-click Parameters in the Report Data pane and select Add Parameter.
3. Set up the customer parameter. In the Report Parameter Properties dialog box, select General and make
the following adjustments:
4. Click OK.
5. Right-click Parameters in the Report Data pane and select Add Parameter.
6. Set up the customer number parameter, Select General and do the following:
7. Click OK.
Next add the supporting dataset filters that will define the data this subreport will receive.
To create the dataset filters for the new parameters, do the following:
1. In the Report Data pane, right-click CRMActivityDS under Datasets and select Dataset Properties.
2. Select Filters.
3. Click Add.
6. For Value, click the fx button and make the following adjustments in the Expression dialog box:
7. Back at the Dataset Properties window, verify that you are still on Filters and click Add.
10. In the Value field, click the fx button and make the following adjustments in the Expression dialog box:
1. Click Run.
Remain in Report Builder with the CRMActivity report displayed and go to the next exercise.
1. In Report Builder, verify that you are on the Home tab and the CRMActivity report is displayed.
2. Select and delete the [&ExecutionTime] text box that was added by default when the report was created.
a. Select the report title text box (not the text), right-click and choose Text Box Properties.
b. In the Text Box Properties window, select Font, select 14pt under Size, and click OK.
4. Configure the Company and CallCustNum columns to be hidden in the generated report.
These columns support the report parameters but do not need to be displayed. Do the following:
b. Right-click the bar above the Company column and select Column Visibility.
5. Adjust the column headings. In the header row, select and change heading text as follows:
• CallDesc to Subject
• CallText to Summary
• SalesRepCode to Sales Rep
• CallTypeCode to Call Type
• LastDate to Date
a. In the Date column, select [LastDate], right-click, and select Placeholder Properties.
b. In the Placeholder Properties dialog box, select Number, select Date, and select *1/31/2000.
c. Click OK.
7. Working in the grey bar at the top of the table, drag the right side of the Summary column to provide
more room for several sentences of written comments, which is typical for the data in this field.
Remember that the Company and CallCustNum columns will be hidden in the generated report, making
more room for the wider column.
a. Click Run.
10. You are now done testing this subreport, so go back to the parameter properties and switch them to hidden.
a. Right-click the CRMActivityCompany parameter in the Report Data pane and select Parameter
Properties.
b. In the Report Parameter Properties dialog box, verify that General is selected and select Hidden under
Select parameter visibility.
c. Click OK.
Remain in Report Builder with the CRMActivity report displayed and go to the next exercise.
In this exercise, you work in Report Builder to create a report that displays open order for the customer currently
displayed in the main report. In a later workshop, this report will be embedded as a subreport in the main report.
Working in Report Builder, create the report that later will become the open orders subreport.
3. Verify that New Report is selected in the left pane and click Table or Matrix Wizard on the right.
4. If you are presented with the Choose a dataset screen, verify that Create a dataset is selected and click
Next.
Continue with the next step if this screen does not display.
5. On the Choose a connection to a data source screen, select the EpicorERP datasource you created
previously.
6. Click Next.
7. When prompted for Data Source credentials, enter the credentials you used when creating the data source
and click OK.
1. In the Design a Query screen, expand the folder for your training database (for example, ERP), expand
Tables, locate the OrderHed table, and expand the table to view its fields.
2. Select the following fields: OpenOrder, Company, CustNum, OrderDate, TotalLines, and OrderAmt.
As they are selected, the fields display in the Selected Fields pane.
4. Click Next.
5. Now in the Arrange fields screen, click and drag all the fields in the Available fields column to the Values
column.
6. Click Next.
The Choose the layout screen displays.
9. Click Finish.
The wizard closes and the report displays on the Report Builder Home tab. At this point you have a tabular
report with defined data source and data set.
1. In the Report Data pane, adjust the name that has been assigned automatically to the new dataset:
a. Under Datasets, right-click the new dataset (the default name is DataSet1) and select Dataset
Properties.
5. Navigate to XXXMyCustomReports (where XXX are your initials) and save the report as OpenOrder.
6. Remain in Report Builder with the OpenOrder report displayed and go to the next exercise.
Add Parameters
Add parameters that will receive, from the main report, the company and customer number on which the
subreport data display is based.
1. In Report Builder, verify that you are on the Home tab and the OpenOrder report is displayed.
2. Right-click Parameters in the Report Data pane and select Add Parameter.
3. Set up the customer parameter. In the Report Parameter Properties dialog box, select General and make
the following adjustments:
d. For Select parameter visibility, leave Visible selected. As with the other subreport, having the
parameters visible during development allows you to test the report.
4. Click OK.
5. Right-click Parameters in the Report Data pane and select Add Parameter.
6. Set up the customer number parameter, Select General and do the following:
d. For Select parameter visibility, leave Visible. Again, this is to allow testing.
7. Click OK.
Add a data filter that will limit the report to open orders.
To create the dataset filters needed for this report, do the following:
1. In the Report Data pane, right-click OpenOrderDS under Datasets and select Dataset Properties.
2. Select Filters.
3. Click Add.
6. For Value, click the fx button and make the following adjustments in the Expression dialog box:
7. Back at the Dataset Properties window, verify that you are still on Filters and click Add.
10. In the Value field, click the fx button and make the following adjustments in the Expression dialog box:
11. Back at the Dataset Properties window, verify that you are still on Filters and click Add.
12. For Expression, click the drop-down menu and select [OpenOrder].
1. Click Run.
Remain in Report Builder with the OpenOrder report displayed and go to the next exercise.
1. In Report Builder, verify that you are on the Home tab and the OpenOrder report is displayed.
2. Select and delete the [&ExecutionTime] text box that was added by default when the report was created.
a. Select the report title text box (not the text), right-click and choose Text Box Properties.
b. In the Text Box Properties window, select Font, select 14pt under Size, and click OK.
4. Configure the OpenOrder, Company and CustNum columns to be hidden in the generated report.
These columns support the report parameters and filtering but do not need to be displayed. Do the following:
b. Right-click the bar above the OpenOrder column and select Column Visibility.
5. Adjust the column headings. In the header row, select and change heading text as follows:
• OrderDate to Date
• TotalLines to Total Lines
• OrderAmt to Amount (Adjust the column width to show the heading on one line.)
a. In the Date column, select [OrderDate], right-click, and select Placeholder Properties.
b. In the Placeholder Properties dialog box, select Number, select Date, and select *1/31/2000.
c. Click OK.
a. Click Run.
9. You are now done testing this subreport, so go back to the parameter properties and switch them to hidden.
a. In the Report Data pane, right-click the OpenOrderCompany parameter and select Parameter
Properties.
b. In the Report Parameter Properties dialog box, verify that General is selected and select Hidden under
Select parameter visibility.
c. Click OK.
The parameters are set to Hidden because passing of parameters from the main report into the subreport
is automatic and the parameters do not need to be displayed. In hidden mode, there is no prompting for
user input and it will not be possible to display the report on its own as there are no default parameter
values. When the report is added as a subreport to the main report in a later exercise, you will configure
the parameter relationships between the main report and subreport.
Note that the values you set for Prompt are there only to support making the parameters visible for test
purposes. This is demonstrated later in the exercise when you switch the parameters to visible so that you
can test the report.
Remain in Report Builder with the OpenOrder report displayed and go to the next exercise.
In this exercise, embed the subreports and configure the report parameters that will enable passing, from the
main report, values on which the data displayed in the subreports is based.
3. Navigate to the XXXMyCustomReports folder (where XXX are your initials) and open the CustomerInfo
report.
The CustomerInfo report displays on the Home tab.
a. Select the Insert tab, click Subreport, and then click in the report, below the report table.
A new subreport placeholder displays.
b. Ensure that the subreport placeholder is selected, hover to enable the move icon, and drag the subreport
placeholder to the left edge of the report body and slightly below the table.
6. In the Subreport Properties window, ensure that General is selected and do the following:
b. In the Use this report as a subreport field, click Browse, and then navigate to your CRMActivity
report.
d. Click Open.
7. Select Parameters and do the following to configure the subreport parameters that are the links for passing
values from the main report into the subreport:
a. Click Add.
c. For Value, from the drop down list, select =First(Fields!Company.Value, "CustomerDS") (the main
report field holding the required value).
In all of the parameter value selections in this exercise, the listed expressions are based on the fields in
the report dataset. You also could click fx and manually enter or edit the expression.
d. Click Add.
f. For Value, from the drop down list, select =First(Fields!CustNum.Value, "CustomerDS") (the main
report field holding the required value).
1. Create the second subreport item, which is for the open orders report.
a. Select the Insert tab, click Subreport, and then click in the report, below the report table and to the
right of the first subreport.
A new subreport item displays.
b. Ensure that the subreport item is selected, hover to enable the move icon, and drag the report to place
it slightly to the right of the other subreport, with the tops of the two reports aligned.
You also can select both subreport items, right-click, and choose Layout > Align Tops.
3. In the Subreport Properties window, ensure that General is selected and do the following:
4. Select Parameters and do the following to configure the subreport parameters that are the links for passing
values from the main report into the subreport:
a. Click Add.
c. For Value, from the drop down list, select =First(Fields!Company.Value, "CustomerDS") (the main
report field holding the required value).
d. Click Add.
f. For Value, from the drop down list, select =First(Fields!CustNum.Value, "CustomerDS") (the main
report field holding the required value).
10. Place your cursor in the browser address window and copy the entire URL. You will use it in the next exercise.
Add the main report to the menu system in your Epicor application.
2. From the Main Menu, navigate to Epicor Education > Main Plant > System Management > Security
Maintenance > Menu Maintenance.
3. From Menu Maintenance, navigate to: Main Menu > Material Management > Inventory Management
> Reports. Make sure Reports is highlighted.
6. In Name, enter XXX My Customer Information Report where XXX are your initials.
8. In Program Type, select the drop down menu and chose URL Link.
9. In Program, paste the main report URL that you copied in the last step of the previous exercise. If the
URL is no longer in your computer clipboard, repeat the last steps of the previous exercise to copy the URL
again.
11. Log out, and log back into the Epicor application.
12. From the Main Menu, navigate to Epicor Education > Main Plant > Material Management > Inventory
Management > Reports.
13. Double-click the XXX My Customer Information Report report (where XXX are your initials) on the right
hand side to open the report's program window.
The Customer Information Report displays in your browser.
14. To display different customer records, click the Customer ID drop-down list, select a different customer,
and click the View Report button.
The report updates with both the call activity and the open orders for the selected customer.
Conclusion