You are previewing Implementing Microsoft Dynamics NAV 2009: Explore the new features of Microsoft Dynamics NAV 2009, and implement the solution your business needs.
O'Reilly logo
Implementing Microsoft Dynamics NAV 2009: Explore the new features of Microsoft Dynamics NAV 2009, and implement the solution your business needs

Book Description

Microsoft Dynamics NAV 2009 is the latest release of the NAV application (formerly known as Navision) from the Microsoft Dynamics family of products that brings a 3-tiered architecture, web services enablement, and many more exciting features, to the well established Enterprise Resource Planning (ERP) solution.

Although Dynamics NAV is carefully designed for ease of use, attaining measurable business gains requires an understanding of business, finance, analysis and design techniques, programming skills, and the ability to manage complex projects coupled with an expert knowledge of the product itself.

This book distils hard won experience into an easy to follow guide to implementing the full power of Dynamics NAV in your business. It won't just tell you how to do it; it will show you how to do it. It will help you to become a better consultant or developer by providing practical examples and expert advice.

From an introduction to the new RoleTailored user interface to a series of practical web services programming tutorials, you will gain a deep understanding of what NAV 2009 has to offer compared to previous versions. With a strong emphasis on practical examples, we take you through the implementation process and provide guidance on configuring the Chart of Accounts and Dimensions for financial analysis, how to use the Rapid Implementation Toolkit (RIM) to reduce implementation effort and an overview of the Sure Step implementation methodology. You will learn how to take a business problem through to a working solution using industry standard techniques such as use-case modelling and object-role modelling. We will teach you how to design and develop NAV objects including the new Page object and the Client Reporting Services report layouts.

Approach

Written in an easy-to-read style, this book is a refreshing alternative to the official Microsoft training and reference material which, although comprehensive, can sometimes be tiring to read. This is not a reference book, although you may find you refer to it often, giving you access to years of experience in implementing and programming Dynamics NAV. You will learn all the new features in NAV 2009, without needing to invest significant study time.

