Upgrading to NAV 2009 R2 RTC from the technical perspective Vytenis Jakas 1 1ClickFactory 2011.04.07
Vytenis Jakas (CV) 2009 Upgrade Development Manager, 1ClickFactory 2005 Senior Concultant/Developer, K3 Retail and Business Solutions (ex-landsteiner, MS Inner Circle) 2002 Senior Developer, Sintagma (MS Gold Partner) 1999 Navision Developer, Alna Business Solutions (MS Gold Partner) 2
1ClickFactory Microsoft Dynamics Upgrade Center, Microsoft Certified Partner Established in 2009 Headquarters in Denmark, Software Factory in Vilnius, Lithuania (incorporated in Lithuania) Average experience of developers on Microsoft Dynamics > 7 years Mission: To deliver the most professional upgrade, development and localization services for Microsoft ERP and CRM products to partners, through innovative development methodologies and tools. Page 3
Our offerings: Standardized Services CORE Development - Industry - Horizontal add-on - Certification - Technical and user documentation Localization - Translating into local language - Adding local functionality Upgrade - FREE assessment - RTC Enablement - Subscription for future versions Solution Quality Assessment - Code review - Documentation Evaluation PDC for the Baltics Trainings areas: - Business and leadership - Sales and presales - Marketing - Project management - Development END to END Dynamics Partner Offering
Overview Introduction Key improvements in Dynamics NAV 2009 Upgrade reasons, estimation and options Design with upgrade in mind LightTouch General upgrade process Transforming Forms to NAV 2009 Pages Upgrading and developing RDLC Reports Questions & answers 5
What s new in NAV 2009 Three-Tier Architecture New Role Tailored Client Page Objects New Report Design (RDLC) Web Services.NET Interoperability (R2) 6
Key Improvements of NAV 2009 Performance Server side processing Thinner client Scalability Database and NAV server can be on different machines Productivity Reduced number of clicks Search within functionality 7
Performance: NAV 2009 Network Usage Statistics Add a line on the SO Post Cost to G/L and Print Adj. cost - item entries Open Departments Page Order Conf. Preview Closing Order Card Nothing to Post Open Order Card Order List Client Start 402,336 51,371 6,167 1000,756 538,989 28,724 17,387 22,346 265,980 160,012 318,292 253,255 387,740 301,859 475,944 1742,217 1910,662 3415,814 4453,658 RTC Classic 0 1000 2000 3000 4000 5000 Thousands Data by Kamil Sacek 8
RoleTailored views increase productivity Activities My Lists List Places My Notifications Graphs and Charts Microsoft Outlook interface Navigation Pane Tasks Fast Tabs Fact Boxes 9
Ribbons, fact boxes and fast tabs 10
Microsoft Dynamics NAV 2009 Benchmark Studies Task Area Improvement in time to being productive Create a Sales Order (Basic) 33% Create a Sales Order (substitute item) 49% Provide information about an order (with shipments and customer ref #) 23% Check item availability 31% Manage Currencies 27% Change Payment Terms for Customer 16% Manage Bank Accounts 47% Benchmark Average 14 to 22% Source: Benchmark Study on the User Experience of Microsoft Dynamics NAV 5.0 and Microsoft Dynamics NAV 2009, Microsoft 2008 11
The Standard Roles 1. Accounting Manager 2. Accounts Payable Coordinator 3. Accounts Receivable Administrator 4. Bookkeeper 5. Dispatcher - Customer Service 6. IT Manager 7. Machine Operator - Manufacturing Comprehensive 8. Sales Order Processor 9. Outbound Technician - Customer Service 10.President 11.President - Small Business 12.Production Planner 13.Project Manager 14.Purchasing Agent 15.Resource Manager 16.Sales Manager 17. Shipping and Receiving - Orderby-Order 18.Shipping and Receiving - Warehouse Management System 19.Shop Supervisor - Manufacturing Comprehensive or Manufacturing Foundation 20.Warehouse Worker - Warehouse Management System 12
President Small Business 13
The Standard Role: Sales Order Processor 14
Why Upgrade? New functionality/features Improved functionality/features Less buggy Modern technology Compatibility to surroundings Happy customers 15
Microsoft Dynamics NAV history Version 1 Version 2 Building the character based version on Windows 32 bit Version 3 Multidimension enhancements such as multicurrency and multilocation. Extension of application to include a basic CRM system. Version 4 Introduction of Manufacturing, Distribution and Service Management Version 5 A number of smaller application improvements including item budgets, Outlook Client Integration and Business Analytics (OLAP) Job and Resource module rewritten with better integration to finance and Manufacturing NAV 2009 Implementation of RTC, RDLC and web-services 16
Feature Enhancement Documents Dynamics NAV 3.00 3.60 additions: Automated Data Capture Systems Change Log Commerce Gateway Costing (Improved) Cycle Counting Debugger Internal Picks and Put Aways Item Tracking Microsoft Outlook Integration Larger size for C/SIDE Database Payment/Discount Tolerance Reports on Application Server Warehouse Management Systems Windows XP Design XBRL Dynamics NAV 3.60 4.00 additions: Business Analytics Business Notification Campaign Pricing Consolidation (Improved) Intercompany Postings Item Budget and Analytics Reports Manufacturing Foundation Navigation (Improved) ODBC Driver (New) Outlook Interface Partial Payment Pre-defined KPIs Setup Checklist Wizard Standard Cost Worksheet Supply Planning XMLport Object Unapply/Reverse Journal Postings Dynamics NAV 4.0 5.0 additions: Address Length (Improved) Inventory Costing (Improved) Item Tracking (Improved) Jobs (Improved) Intercompany Purchase Cost Distribution Microsoft Office XML Microsoft Outlook Integration (Improved) Rapid Implementation Methodology Record Links to Documents in Microsoft Office SharePoint Server Service Order Handling (Improved) Sales & Purchase Document Approval Windows Live Local Search Dynamics NAV 5.0 2009 additions: 3 Tier Architecture RoleTailored Client Web Services
Upgrading Existing Implementations to NAV 2009 Standard Upgrade As automated as possible Optimized Upgrade Select features to move or leave behind Reimplementation? Cleaning up the solution for the upgrade 18
Upgrade Scenarios Standard upgrade Customer Solution New Dynamics version released from Microsoft All the customizations moved to the new version Optimized upgrade X X X X Solution (standard object modifications) Microsoft Dynamics NAV standard Microsoft Dynamics NAV New version Verification workshop, to define which customizations should be upgraded to a new version of Dynamics Only defined customizations moved to the new version LightTouch customization restructuring for easy future solution maintenance and upgrades 19
Upgrade Estimation Key indicators: Number of standard objects changed Number of changes New objects Localisations 3 rd party add-ons Data migration 20
Design with Upgrade in Mind LightTouch (1) Standard is Good Standard is Good Mark all object/code changes clearly Never erase code 21
Design with Upgrade in Mind LightTouch (2) Isolate Dedicated setup table Code units Functions Form tabs Local variables 22
The 1ClickFactory Upgrade Process focus on simplicity Upgrade Information Upgrade Assessment Verification workshop* Factory Check-in Design/ Development Quality Assurance / Documentation Implementation Guideline/ customized Upgrade Toolkit Partner Data Migration Acceptance workshop * Only required with more complicated upgrades
Technical Upgrade Process Step 1 - All tasks that involve changes to the existing data with the old version objects. Step 2 - All tasks that involve changes to the existing data with the new version objects. 24
NAV 2009 Components NAV 2009 Server NAV 2009 Web Service Server NAV RoleTailored Client NAV Classic Client Native/SQL NAV Native DB Server NAV Application Server (NAS) Native/SQL 25
Dissecting the NAV 2009 - Technical Side Configuration Files New Setup and System Tables Role Centers Object Metadata Web Services Custom Client Add-ins Profiles/Roles Setup Debugging The RTC 26
Transforming Forms to Pages for RTC 27
RTC Page Designer What You See Is What you Get Not 28
Form Transformation Process Object Designer Forms Forms.xml TIF Editor Transformation Data TransformPages.xml, Form-to-Page Mapping Rules, Code Rules FormToPagetypeMapping.txt CodeRules.txt Transformation Tool OK? Log Transformation.log Pages Pages.xml Object Designer 29
NAV 2009 Transformation (1) Before Transformation: As much code as possible should be moved from forms to codeunits or functions on tables. Otherwise the same code will have to be maintained on both forms and on pages When Transforming Try to correct issues at the source form design and configuration Refer to the standard aplication transformation setup 30
NAV 2009 Transformation (2) Transformation Workflow Set up the TIF Editor. Populate the editor with the forms IDs to be transformed to pages. Define transformation parameters Export the input data out of the editor to create transformation input files in XML format. 31
TIF Parameter Files Explained (1) TIF Name Remarks TransformPages.xml This file contains the two mandatory page properties: Page Type IgnorePages.xml Card Form ID In addition, this file also allows to include instructions for the tool with regards to: FactBoxes to be associated with selected pages. Commands and Reports IDs to be added to the Actions menu on selected pages. Importance property to be set for selected Actions and Reports. This file allows the inclusion of instructions to the tool to skip creating pages for specified forms. This is relevant in two situations: When a form cannot be transformed to a page for technical reasons, for example, forms with MatrixBox controls. For any other reason, to leave the classic form behind. 32
TIF Parameter Files Explained (2) TIF Name Remarks DeleteElements.xml Similar to IgnorePages.xml, this file allows individual controls to be specified on selected forms that cannot or should not be transformed onto the corresponding page, for example: An InfoPane frame on a sales document is an example of a layout that cannot be automatically converted to a corresponding control/element in the RoleTailored Client (a FactBox is an appropriate equivalent). MovePages.xml The Post Code/City label is set to be removed from all the forms where this control is found - in its caption, this label refers to two fields. This file allows rules to be specified for replacing one form with another. This is typically relevant when a form that cannot be converted to a page is reimplemented as a new form. Logically, rules in the MovePages input file are related to forms identified in the IgnorePages file. 33
TIF Parameter Files Explained (3) TIF Name Remarks MoveElements.xml This file allows a set of control properties to be specified that: Ensure that the layout of controls on a page is the same as the layout of the original form. Relate to UX modifications. Those properties are as follow: FixedLayout ID to be assigned to each of the label controls in the first row in the matrix-like layout structure. Field Importance to be specified for text box controls on cards to manage display scope. InstructionalText to be specified on label controls containing text instructions, such as those found on confirmation dialogs. Text marked with this property can then be placed in the designated position on a page. Icon image to be assigned to an action and be shown next to the action when promoted onto the action pane. This assignment is based on mapping the icon and action captions. Identification of Container on the Command Bar, promotion onto the action pane and assignment of a big icon image for selected commands. Identified by caption, a few recurrent actions, such as Post, Print, Register and so on can then be applied to a general rule without specifying it per individual form. ShortCut keys to be either newly assigned or replace the ones used in the Classic client. 34
Form Transformation Process Object Designer Forms Forms.xml TIF Editor Transformation Data TransformPages.xml, Form-to-Page Mapping Rules, Code Rules FormToPagetypeMapping.txt CodeRules.txt Transformation Tool OK? Log Transformation.log Pages Pages.xml Object Designer 35
Form Transformation Real World Facts and Issues 90% of a typical solution s forms transform out of the box Identical UI layout is not possible Matrixes need to be redeveloped Standard NAV UI is your friend Time needed Regular forms ~20-40min Matrix forms ~4-12h 36
Reports Switching to RDLC 37
Developing RDLC Reports The good A more powerful designer Interactive features, colours The bad Automatic conversion only for basic reports Complicated report redesigni to RDL Achieving 1-to-1 layout match is hard The ugly Some classic features hard to implement 38
Report Structure Report Purposes Report Description Logical Design (Data Items) Visual Design (Sections) Triggers Properties Sections and RDLC layout 39
Section Designer Developing RDLC Reports (1) New Report Object Designer Create Layout Suggestion Create Layout Adjust Layout Add Data Items Load Layout Save Layout Add New Controls (optional) Add Fields Create Layout View Add to Form Form Designer Save/ Compile Add to Menu Menu Designer Add to Page Page Designer View View Report Viewer 40
Developing RDLC Reports External Designer 41
Classic and RDLC Layout Relationships and Differences Stored within the same NAV Object RDLC data set is build from classic report dataset RDLC is using data displayed within classic report layout Multiple datasets in classic and single flat dataset in RDLC Layouts will never be the same and can be totally different 42
Classic and RDLC Sections 43
Rules for Flattening Data 44
RDLC Development Real World Facts and Issues Data needs to be resorted, refiltered and regrouped Identical layout is not possible Leaving the classical layout behind sometimes is easier Time needed Anything from 2 hours to 5 days 45
Reference Documentation (semi-)official Content MSDN Dynamics NAV Documentation http://msdn.microsoft.com/en-us/library/aa496089.aspx MSDN Blogs Dynamics NAV Team http://blogs.msdn.com/b/nav/ MSDN Blogs Freddy Kristiansen, PM Architect http://blogs.msdn.com/b/freddyk/ Dynamics Brown Bag Sessions http://blogs.msdn.com/b/dynamics_brown_bag_sessions/ 46
Reference Documentation - Community Content NAV community sites and blogs www.mibuso.com dynamicsuser.net/ navigateintosuccess.com/ www.waldo.be/ www.teachmenav.com/blogs/ dynamicsuser.net/blogs/mark_brummel/... 47
Questions and Answers 48
Concluding Comments If you have any questions or need to contact us, then: Vytenis Jakas vytenis.jakas@1clickfactory.com 49