You are previewing Microsoft Dynamics AX 2012 R3 Reporting Cookbook.
O'Reilly logo
Microsoft Dynamics AX 2012 R3 Reporting Cookbook

Book Description

Over 90 recipes to help you resolve your new SSRS Reporting woes in Dynamics AX 2012 R3

In Detail

Dynamics AX 2012 is a modern ERP solution from Microsoft that is targeted at mid- and high-level organizations. Reports play a very central role in an ERP system, being accessible to customers, vendors, top management, and the shop floor. Every ERP implementation includes reporting changes as companies try to refit the reports to their processes.

Microsoft Dynamics AX 2012 R3 Reporting Cookbook focuses mainly on the reporting aspects of Microsoft Dynamics AX 2012. As a Dynamics AX developer, reporting skills are a must-have and this book intends to make report development easier and simpler.

You will gain an understanding of all the various types of report formats such as charts, matrices, tabular in precision, and auto design. This book also offers strategies for new reports as well as for migrating your reports from the old reporting framework and development.

What You Will Learn

  • Create and deploy reports in AX 2012 R3

  • Understand the SSRS report programming flow

  • Modify the reporting framework

  • Create RDP-based reports

  • Design tabular matrices and chart-based reports

  • Debug reports, the reporting framework, and business logic

  • Migrate reports from the legacy reporting framework

  • Get to grips with unit testing and troubleshooting SSRS reports

  • Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.

    Table of Contents

    1. Microsoft Dynamics AX 2012 R3 Reporting Cookbook
      1. Table of Contents
      2. Microsoft Dynamics AX 2012 R3 Reporting Cookbook
      3. Credits
      4. About the Authors
      5. About the Reviewers
      6. www.PacktPub.com
        1. Support files, eBooks, discount offers, and more
          1. Why subscribe?
          2. Free access for Packt account holders
          3. Instant updates on new Packt books
      7. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Sections
          1. Getting ready
          2. How to do it…
          3. How it works…
          4. There's more…
          5. See also
        5. Conventions
        6. Reader feedback
        7. Customer support
          1. Errata
          2. Piracy
          3. Questions
      8. 1. Understanding and Creating Simple SSRS Reports
        1. Introduction
          1. Reporting overview
        2. Using a query as a data source in a report
          1. Getting ready
          2. How to do it...
          3. How it works…
            1. Connecting VS to AX
            2. Retrieving metadata and data
            3. Verify the query
            4. No joins
        3. Creating auto designs from datasets
          1. Getting ready
          2. How to do it...
          3. How it works…
        4. Grouping in reports
          1. How to do it...
          2. How it works…
        5. Adding ranges to the report
          1. How to do it...
          2. How it works…
        6. Deploying a report
          1. Getting ready
          2. How to do it...
            1. Location of deployment
          3. How it works
        7. Creating a menu item for a report
          1. How to do it...
          2. How it works…
        8. Creating a report using a query in Warehouse Management
          1. Getting ready
          2. How to do it...
          3. How it works
      9. 2. Enhancing Your Report – Visualization and Interaction
        1. Introduction
        2. Creating multiple data regions and charts in reports
          1. Getting Ready
          2. How to do it…
          3. How it works…
        3. Creating a chart data region
          1. Getting ready
          2. How to do it…
          3. How it works…
        4. Creating a new layout template
          1. How to do it…
          2. How it works…
        5. Expression in reports
          1. How to do it…
          2. How it works…
          3. Understanding prefix symbols in simple expressions
        6. Aggregation in reports
          1. How to do it…
          2. How it works…
        7. Adding an image in auto design
          1. How to do it…
          2. How it works…
          3. See also
        8. Formatting reports
          1. How to do it…
          2. How it works…
        9. Adding unbounded parameters in reports
          1. How to do it…
          2. How it works…
            1. System parameter
            2. User-defined parameters
              1. Bounded parameters
              2. Unbounded parameters
            3. Parameters and data source types
              1. Query parameters
              2. Dynamic filters
          3. See also
        10. Adding filters to data regions
          1. How to do it…
          2. How it works…
        11. Adding document map navigation to reports
          1. How to do it…
          2. How it works…
        12. Creating drill-up/drill-down actions in reports
          1. How to do it…
          2. How it works…
      10. 3. Report Programming Model
        1. Introduction
        2. Opening a report through a controller
          1. Getting Ready
          2. How to do it...
          3. How it works...
            1. Report programming model
              1. Model
              2. Controller
                1. Report data contract
                2. Report controller
                3. Report UI builder
              3. View
        3. Modifying the report query in controller
          1. Getting Ready
          2. How to do it...
          3. How it works...
        4. Opening a report with a dialog
          1. How to do it...
          2. How it works…
        5. Creating a report using the UI Builder class
          1. Getting Ready
          2. How to do it...
          3. How it works…
        6. Adding a lookup on a report dialog using the UI Builder class
          1. Getting Ready
          2. How to do it...
          3. How it works…
        7. Connecting the UI builder class with a contract class
          1. Getting Ready
          2. How to do it...
          3. How it works…
        8. Adding ranges from unbound parameters to a query
          1. How to do it...
          2. How it works…
            1. RDP vs RDL data contract
        9. Modifying the UI by caller
          1. How to do it…
          2. How it works…
        10. Turning off a report dialog
          1. How to do it...
        11. Setting up security for reports
          1. How to do it…
          2. How it works...
        12. Adding up the report menu item into privilege
          1. How to do it...
          2. How it works…
        13. Calling multiple reports from a controller
          1. How to do it…
          2. How it works...
        14. Calling multiple reports simultaneously using a single controller
          1. How to do it...
          2. How it works…
        15. Debugging a report model
          1. How to do it…
            1. Changes to model and adding new classes
          2. How it works…
        16. Adding data methods in business logic
          1. How to do it…
          2. How it works...
            1. Data method vs Expressions
        17. Adding a URL drill through action in reports
          1. How to do it…
          2. How it works...
        18. Debugging business logic
          1. How to do it…
          2. How it works…
        19. Unit testing business logic
          1. How to do it…
          2. How it works...
        20. Creating a report using a controller and the UI Builder class
          1. How to do it...
          2. How it works…
      11. 4. Report Programming Model – RDP
        1. Introduction
        2. Creating a simple RDP report
          1. Getting ready
          2. How to do it…
          3. How it works…
            1. RDP
              1. RDP class
              2. RDP data contract
              3. UI builder
              4. Choosing RDP for a report
          4. See Also
        3. Testing the RDP report
          1. How to do it…
          2. How it works…
        4. Creating a simple precision design
          1. Getting ready
          2. How to do it…
          3. How it works…
        5. Creating an advanced RDP report
          1. How to do it…
            1. Testing the RDP
          2. How it works…
        6. Creating a report with multiple data sources in a single table
          1. How to do it…
          2. How it works…
        7. Creating a group view report
          1. How to do it…
          2. How it works…
        8. Adding headers and displaying company images
          1. How to do it…
          2. How it works…
            1. Debugging RDP
          3. See Also
        9. Using an existing temp table in RDP
          1. How to do it…
          2. How it works…
        10. Pre-processing reports
          1. How to do it…
          2. How it works…
            1. Clean up
      12. 5. Integrating External Datasources
        1. Introduction
        2. Adding a datasource through business logic
          1. Getting ready
          2. How to do it...
          3. How it works…
          4. See Also
        3. Using an XML feed as a datasource
          1. Getting ready
          2. How to do it…
          3. How it works…
            1. Spin-off recipes
        4. Building a parameter lookup using business logic
          1. Getting ready
          2. How to do it…
          3. How it works…
            1. Business logic
        5. Building a report through an external datasource
          1. Getting Ready
          2. How to do it…
          3. How it works...
        6. Adding a parameter for an external datasource query
          1. Getting Ready
          2. How to do it…
          3. How it works…
        7. Creating a customer summary OLAP report
          1. Getting Ready
          2. How to do it…
          3. How it works…
          4. See also
        8. Adding a parameter lookup for OLAP
          1. Getting Ready
          2. How to do it…
          3. How it works…
            1. Company parameter
            2. EndDate parameter
            3. Main query
        9. Designing an OLAP table report with SQL Report Builder
          1. Getting Ready
          2. How to do it…
          3. How it works...
        10. Designing a map sub-report with SQL Report Builder
          1. Getting Ready
          2. How to do it
          3. How it works...
        11. Creating a sub-report in auto design
          1. Getting Ready
          2. How to do it...
          3. How it works...
        12. Creating a sub-report in precision design
          1. Getting ready
          2. How to do it...
          3. How it works...
          4. See also
      13. 6. Beyond Tabular Reports
        1. Introduction
        2. Creating a matrix report
          1. How to do it…
            1. Basic report design
            2. Creating a matrix report
          2. How it works…
        3. Creating a multicolumn matrix report
          1. Getting ready
          2. How to do it…
          3. How it works…
        4. Creating a column chart report
          1. Getting ready
          2. How to do it…
          3. How it works…
          4. See also
        5. Creating a line chart
          1. Getting ready
          2. How to do it…
          3. How it works…
          4. There's more…
            1. Chart reports in auto design
        6. Gauges in reports
          1. Getting ready
          2. How to do it…
        7. List and rectangle controls in reports
          1. How to do it…
          2. How it works…
        8. Adding reports to the role center
          1. How to do it…
          2. How it works…
      14. 7. Upgrading and Analyzing Reports
        1. Introduction
        2. Upgrading a report from its previous version
          1. How to do it…
            1. Defining the data source
            2. Mapping the parameters and fields
            3. Mapping the design
            4. Datasets in AX 2012 R3 vs AX 2009 reports
            5. Developing the controller
            6. Handling UI events
        3. Analyzing and modifying an existing report
          1. How to do it...
          2. How it works…
        4. Implementing validation in reports
          1. Getting ready
          2. How to do it…
          3. How it works…
        5. Surrogate fields in reports
          1. How to do it…
            1. Surrogate keys in query-based reports
            2. Surrogate keys in RDP
          2. How it works…
            1. Spin-off idea
        6. Grouping and ordering controls in the report dialog
          1. Getting ready
          2. How to do it...
            1. Grouping in report model
            2. Grouping in the UI builder
            3. Grouping in contracts
          3. How it works…
        7. RDP with multiple temporary tables
          1. Getting ready
          2. How to do it…
          3. How it works…
        8. Multi-value lookup
          1. Getting ready
          2. How to do it…
          3. How it works…
        9. Inventory dimensions in reports
          1. Getting ready
          2. How to do it…
          3. How it works…
        10. Financial dimensions in query reports
          1. How to do it…
          2. How it works…
        11. Financial dimensions in RDP reports
          1. How to do it…
          2. How it works…
      15. 8. Troubleshooting and Other Advanced Recipes
        1. Introduction
        2. Assessing report performance and usage
          1. Getting ready
          2. How to do it…
          3. How it works…
        3. Handling long-running reports in AX
          1. How to do it…
            1. Design-based resolution
            2. Configuration-based resolution
              1. Data extension-based timeout
              2. Server-side WCF timeout
              3. Client-side WCF timeout
              4. Report execution timeout
              5. Specifying timeouts for all reports
              6. Specifying timeouts for a specific report
              7. User session timeout
        4. Troubleshooting reports in AX
          1. How to do it…
            1. Deployment-related issues
              1. Unable to deploy
              2. Unable to refresh
            2. Rendering-related issues
            3. Data-related issues
              1. Query-based report
              2. RDP-based report
              3. Controller issues
        5. Auto e-mail, save as file tasks in reports
          1. How to do it…
            1. Saving the report to a file
            2. Sending the report through e-mail
          2. How it works…
        6. Handling events after report completion
          1. How to do it…
          2. How it works…
        7. Generating and displaying barcodes in reports
          1. How to do it…
          2. How it works…
        8. Hiding controls by context
          1. How to do it…
          2. How it works…
        9. Using AXEnumProvider as the dataset for parameters in reports
          1. Getting ready
          2. How to do it…
        10. Adding a new report design to print management
          1. How to do it…
        11. Deploying language-specific reports to speed up execution time
          1. How to do it…
          2. How it works…
        12. Improving the functionality of reports
          1. How to do it…
      16. 9. Developing Reports with Complex Databases
        1. Introduction
        2. Creating reports by fetching the data using complex queries
          1. Getting ready
          2. How to do it…
        3. Creating reports by fetching the data using views
          1. Getting ready
          2. How to do it…
        4. Creating reports by fetching the data using maps
          1. Getting ready
          2. How to do it...
      17. 10. Unit Test Class and Best Practices Used for Reports
        1. Introduction
        2. Creating a unit test class for a contract class
          1. Getting ready
          2. How to do it...
        3. Creating a unit test class for a controller class
          1. Getting ready
          2. How to do it...
        4. Creating a unit test class for an RDP class
          1. Getting ready
          2. How to do it...
        5. Best practices for AX 2012 report development
          1. Report design
          2. AOT queries
          3. Data source table
          4. RDP class
          5. Contract class
          6. Controller class
          7. UI Builder class
          8. General best practices
      18. Index