Microsoft Dynamics NAV 2009 introduced a new RoleTailored client and three-tier architecture. The new architecture separates the presentation layer from the business logic layer, which runs on the Dynamics NAV Server as .NET assemblies. This allows for web services, improved reporting tools in Visual Studio, and easier deployment. Developers can use new tools to convert existing forms to pages for the RoleTailored client and design web services without changing existing C/AL code.
2. Session Objectives
• Gain an understanding of NAV 2009
Architecture
• Understand the role the Dynamics NAV Server
plays in your system and the new features it
brings
• In understanding differences between the
C/SIDE architecture and the Dynamics NAV
three-tier architecture, it will be easier to plan
development projects, customer deployments
and troubleshoot issues
3. Agenda
• Dynamics NAV 2009 release
• Architecture comparison
• Dynamics NAV Service Tier
• Platform features
• Development for Dynamics NAV
4. Dynamics NAV 2009 Release
Microsoft Dynamics NAV 2009 will offer you the
choice to stay with the Dynamics NAV Classic client
or move to the RoleTailored client
• One Solution
– Same application
– Same development
– Same Office integration
– Same Outlook integration
RoleTailored
Client
Classic Client
Classic Client
Microsoft
Dynamics NAV 5.0
Microsoft
Dynamics NAV 2009
5. Dynamics NAV Three Tier
Architecture Presentation Layer
• Rich User Interface on
clients
• SharePoint based Portal
Business Logic Layer
• Dynamics NAV Server
• Web Service and Windows
Communication Framework
Interface
• Business Logic running on
middle tier server as .NET
Application
Data Layer
• SQL Server 2005/2008
6. Forms and Pages
• Classic Client uses Forms
– Forms are objects with statically defined UI elements –
WYSIWYG
– Forms state (memory) is held entirely on the client
– Non validation code not encouraged but allowed
• RoleTailored Client uses Pages
– Structural xml-like definition
– Pages can be interpreted by different client types
allowing them to be reused by NAV Portal and for Web
Services
– Page state (memory) held on both client and NST
– Fewer triggers than Forms but code is allowed
7. Architecture ComparisonFeature Classic Client RoleTailored Client
Forms, Pages, Code on Forms,
Codeunits, ”Classic Application Objects”
As today Forms are transformed to Pages, all
code runs as .NET managed assemblies,
Property driven (Metadata)
Reports/Batch Jobs Existing reports unchanged SQL Server based reporting, requires
request forms to be transformed
Web Services Not Available Multi-threaded NST able to handle Web
Services. Create, Customize and easily
deploy Web Services
C/AL Code runs on the server
XMLPort/Dataport XMLPorts & Dataports supported as
today
Enhance XMLPort functionality to cover
Dataports
Deployment As today NST automatically updates when new
versions are detected
Sharepoint Display Target Continue with existing solutions like NEP NAV Portal – supported out of the box
NAS As today Will continue to work as currently but
recommend moving integrations to WS
based platform
Metadata* In the system under the covers,
Metadata is type definitions, properties
on objects and object definitions
themselves. FOB as text object is a
textual representation of the metadata of
that object
Refers to user personal settings, object
definitions, communication packets,
properties of the system at runtime
8. Architecture Comparison
Classic Client RoleTailored Client
C/SIDE Client RoleTailored Client
Authorisation/Authentication
Application Objects Metadata
Presentation Layer New Presentation Layer
Code, Triggers, Validation Simple type validation
NAV Service Tier
Authorisation/Authentication
Application Objects
Code, Triggers, Validation
Web Services
Database Server Database Server
C/SIDE Server or SQL 2005/8 SQL Server 2005/8
9. Dynamics NAV Server Goals
• NAV 2009 Technology Goals
– Support new RoleTailored User Experience (UX)
– Provide Web Services
– Minimize changes in C/AL code from C/SIDE
architecture to run on Dynamics NAV Server
– Provide development tools (object designers) for
new platform features
– Leverage .NET Framework for application runtime
10. Platform Features
• Web Services
– Industry Standard (Basic Profile)
• Office, Sharepoint, Infopath
• 3rd Party vendors
– Easy to publish
– Focus point for integrations
– Eventual replacement for NAS
• Business Oriented
– Complex Data types
• Header Lines relationships
• Validation & Triggers
11. Platform Features
• Reports
– Based on SQL Report Control
– Colourful
– Charts and Graphs
– Interactive
• Show and hide by expanding/collapsing line information
• Dynamic Sorting
• Reuse the code environment from C/SIDE
Development Environment
• Reuse much of existing report definitions
• Use Visual Studio to define the layout
13. DevelopmentforDynamicsNAV2009
• All development through Object Designer
• Export/Import files support FOB, txt and xml
• New designer for Pages
• External Transformation Tool for Forms to
Pages conversion
• Reports defined in Dynamics NAV, layout
defined in Visual Studio
• After compilation, Dynamics NAV Servers
detect changes and provide newest object to
clients
14. Development
• Page Designer
– Define source table
– Define page type
– Design page
• Fields and structure
• Actions, Related Information
• Reports
• FactBoxes
Page Types
Part Page
List Page
Card Page
Simple Part
Role Center
List Part
Document Page
Worksheet Page
Confirmation Dialog
Navigate Page
15. Development
• Web Service Designer
– Use Page Designer to specify Web service
– System auto generates Web service methods
– Extend by attaching Codeunits or methods with
XMLPort parameters
16. Form Transformation Tool
• Form Transfomation tool converts Form Objects to Page Objects.
Forms are not deleted and the tool may be run multiple times.
• To enable release of Dynamics NAV with the RoleTailored client
• ISVs – To enable release of add-ons with the RoleTailored client
• Partners – To upgrade tailored solutions at the customers to the
RoleTailored client
Database
1 Run
Transformation
Tool
Forms.xml
Transformation
Input Files
Pages.xml
2 3
4
1) Export Forms as XML
2) Submit Forms and Transformation input file to Transformation Tool
3) Transformation Tool makes page objects and logs results
4) Import new Page Objects into the database
2 Log File
3
17. C/AL Development Considerations
• Use Web Services on NST for integration
projects
• Automation objects
– Code runs on the NST
• Files
– Code runs on the NST
• Triggers on Controls, Forms/Pages & Reports
– Form Transformation tool will detect conflicts for
you and is easy to run with no impact to your sytem
Notes to Presenter:Be sure include a reference that Share Point client is also part of NAV 2009 release – just not shown here. The purpose with this slide is to emphasise that Classic client is part of 2009 relaease too.
Key Messages:With pages, groups of Field can be intelligently assembled based on static groupings and based on importance of fields
Key Messages:Metadata is ”data about data”Types are metadata (integer, decimal, text, boolean ...)Properties on controls are metadata (visible, enabled, size)Object definitions are metadata (field1 in a table is integer type and primary key, field2 is a text of size 30, ...)User settings stored in the zup file are metadata (last window opened in the system was form100 and it had size x, y)
Notes to Presenter: Mention that Visual Studio Express Web Edition has free RDL editor – no extra cost
Key Messages:Not only these base 8 functions / including a Codeunit will also expose the methods of that codeunit in the web service
Key MessagesThe tool may be run multiple times with more rules and input added to give a better quality transformed Page with each run.