Microsoft Dynamics AX 2009 Integration and Development with.NET Framework Enterprise Portal.

Post on 17-Dec-2015

224 views 3 download

Tags:

transcript

Microsoft Dynamics AX 2009 Integration and Development with .NET Framework

Enterprise Portal

Agenda

• ASP.NET Framework• SharePoint• Data Binding• Portal Development

ASP.NET Framework

Main Goals• Transform EP from self service light-weight

Web app to mainstream full fidelity business Web app

• Move away from a “Click-and-Wait” architecture to the responsive and interactive modern Web

• Empower end users with a richer and more powerful UI

• Develop rich home pages• Empower developers with rich toolset and

platform technologies

What Is ASP.NET Based Framework?

• UI development in VS using ASP.NET• Core UI controls (List/Image/Lookup)• Data binding• Label support• AOT nodes for storing and securing

managed content• Session management• Proxy class generation• Navigation and deployment

Portal Page Architecture

IIS Virtual Directory

SharePoint Content Database

Page

Page

AX Toolbar Web Part1

Page Definition

Web Part Properties

AX User Control Web

PartUser Control

AxGrid

AxDatasource

MyUserControl.ascx

Control3 Properties

MyUserControl.ascx.cs

Event Handlers

Control4 Properties

User Control Properties

SharePoint

Web Part Page

Standard page and

functionality

IIS Virtual Directory

SharePoint Content Database

Page

Web Part1

Page Definition

Web Part1 Properties

FixFunctionPage.aspx

Control3 PropertiesControl4

Properties

Web Part2 Properties

Web Part2

Metadata Consolidation

SharePointCustomizabl

ePersonalizab

leContent

(SQL Server)

AX MetadataData Binding

X++ CodeData

Dictionary(AOD file)

ASP.NET Pages and Controls

(File System)

SharePointStatic FilesFeatures

Templates(File System)

Import and layer

Deploy

Dynamics AX 2009 Model

• Microsoft Dynamics AX 2009 Portal builds on the rich AX desktop data binding

• It exposes the rich AX metadata binding • It uses the full flexibility of ASP.NET (code

and markup)• It uses the dynamic customization and

personalization of the SharePoint• It unifies ASP.NET, SharePoint and AX

metadata in the AOT

Home Page

• Consists of various Web parts– WSS

• Quick Links• Activity Stacks• Unified Work List (Alerts/Workflow)• Dynamics Report• SSRS Report

– MOSS• KPI List• Filter• Excel Web Access

• Home page integration with the AX client

DemoCreate Role Center Page

Data Binding

Architecture for Accessing AX Data

ASP.NET Control

AxDatasource Control

DataSourceViews

AxDataSetViews

AxDataSet

AX From Datasource

functionality

X++ Code

Application code

Bind

Access Object Model

Access Object Model

X++ Callouts

Dataset Functionality• Allows binding to one or more AX tables• Allows multiple tables to be combined using joins• Exposes full AX data model• Provides calculated fields• Executes table based triggers• Supports a programming model similar to an X++

table object• Supports data versions (OCC)• Can be backed up by a real table or a temp table• Provides events that can be overridden• Provides an object model for application code

User Control Details

AxDataSet

IIS Virtual Directory

MyUserControl.ascx

GridView Props

MyUserControl.ascx.cs

Event Handlers

TextBox Bound Field…

My User ControlUserContro

l

GridView

Text Box

Check Box

Datasource Control

AOTMyDataSet

DataSource

Field

DataSources

MethodsMyDataSetRun

Datasource

QueryRun

QueryRun

TableTable

BC.NET

Portal Development

EP Site Components

• EP Site Basement• EP Home Site• EP Sub Site• Web Module• Top navigation bar

Module Properties– ConfigurationKey– InheritNavigation– InheritPermissions– QuickLaunch– ShowLink

Navigation Details

• Navigation is between pages• URL Menu items

– Navigation– Authorization

• Content items– Content items point to parts on the page– Used for authorization

• Web Menus

Core Controls

• AxDataSource• AxGridView• AxForm• AxLookup• AxFilter• AxToolBar• Webparts

– AxUserControlWebPart– AxToolbarWebPart

Page

Context Passing within a Page

• Context• Webpart type

– None– Provider– Consumer

• Connections

ProviderWebpart

ConsumerWebpart

Webpart connectionAjax refresh

Webpart connectionAjax refresh

ConsumerWebpart

Context Passing between Pages

• Context• Query String• Master – Details• Security and

encryption

Page 2 (details)

Page 1 (master)

Web Part 1

Web Part 3Where x = record 1

Web Part 4

Where x = record

1

Record 1

Record 1

Web Part 5

Security

• Metadata Object Model exposes Security keys

• Data Sets calculate field level security• Table level security can be accessed via

Metadata Object Model for the current session

• AX controls are automatically authorized• User controls are secured through content

items• Standard X++ Authorization (RLS,

HasMenuItemAccess, …)

Stateless Programming Model• Data Sets can be persisted across HTTP requests• What is persisted?

– Queries– Data Cache– Current Record– Current Record deltas– Marks– New Records– Temp Tables

• Override– Pack, UnPack

• Control State can be enabled or disabled

X++ Support

• Proxy Generation Tool pg.exe• Allows C# proxies to be generated for X++

classes and tables• Automatically generates dependent classes• Strongly Typed

Localization

• AX ASP.NET framework uses labels• Controls handle localization• Also ASP.NET expressions are provided to be

used in markup to convert labels to text

<asp:Label ID="Label8" runat="server" Text="<%$ axlabel:@SYS73732 %>"/>

Ajax support Advantages

• We have built our own framework on Ajax, as you have seen

• Advantages of Ajax framework– User-experience improvement– Bandwidth usage– Separation of data, format, style

Deployment

Deployment works at three levels:• Web Server Deployment

– Static Files– Controls

• Web Application Deployment– Features– Web Parts– Web Sites

• Web Site Deployment– Pages

DemoDevelop the Portal

Q&A

Introducing the Lab

• In this lab you will:– Create Web module– Deploy Web module– Create DataSet– Create user control– Upload user control to the AOT– Create Web content– Create Web page– Create Web menu item

© 2008 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.