SQL Server Reporting Services SSRS
SQL Server Reporting Services SSRS
Disclaimer
This document is for informational purposes only and is subject to change without notice. This document and its
contents, including the viewpoints, dates and functional content expressed herein are believed to be accurate as of its
date of publication. However, Epicor Software Corporation makes no guarantee, representations or warranties with
regard to the enclosed information and specifically disclaims any applicable implied warranties, such as fitness for a
particular purpose, merchantability, satisfactory quality or reasonable skill and care. As each user of Epicor software is
likely to be unique in their requirements in the use of such software and their business processes, users of this document
are always advised to discuss the content of this document with their Epicor account manager. All information contained
herein is subject to change without notice and changes to this document since printing and other important information
about the software product are made or published in release notes, and you are urged to obtain the current release
notes for the software product. We welcome user comments and reserve the right to revise this publication and/or
make improvements or changes to the products or programs described in this publication at any time, without notice.
The usage of any Epicor software shall be pursuant to an Epicor end user license agreement and the performance of
any consulting services by Epicor personnel shall be pursuant to Epicor's standard services terms and conditions. Usage
of the solution(s) described in this document with other Epicor software or third party products may require the purchase
of licenses for such other products. Where any software is expressed to be compliant with local laws or requirements
in this document, such compliance is not a warranty and is based solely on Epicor's current understanding of such laws
and requirements. All laws and requirements are subject to varying interpretations as well as to change and accordingly
Epicor cannot guarantee that the software will be compliant and up to date with such changes. All statements of
platform and product compatibility in this document shall be considered individually in relation to the products referred
to in the relevant statement, i.e., where any Epicor software is stated to be compatible with one product and also
stated to be compatible with another product, it should not be interpreted that such Epicor software is compatible
with both of the products running at the same time on the same platform or environment. Additionally platform or
product compatibility may require the application of Epicor or third-party updates, patches and/or service packs and
Epicor has no responsibility for compatibility issues which may be caused by updates, patches and/or service packs
released by third parties after the date of publication of this document. Epicor is a registered trademark and/or
trademark of Epicor Software Corporation in the United States, certain other countries and/or the EU. All other
trademarks mentioned are the property of their respective owners. Copyright Epicor Software Corporation 2014.
All rights reserved. No part of this publication may be reproduced in any form without the prior written consent of
Epicor Software Corporation.
ED907905
90521-10-1606-58310700
10.0.700
Revision: June 08, 2014 6:10 p.m.
Total pages: 64
course.ditaval
Contents
Contents
SQL Server Reporting Services for Epicor ERP Course.........................................................5
Before You Begin....................................................................................................................6
Audience.........................................................................................................................................................6
Prerequisites....................................................................................................................................................6
Environment Setup..........................................................................................................................................6
Contents
Conclusion.............................................................................................................................63
Audience
Specific audiences will benefit from this course.
System Administrator
IT/Technical Staff
Report Writers
Business Analysts
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
at [email protected]. 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.
Verify, or ask your system administrator to verify, that you have access to the SSRS Reporting Services
Configuration Manager, Report Manager, and Report Builder for your SQL Server report server. You access
to these tools must include sufficient user role assignments to create folders and save report files on the
report server.
The administrator sets user role assignments in the Report Manager Folder Settings page. It is recommended
that your user account have all roles selected. This includes Browser, Content Manager, My Repots, Publisher,
and Report Builder.
Ensure that security for the root Reports folder is inherited from Parent Security or is otherwise appropriately
defined to allow user access.
The course workshops for developing custom reports and modifying an Epicor shipped SSRS report use
Report Builder starting from Report Manager. The course workshop for developing a BAQ report uses Report
Builder starting from within the Epicor ERP application. In each scenario, SSRS will download Report Builder
automatically if it is not found on the system where you are working.
3.
Verify, or ask your system administrator to verify, that the security configuration of the SQL Server instance
in which your training database is located includes a login with sufficient permissions to access the data
used in the workshop.
4.
In the Windows Services control panel, verify, or ask your administrator to verify, that Epicor SQL Report
Monitor Service is running and the Show Report Parameters option is enabled in the report monitor's
configuration.
5.
Log in to the training environment using the credentials manager/manager. 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.
6.
7.
8.
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.
Menu Path: Material Management > Inventory Management > Setup > Part
1. From the Help menu, select Field Help.
In the tree view pane, the Field Help sheet displays. It automatically opens in an undocked position.
2. Place the cursor in the Field Help sheet header and click the push pin icon to dock the Field Help window.
3. Place the cursor in the Description field.
4. In the Field Help sheet, click Technical Details and view the information.
You can adjust the Field Help width to see the fields properly.
5. 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>.
6. 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.
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.
10
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. 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
In the table selection process, it is important to link tables together. Use one or more common fields to aid in
reporting by selecting field data from multiple tables to create links.
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.
Table Link Requirements
Table link requirements involve linking from one table to another. The from table is the primary table, while the
to table is the lookup table where records are looked up by the primary table. For example, if the Quote is the
primary table, the querying or reporting tool chronologically goes field by field through the Quote table and
searches for matching records in the second table, which can be customers, until all fields are evaluated.
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.
11
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.
Note Always use the Company field as it is the first indexed field and it is located at the top of the Epicor
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, it is an indexed field and you must
select it as one of the fields to use 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.
12
13
14
6. Leave the browser running with Report Manager displayed so that you can get back to it easily during the
upcoming workshops.
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
XXXCustomReports 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.
8. Click Cancel to close the Open Report dialog box.
9. Exit Report Builder.
15
16
17
3. On the Menu Maintenance tree, navigate to: Main Menu > Material Management > Inventory
Management > Reports. Verify Reports is highlighted.
4. Select File > New > New Menu.
5. 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.
6. In the Name field, enter XXX My Parts List Report (where XXX are your initials).
7. In the Order Sequence field, enter 997.
8. Click the Program Type drop-down menu and select SSRS Custom Report Link.
9. In the Report field, enter \XXXCustomReports\MyPartsListReport (where XXX are your initials).
The Epicor installation is configured to connect to the SQL Server reporting server via the reporting server's
URL. Make sure that the report path and report name you enter here match the folder structure and name
that you have set up on the report server.
10. Click Save and click OK if you get a security update message.
11. Log out and log back into the Epicor application.
This ensures you do not have to wait for an automatic update.
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. Now define how you want the report to display in the print preview. To do this, click the Output Format
drop-down list and select the PDF option.
18
Tip Notice you can preview the report through several options, including Excel, Word, XML, and EMF.
If you select the EMF option, you display the report using the Altec Advanced Print Management
tool.
19
6. To create the maximum value parameter, right-click Parameters in the Report Data pane and select Add
Parameter.
7. Select General and make the following adjustments:
a. In the Name field, enter UnitPriceFilter2.
b. In the Prompt field, enter Unit Price Sort Maximum.
c. Click the Data Type drop-down menu and click Integer.
8. Select Default Values and make the following adjustments:
a. Select Specify Values.
b. Click Add and replace [Null] with 400.
9. Click OK.
You can now see your parameter in the Parameters tree in the Report Data pane.
10. Click the Report Builder button and select Save.
11. Remain in Report Builder with MyPartsListReport displayed and go to the next exercise.
20
21
3. Click on the report table (the header and placeholder rows) so the gray bars appear.
4. On the left side of the table (in the gray fields), click the gray box in the first line of data to highlight the
entire row.
5. Go to the Properties pane on the right hand side.
6. Navigate to Fill > BackgroundColor.
7. Click the BackgroundColor drop-down menu and select Expression.
8. In the Set Expression for: BackgroundColor field, enter the following:
=iif(RowNumber(Nothing) Mod 2, "Silver", "White")
9. Click OK.
10. Click the Report Builder button and select Save.
11. Click the Home tab and then click Run to view your results.
Notice every other row is colored gray. This format could provide contrast that could help the user when
reading the report.
12. Click Design to return to the Home tab.
13. Remain in Report Builder with the MyPartsListReport report displayed for the next exercise.
22
11. Click the Home tab and then click Run to view your results.
Notice that all Type Code values labeled P are turquoise, M are yellow, and everything else is white.
12. Click Design to return to the Home tab.
13. Remain in Report Builder with the MyPartsListReport report displayed for the next exercise.
23
24
5. Experiment with changing the parameter values at the top of the window and clicking View Report.
Important For parameters to display in the report, the Show Report Parameters option must be
enabled in the Epicor SQL Report Monitor configuration.
6. Close the print preview and report program windows. You can leave the application running for later
exercises.
25
26
27
28
29
c. For Dataset name, verify that CustomerDS is selected and click OK to close the dialog box.
22. Click Run to verify that the report displays without error.
At this point, the report is retrieving an unfiltered list of matching records in the data source .
23. Click Design to return to the Home tab.
24. Click the Report Builder button 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.
25. Navigate to XXXCustomReports and save the report as CustomerInfo.
26. Remain in Report Builder with the CustomerInfo report displayed and go to the next exercise.
30
31
The report is generated based on the default parameter values. You may see some formatting issues. Format
adjustments are the subject of the next exercise.
8. 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.
9. Click Design to return to the Home tab.
10. Remain in Report Builder with the CustomerInfo report displayed and go to the next exercise.
32
33
34
16. In the Choose a style screen, accept the default or choose a style.
17. 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.
18. 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.
b. Select Query and change the value in Name to CRMActivityDS.
c. Click OK to close the Dataset Properties dialog box.
19. Click Run to verify that the report displays without error.
At this point, the report is retrieving an unfiltered list of matching records in the data source .
20. Click Design to return to the Home tab.
21. Click the Report Builder button 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.
22. Navigate to XXXCustomReports and save the report as CRMActivity.
23. Remain in Report Builder with the CRMActivity report displayed and go to the next exercise.
35
e. Set up the customer number parameter, Select General and do the following:
For Name, enter CRMActivityCustNum.
For Prompt, enter Customer Number.
For Data Type, verify that Integer is selected.
For Select parameter visibility, select Hidden.
f. 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.
3. Click the Report Builder button and select Save.
4. To create the dataset filters for the new parameters, do the following:
a. In the Report Data pane, right-click CRMActivityDS under Datasets and select Dataset Properties.
b. Select Filters.
c. Click Add.
d. For Expression, click the drop-down menu and select [Company].
e. For Operator, verify that = is selected.
f. For Value, click the fx button and make the following adjustments in the Expression dialog box:
In Category, select Parameters.
In Values, double-click CRMActivityCompany.
Click OK to close the Expression dialog box.
g. Back at the Dataset Properties window, verify that you are still on Filters and click Add.
h. For Expression, click the drop-down menu and select [CallCustNum].
i. For Operator, verify that = is selected.
j. In the Value field, click the fx button and make the following adjustments in the Expression dialog
box:
In Category, select Parameters.
In Values, double-click CRMActivityCustNum.
Click OK to close the Expression dialog box.
k. Click OK to close the Dataset Properties dialog box.
5. Click the Report Builder button and select Save.
36
6. So that the report can be tested for this and the next exercise, go back to the parameter properties and
switch them to visible.
a. Right-click CRMActivityCompany in the Report Data pane and select Parameter Properties.
b. In the Report Parameter Properties dialog box, verify that General is selected and select Visible under
Select parameter visibility.
c. Click OK.
d. Repeat steps a-c for the CRMActivityCustNum parameter.
7. Click the Report Builder button and select Save.
8. Test the report:
a. Click Run.
b. For Epicor Company ID enter EPIC06 (the Epicor Education company)
c. For Customer Number, enter 9 (the customer number for Dalton)
d. Click View Report.
The report displays with the CRM call record that you created for the customer Dalton in an earlier exercise.
In upcoming exercises, the parameters will be switched back to hidden and the subreport will be embedded
in the main report. As noted in step 2, the hidden parameters will have values passed to them automatically
from the main report.
9. Click Design to return to the Home tab.
10. Remain in Report Builder with the CRMActivity report displayed and go to the next exercise.
37
38
39
10. In the Design a Query screen, expand the folder for your training database, expand Tables, locate the
OrderHed table, and expand the table to view its fields.
11. Select the following fields: OpenOrder, Company, CustNum, OrderDate, TotalLines, and OrderAmt.
As they are selected, the fields display in the Selected Fields pane.
12. Click Run Query to verify data retrieval.
13. Click Next.
14. Make the following adjustments in the Arrange fields screen:
a. In the Available Fields pane, select OrderDate, TotalLines, and OrderAmt, and then drag them to
the Row Groups box.
For this exercise, the list ordering is ok as-is and does not need adjustment.
b. Again from Available Fields, select OpenOrder, Company, and CustNum, and then drag them to
the Values pane.
At least one field is required in this pane. In the main-sub report relationship, these fields will support
data filtering and passing of report parameters, and they will be hidden from view in a later exercise.
Putting them under Values keeps them independent of row groups and makes it easier to hide them.
The default functions that these fields assume will work for this exercise.
c. Click Next.
15. Make the following adjustments in the Choose the layout screen:
a. Clear the Show subtotals and grand totals check box.
b. Clear the Expand/Collapse groups check box.
c. Click Next.
16. In the Choose a style screen, accept the default or choose a style.
17. 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.
18. 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.
b. Select Query and change the value in Name to OpenOrderDS.
c. Click OK to close the Dataset Properties dialog box.
19. Click Run to verify that the report displays without error.
At this point, the report is retrieving an unfiltered list of matching records in the data source .
20. Click Design to return to the Home tab.
40
21. Click the Report Builder button 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.
22. Navigate to XXXCustomReports and save the report as OpenOrder.
23. Remain in Report Builder with the OpenOrder report displayed and go to the next exercise.
41
f. For Value, click the fx button and make the following adjustments in the Expression dialog box:
In Category, select Parameters.
In Values, double-click OpenOrderCompany.
Click OK to close the Expression dialog box.
g. Back at the Dataset Properties window, verify that you are still on Filters and click Add.
h. For Expression, click the drop-down menu and select [CustNum].
i. For Operator, verify that = is selected.
j. In the Value field, click the fx button and make the following adjustments in the Expression dialog
box:
In Category, select Parameters.
In Values, double-click OpenOrderCustNum.
Click OK to close the Expression dialog box.
k. Back at the Dataset Properties window, verify that you are still on Filters and click Add.
l. For Expression, click the drop-down menu and select [OpenOrder].
m. For Operator, verify that = is selected.
n. In the Value field, enter true.
o. Click OK to close the Dataset Properties dialog box.
5. Click the Report Builder button and select Save.
6. Test the report:
a. Click Run.
b. For Epicor Company ID enter EPIC06 (the Epicor Education company)
c. For Customer Number, enter 9 (the customer number for Dalton)
d. Click View Report.
The report displays with the open orders for the customer Dalton. As with the other subreport, in upcoming
exercises, the parameters will be switched to hidden and the subreport will be embedded in the main report.
Values will be passed to the hidden parameters automatically from the main report. Since the data filter on
OpenOrder has no associated parameter, it will always limit the report to orders with an open status.
7. Click Design to return to the Home tab.
8. Remain in Report Builder with the OpenOrder report displayed and go to the next exercise.
42
2. Select and delete the [&ExecutionTime] text box that was added by default when the report was created.
3. Make the following adjustments to the report title:
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.
c. Select the title text and replace with Open Orders.
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:
a. Click the table to display the grey bars.
b. Right-click the bar above the OpenOrder column and select Column Visibility.
c. In the Column Visibility window, choose Hide and click OK.
d. Repeat steps a-c for the Company and CallCustNum columns.
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.)
6. Adjust the format in which order dates will display:
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.
7. Test the report:
a. Click Run.
b. For Epicor Company ID enter EPIC06 (the Epicor Education company)
c. For Customer Number, enter 9 (the customer number for Dalton)
d. Click View Report.
The report displays with your format adjustments.
8. Click Design to return to the Home tab.
9. You are now done testing this subreport, so go back to the parameter properties and switch them to hidden.
a. Right-click the OpenOrderCompany 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.
43
c. Click OK.
d. Repeat steps a-c for the OpenOrderCustNum parameter.
10. Click the Report Builder button and select Save.
11. Remain in Report Builder with the OpenOrder report displayed and go to the next exercise.
44
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.
e. For Name, select CRMActivityCustNum (the subreport parameter).
f. For Value, from the drop down list, select =First(Fields!CustNum.Value, "CustomerDS") (the main
report field holding the required value).
8. Click OK to close the Subreport Properties window.
Note that the subreport item is only a placeholder and has not changed other than it now displays the name
of the report that you specified in the properties configuration.
9. 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.
10. Right-click the new subreport item and select Subreport Properties.
11. In the Subreport Properties window, ensure that General is selected and do the following:
a. In the Name field, type OpenOrdersSubreport.
b. In the Use this report as a subreport field, select OpenOrder.
12. 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.
b. For Name, select OpenOrderCompany (the subreport parameter).
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.
e. For Name, select OpenOrderCustNum (the subreport parameter).
f. For Value, from the drop down list, select =First(Fields!CustNum.Value, "CustomerDS") (the main
report field holding the required value).
13. Click OK to close the Subreport Properties window.
14. Click the Report Builder button and select Save.
15. Click Run to test the combined reports.
45
The main report and both subreports display. The subreports are populated with data for the company and
customer values passed to them from the main report. The report is initially based on the default parameter
values that you assigned to the main report configuration. You can experiment with entering other company
identifiers and choosing other customers. Also keep in mind that if a selected customer does not include
records that support a subreport, the subreport header will display with no rows underneath it.
16. Click Design to return to the Home tab.
17. Exit Report Builder.
46
15. After reviewing the report, close the print preview and report program windows. You can leave the application
running for later exercises.
47
48
49
50
51
c. Use the buttons at the bottom of the Report Manager window to download and save the file to a default
folder (use Save) or a folder of your choice (expand Save and use Save as), and then choose Open
folder to display the chosen download folder.
10. From the download folder, open SOPickL.rdl in a text editor.
Tip Open Notepad (Start > Run, enter Notepad) and drag SOPickL.rdl onto the Notepad window.
11. With SOPickL.rdl open in the text editor, search for the OrderDate field element.
The following XML was added to the report structure when you added the OrderDate field to the OrderHed
dataset earlier in the exercise.
<Field Name="OrderDate">
<DataField>OrderDate</DataField>
<rd:UserDefined>true</rd:UserDefined>
</Field>
12. Edit the OrderData field element to change the <rd> element as shown in bold below. You can edit it
manually or copy an element that is already set to System.String from another field element.
<Field Name="OrderDate">
<DataField>OrderDate</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
13. Save the file and exit the text editor.
14. In Report Manager, upload the modified file:
a. Verify that you are in the SalesOrderPickListNew folder.
b. At the top of the page, click Upload file.
c. On the Upload File page, click Browse and use the Choose File to Upload dialog box to locate and
select the modified SOPickL.rdl file in your local folder structure.
d. Back on the Upload File page, select Overwrite Item if it exists and click OK.
The modified SOPickL.rdl file is uploaded and overwrites the existing file on the Report Server.
15. Remain in Report Manager for the next exercise.
52
3. Under Report Options, change the From date to be one year back of the To date (to get a year of data).
4. For Report Style, select My Pick List style.
5. Select Print Preview.
The report preview displays. You should see the added Order Date: <value> on each report record.
6. Close the print preview and report program windows. You can leave the application running for later
exercises.
53
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 zES_Customers, 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. You can, however, 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 Maintenance.
54
6. Retrieve your new report, and review the report style that has been created automatically for your new BAQ
Report.
a. Click ReportID and then locate and retrieve aa_CustomerTest.
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 Maintenance and remain in BAQ Report Designer for the next exercise.
55
3. In Report Builder, select the Insert tab and then select Table > Table Wizard to run the New Table or
Matrix wizard.
4. On the Choose a dataset screen, choose BAQReportResult and click Next.
5. From the Available Fields on the Arrange Fields screen:
a. Move Customer_Name and SalesRep_Name to Row Groups.
b. Move Customer_CustID, Customer_CustNum, and Customer CreditHold to Values.
c. Click Next.
6. On the Choose the Layout screen, clear all options and click Next.
7. On the Choose a Style screen, accept the default and click Finish to close the wizard.
8. Click the Report Builder button and then click Save.
Tip Optionally, you can click the Report Builder button again and choose Open to review the
report's folder location on the SSRS report server.
56
The report runs in HTML format, as it would if it was run from SQL Server Report Manager.
c. When done, click Design to return to the Home tab.
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.
10. 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.
11. When you are satisfied with the report, click the Report Builder button and choose Exit Report Builder.
12. 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.
13. Remain in the application with the BAQ Report Designer open for the next exercise.
2. On the Menu Maintenance tree, navigate to: Main Menu > Sales Management > Order Management
> Reports. Verify Reports is highlighted.
3. Select File > New > New Menu.
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.
57
8. Click Report and then search for and choose the BAQ report CustomerTest.
9. Click Save and click OK if you get a security update message.
10. Log out and log back into the Epicor application.
This ensures you do not have to wait for an automatic update.
11. Open the Customers SSRS Report Demonstration report form.
Menu Path: Sales Management > Order Management > Reports > Customers SSRS Report Demonstration
12. To display the report, click Print Preview.
13. When done, close the print preview and form windows. You can leave the application running for later
exercises.
58
Print a Report
Select and Print an SSRS report from your Epicor application.
1. Navigate to the General Ledger report.
Menu Path: Financial Management > General Ledger > Reports > General Ledger
2. In Report Styles, ensure that Standard - SSRS is selected.
3. Click Print on the Standard toolbar.
59
The resulting action depends on the current setting for SSRS Printer Option on the Email and Reporting tab
in Company Maintenance:
SSRS Printer Option is Client and Server Printing - A menu provides the choices of Server Printer or
Client Printer. Choose Server Printer to display the SSRS Printer dialog box.
SSRS Printer Option is Server Printing Only - The SSRS Printer dialog box displays.
SSRS Printer Option is Client Printing Only - The Print dialog box displays for the system where you are
running your Epicor ERP client You do not have access to the SSRS Printer dialog box.
For this course, the instructions in the topic Environment Setup specify that SSRS Printer Option in
Company Maintenance must be set to either Client and Server Printing or Server Printing Only. You will
not be able to complete this exercise until SSRS Printer Option in Company Maintenance is changed to
allow Server Printing.
Tip In an Epicor ERP deployment, enabling client printing and choosing a client printer can work well
for immediate printing needs. It is however dependent on your Epicor ERP client being available when
a print action is initiated, so it is not a good choice if you are setting up printing events such as
scheduled printing or auto printing.
4. In the SSRS Printer dialog box, verify that the printer you set up in the previous exercise is the printer selected
and click OK.
Tip The printer list in the SSRS Printer dialog box includes all SSRS printers defined in Printer
Maintenance.
60
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.
61
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.
62
Conclusion
Conclusion
Congratulations! You have completed the course.
63