Table of Contents

  1. Copyright
  2. Credits
  3. Foreword
  4. About the Authors
  5. About the Reviewers
  6. Preface
    1. What This Book Covers
    2. What You Need for This Book
    3. Who is This Book For
    4. Conventions
    5. Reader Feedback
    6. Customer Support
      1. Downloading the Example Code for the Book
      2. Errata
      3. Piracy
      4. Questions
  7. 1. Introducing Microsoft Dynamics NAV 2009
    1. And now for something completely different
      1. Why RoleTailored?
      2. New architecture—a real deal
    2. Implementing Microsoft Dynamics NAV 2009
      1. What is this book all about?
      2. Microsoft Dynamics NAV 2009 application areas
    3. A new architecture explained
      1. Two-tier versus three-tier
        1. Architectures of Microsoft Dynamics NAV
      2. The Client Tier
      3. The Microsoft Dynamics NAV Service Tier (NST)
    4. The future of Microsoft Dynamics NAV
    5. Summary
  8. 2. The RoleTailored Client
    1. What is the RoleTailored client?
      1. First impressions
    2. New terms for the RoleTailored client
      1. The navigation window
        1. The address bar
        2. The command bar
        3. Local commands
        4. Customize and Help commands
        5. The navigation pane
        6. Where are all the options?
        7. The status bar
        8. The Role Center navigation page
          1. Activities part
          2. Outlook part
          3. List parts
          4. Chart Part
          5. Notifications part
          6. The List Place navigation page
          7. Action pane
          8. Filter pane
          9. List
          10. Chart pane
          11. FactBox pane
      2. The Departments page
      3. Task pages
        1. Cards
          1. FastTab
            1. Drop-down buttons
            2. Assist Edit
            3. Phone, email, and browser buttons
          2. FactBox pane
          3. Lists
          4. Documents
        2. Journals
        3. List plus
        4. Matrices
        5. Wizards
      4. The Report Viewer
        1. Print and export
    3. How to use the RoleTailored client
      1. Create a customer
      2. Create a sales order
      3. Post an invoice for a sales order
      4. Enter a cash receipt
      5. Concluding using the RoleTailored client
    4. How to personalize the RoleTailored client
      1. Make it your own
      2. Customize the navigation pane
        1. Adding list places to menus
      3. Personalizing pages using the customize menu
        1. Customize Actions
        2. Customize Reports
        3. Customize This Page
        4. Customize This Page (task page with FastTabs)
        5. Customize This Page (role center)
          1. Activities
          2. Microsoft Outlook
          3. My Customers and other list parts
          4. My Notifications
          5. Chart part
    5. Summary
  9. 3. Roles and the Customer Model
    1. The Dynamics Customer Model
      1. Too much information
      2. A fresh beginning
      3. Departments, roles, process groups, and tasks
    2. What is a role in Dynamics NAV 2009?
    3. The roles available in Dynamics NAV 2009
    4. Role-centric thinking
    5. Discovering the existing roles
      1. What’s in a role center?
    6. Customizing a role as a super user
      1. Customizing the Accounting Manager profile
        1. Clearing the configured pages for a profile
        2. Adding actions and reports to a profile
        3. Changing the layout of the Customer Card
    7. Extending existing roles as a developer
      1. Find the Page ID and source table of the activities part
      2. Adding the Priority Customer field
      3. Extending the Sales Cue table
    8. Creating a new role
    9. Further Reading
    10. Summary
  10. 4. The Implementation Process
    1. What is an implementation?
      1. Implementation tasks
        1. Business process reengineering
        2. Configuration
        3. Customization
        4. Third-party solutions
        5. Choose the right approach
    2. The role of methodology
      1. Microsoft Dynamics Sure Step
    3. Phases of an implementation
    4. Diagnostic phase
      1. Drafting the project scope
      2. Mind the gap
      3. What if it’s not there?
      4. Detailed analysis
      5. Technical requirements
      6. Should we do all of it?
      7. Wrapping up
    5. Analysis phase
      1. Prepare the path
        1. Plan the resources
        2. Plan approvals
      2. Get the ball rolling
      3. Train the key users
      4. Data migration
        1. Master data migration
        2. Past transactions
        3. General data migration analysis considerations
      5. Detailed analysis
        1. User roles
        2. Integration and interfaces
        3. Document the requirements
    6. Design phase
      1. Understand the standard application
      2. Understand the problem
      3. Use your imagination
      4. Prototype, demonstrate, and iterate
      5. Learn how to eat an elephant
      6. Products of design
      7. When to stop
    7. Development phase
      1. Planning
      2. Setting up the environment
      3. Finally, development
        1. Application functionality
        2. Data migration development
        3. Security issues
        4. Document the changes
      4. Customer testing and acceptance
    8. Deployment phase
      1. Plan your steps
      2. Environment configuration
      3. User acceptance test
      4. Load test
      5. End-user training
      6. Go-live
    9. Operation phase
      1. No planning?
      2. Documentation
      3. Transition
      4. Closing off
      5. Final acceptance
      6. Who died?
    10. Did we go bananas?
      1. Betting a business on a mad horse
    11. Summary
  11. 5. Configuring the System
    1. What is system configuration?
    2. A programmer’s guide to accounting
      1. The hippo’s bottom
      2. The black art of bookkeeping
      3. Finding dimensions with the five Ws (and the H)
        1. Who?
        2. What?
        3. When?
        4. Where?
        5. Why?
        6. How?
      4. The chart of accounts
        1. Income statement
          1. Income/revenue
          2. Expenses
          3. Gains
          4. Losses
        2. Balance sheet
          1. Assets
          2. Liabilities
          3. Shareholder’s equity
          4. Dividend
        3. Other reading
      5. Feeding the hippopotamus
        1. Is it a debit or a credit?
      6. Using dimensions to analyze financial data
      7. Accounting understood?
    3. Groups, groups, and more groups
      1. G/L entry
      2. VAT entry
      3. Vendor ledger entry
      4. Detailed vendor ledger entry
      5. G/L entries revisited
        1. Vendor posting group
        2. VAT Bus. Posting Group and VAT Prod. Posting Group
      6. More groups
      7. Where do dimensions come from?
    4. RIM
      1. The setup questionnaire
        1. General Ledger setup (before RIM)
        2. General Ledger setup (using RIM)
      2. Data migration
        1. Hurray for the Data Migration tool
        2. Limitations of the Data Migration tool
          1. Dimensions
            1. Unlimited dimensions—the way of the consultant
            2. Unlimited dimensions – The programmer’s path
          2. Known issues
          3. Slow performance
          4. Data templates
      3. What’s missing
    5. Summary
  12. 6. Modifying the System
    1. Understanding the tools
    2. Modifications for non-programmers
    3. Object Designer basics
    4. Extending the data model
      1. Creating tables
      2. Adding fields
      3. Table relationships
      4. Table keys
      5. Field groups
    5. Customizing forms
      1. Creating forms
        1. Form properties
        2. Adding controls
        3. Subforms
        4. Menus and buttons
    6. Customizing pages
      1. Page properties
      2. Page types
        1. Card
        2. List
        3. RoleCenter
        4. CardPart
        5. ListPart
        6. Document
        7. Worksheet
        8. ListPlus
        9. ConfirmationDialog
        10. NavigatePage
      3. Page Designer
        1. Containers
        2. Groups
        3. Fields
        4. Parts
          1. Page parts
          2. System parts
          3. Chart parts
        5. Positioning controls
        6. Spur some action
          1. ActionContainer
          2. ActionGroup
          3. Action
            1. Action promotion
            2. Object running
      4. Form Transformation tool
    7. Customizing reports
      1. Reporting in the Classic client
        1. Creating reports
        2. Components of a report
          1. Data Items
          2. Sections
          3. Request form
        3. Report logic
      2. Reporting in the RoleTailored client
      3. RoleTailored report creation
        1. Transforming layout
        2. Transforming request option forms
    8. Customizing MenuSuites
      1. A little bit of theory
      2. And some practice
    9. Customizing other objects
      1. Codeunits
      2. Dataports
      3. XMLports
    10. Summary
  13. 7. Extending the Application
    1. Learning to fish
    2. What’s a Web service?
      1. It’s not just for the Web
      2. What can we do with them?
      3. Calling a NAV Web service
        1. Creating a Web service
        2. Calling the Web service
    3. WinForms application
      1. Item look-up requirements
      2. Exposing the Web service
      3. New Windows application project
        1. Getting some data
        2. Filter Box and Find Button
        3. Testing time
      4. WinForms application summary
    4. Sidebar gadget
      1. Design time
        1. What are little gadgets made of?
        2. The gadget
        3. Flyouts
        4. Options
      2. The tricky bits
        1. Just a little bit of SOAP
        2. An HTML page that calls a NAV Codeunit
        3. Hey, Good Lookin’
    5. Calling a Web service from NAV
      1. Always take the weather with you
      2. Calling out around the world
    6. Service oriented or service enabled?
      1. When is a service not a service?
      2. Service repository
      3. Service bus
      4. Don’t worry, be happy
    7. Any questions?
      1. Document Pages as Web services
      2. Role Center as a Web service
      3. Records as parameters to Codeunits
      4. Codeunit functions that return complex data types
      5. XMLports as parameters to Codeunits
      6. More functions on a Page
      7. Can I break it?
    8. Presentation layers
    9. Summary
  14. 8. The Development Lifecycle
    1. Why is development different than programming?
      1. Development in Microsoft Dynamics NAV
    2. The lifecycle
      1. Microsoft solutions framework
    3. Understanding the requirements
    4. Designing the solution
      1. Extending existing functionality
      2. Designing a completely new functionality
      3. Designing tasks
        1. Data model
        2. User interface
          1. Aim for consistency
        3. Reports
        4. Application logic
      4. Planning for performance and scalability
        1. Keys
        2. User interface
    5. Build
      1. Team approach
      2. Building the data model
      3. Building the user interface
        1. Beware the page
        2. Pages
        3. Reports
        4. User interface integration
          1. Extending existing role centers
          2. Creating new role centers
      4. Building the application logic
      5. Security
      6. Testing
      7. Feature Complete
      8. Object versioning
        1. Should I change the Modified flag?
        2. When customers play developers
      9. Documentation
    6. Stabilization
      1. Issue Convergence
      2. Issue Log Cleared
      3. Final tests
      4. Release Readiness milestone
      5. Finalizing development work
    7. Deployment
      1. Documentation
      2. Deployment Stable and Deployment Complete
    8. Summary
  15. 9. Troubleshooting
    1. Identifying problems
    2. Debugging
      1. Debugging the Service Tier
      2. Debugging the Classic client
      3. Code Coverage
    3. Performance tuning
      1. Client Monitor
        1. Built-in Client Monitor functionality
        2. Client Monitor helper objects
      2. Analyzing performance with Excel
        1. Analyzing data
          1. Analyzing tables
          2. Analyzing objects
          3. A few ideas to find sources of major performance issues
        2. Multi-user issues
          1. Analyzing locking situations
          2. Detecting deadlocks
        3. Combining Code Coverage and Client Monitor
        4. How about the RoleTailored client?
      3. Other tools
        1. Event Viewer
        2. SQL Server Profiler
        3. Performance Monitor
        4. Dynamics management views and functions
        5. Task manager
    4. Planning ahead
      1. Hardware Guide
      2. Indexes
      3. Database Resource Kit
      4. Technical Presales Advisory Group (TPAG)
    5. Getting help
      1. Microsoft Dynamics NAV tools overview
      2. SQL Server Technical Kit for Microsoft Dynamics NAV
    6. Summary
  16. 10. Sample Application
    1. Sample code download
    2. Gathering requirements
    3. The scenario
    4. Functional requirements
      1. Process flow diagram
      2. Use-case modeling
        1. Defining the actors
          1. Expense Claimant
          2. Expense Checker
          3. Expense Approver
          4. Expense Processor
        2. Defining the use-cases
          1. Mobile Capture of Expense
          2. Prompt Expense Claimant to Submit Expenses
          3. Edit and Submit Expenses
          4. Check Expenses
          5. Approve Expenses
          6. Post Expenses
          7. Pay Expense Claimant
        3. Use-case diagram
        4. Glossary of terms
          1. Expense
          2. Expense claim
          3. Employee
          4. Office
          5. Department
          6. Customer
        5. The domain model
      3. Use-case workshop
        1. Explaining the ORM diagram
        2. Mobile expense claim
          1. Basic flow
          2. Alternate flows
            1. Different expense date
            2. Non-recoverable goods or service expense claim
            3. Possibly recoverable goods or service expense claim
            4. Recoverable travel expense claim
            5. Non-recoverable travel expense claim
            6. Possibly recoverable expense claim
            7. Recoverable daily allowance expense claim
            8. Non-recoverable daily allowance expense claim
            9. Possibly recoverable daily allowance expense claim
            10. Multiple expense claims
          3. Alternate flows
            1. Different expense date
            2. Non-recoverable goods or service expense claim
      4. Finishing the functional requirements
    5. Architectural design
      1. Supplementary requirements
      2. Existing architecture and framework
      3. Budget
      4. What’s cool?
      5. And the winner is...
    6. Build—technical design
      1. Tables
        1. Expense (new table)
        2. Expense Claim (new table)
        3. Location (Modify Table ID=14)
        4. Department (no changes to existing table)
        5. Customer (no changes to existing table)
        6. Expense Claim Setup (new table)
        7. User Setup (modify Table ID=91)
      2. Points raised by table design
        1. New items to consider
      3. Additional development tasks
      4. Working through the use-cases
      5. Do you want the good news or the bad news?
    7. Build—prototype
      1. Additional tables
        1. User Setup (modify Table ID=91)
        2. Expense Claim Schedule (new table)
          1. Customer (modify Table ID=18)
          2. Time to build
      2. I love the Classic client
      3. Transformers, robots in disguise
      4. MenuSuite and navigation pane
    8. Dynamics Mobile
      1. Overview tasklet
      2. Capturing Expense
      3. Editing Captured Expenses
      4. Synchronize
    9. Prototype, demonstrate and iterate
    10. Summary
    11. So long, farewell, Auf Wiedersen, Adieu