latest version at christian abeln, [email protected] (d100) client extensibility in...
TRANSCRIPT
Christian Abeln,[email protected]
(D100) Client Extensibility in Microsoft Dynamics NAV 2009 R2and beyond ...
• Intro RTC Add-Ins
• Basic concepts and tools needed.
• The AddIn API and best pratice design.
• Add-ins in NAV V7
• Whats new in the Add-In API
• Custom interfaces (e.g. Timeline Visualization in V7)
• CAL driven charts
Session Content
Insight
Monitor
Discover
Act
Scale our strategyCustomize and
utilizeQueryO-DataClient ExtensibilityInteropAsync, PerformanceManaged data layerDev tools...
Use of RTC AddIns in R2 and beyond ...
Business data & processes
A sample: Lync communication AddIn
NAV R2 Extension Models
Serv
ice T
ier
Web Services
Client Services
Application Meta data provider
Class Library
Clie
nt
Tier
Microsoft SQL Server
Form Builder Data Binder
Role Tailored Client
Data
base
Tie
r
ClientAdd-In
.NETintero
p
Server
COM
.NETintero
p
ClientCOMX
X
Your solution
Page design
Register
CopyAdd-in
Three steps when using Add-ins
1. Place Add-in assembly in the ”Add-ins” folder(s)
2. Register the Add-in
Registration Tool blogs.msdn.com/cabeln
Using Add-ins in the RTC
3. -> Select Add-in in Page Designer
-> ‘Document’ based communication
-> Add-In in trigger ”OnControlAddIn”
Using Add-ins in the R2 RTC
1. Microsoft Visual Studiooptionally :Visual Studio Templates for Add-ins
blogs.msdn.com/cabeln
2. Extensibility assembly(Microsoft.Dynamics.Framework.UI.Extensibility)
3. Existing or new control
Making of Control Add-Ins
Your Add-in
Data &
Events
Create
control
Add-in
class
Three steps when creating Add-ins
• Choose a base class based on your reqiurements
• Choose unique Add-in Name (Attribute)
• Create the control
• Implement interfaces for Value and Event binding as needed
• Use ‘context’ information from the ‘Site’:
Caption, Editable, Enabled, Style, ValidationResults , Visible
Add-in API: Concept
Step By Step walk-through to create and integrate a Document Viewer Add-in.
Let’s create a Document Viewer Add-in
Demo
Inside the Add-In APIAdd-in base class library
Add-in base class with string data binding & eventing-> Value, HasValueChanged, RaiseControlAddInEvent
Control by default connected over framework property Control.Text !
Inside the Add-In APIAdd-in base class library
• Add-in base class for static controls (no data binding, eventing)
• Handles changes of Editable, Enabled, Visible, Style
• AllowCaptionControl
Inside the Add-In APIAdd-in base class library
Inside the Add-In APIAdd-in base class library
The best way to use the API ?
XMLXML
Role
Tailo
red
client
Serv
ice T
ier
A ViewModel based Add-in project
ClientAdd-InApplication
Viewdata:What to
show
ViewModel:How to show
VisualizationControl
Viewdata:What to
show
ViewModel:How to show
VIEWMODEL LIBRARYADDIN LIBRARY
TEST PROJECT
A ViewModel based Add-in project
Clie
nt
Tier
Form Builder Data Binder
Role Tailored Client
Client
Add-In
.NETintero
p
Serv
ice T
ier
Client Services
Application Meta data provider
Class Library
Web Services
.NETintero
p
Create an Add-in from scratchXML binding WPF Add-in
Step By Step walk-through:
Creating a WPF Chart Add-in for Dynamics NAV from scratch.
Demo
Custom interfaces: Timeline Viz
V7: Add-ins with .NET 4.0
Charting in V7
V7: Chart Add-In for CAL developers
Chart Add-In for CAL developers