Olaf Feldkamp Development Platform Advisor Microsoft Schweiz GmbH

  • View
    222

  • Download
    1

Embed Size (px)

Citation preview

  • Slide 1
  • Olaf Feldkamp Development Platform Advisor Microsoft Schweiz GmbH
  • Slide 2
  • IntroductionAPIsExtensibilitySamples
  • Slide 3
  • CRM Core CRM investments in Sales Force Automation, Marketing automation and Customer Service XRM XRM capabilities forged from customization, configuration and business process automation investments Platform capabilities Instantiation of the core Microsoft Technology Foundation with an eye towards accelerated & scaled business solution development Platform capabilities Instantiation of the core Microsoft Technology Foundation with an eye towards accelerated & scaled business solution development Microsoft technology foundation Windows Server, SQL Server, and.NET Framework establish the foundation for enterprise success Microsoft technology foundation Windows Server, SQL Server, and.NET Framework establish the foundation for enterprise success 1 3 2
  • Slide 4
  • Custom application development Custom application based on Dynamics CRM 4.0 Custom business logic Base functionality Custom business logic Base functionality Development time Develop your custom web based and Office- integrated business application in less time
  • Slide 5
  • Leverage Visual Studio and.NET to easily extend and integrate Dynamics CRM IE6 SP1 SSRS.NET FW 3.0
  • Slide 6
  • IntroductionAPIsExtensibilitySamples
  • Slide 7
  • Architecture Integrated to Microsoft Office Schema extension Custom UI Custom workflow Multi-lingual/ -currency/-tenant Offline support Extensible/support for Integration Active directory for SSO Enterprise capabilities with SQL Server Deployment Web, mobile and Outlook client On-premise/ partner hosted Packaging solutions Management Data import/export Security Analytics and reporting Operations Scaling out
  • Slide 8
  • Web services CrmService Supports CRUD operations http://[crmserver]/[orgname]/mscrmservices/2007/ crmservice.asmx MetadataService Query and manipulate the data structure CrmDiscoveryService Query for information about the CRM installation Filtered views SQL Server database views, read-only
  • Slide 9
  • // Create an account entity and assign // data to some attributes account newAccount = new account(); newAccount.name = "Greg Bike Store"; newAccount.address1_postalcode = "98052"; newAccount.address1_city = "Redmond"; // Call the Create method to create an // account Guid accountId = service.Create(newAccount);
  • Slide 10
  • Guid id = new Guid("2B951FBC-1C56-4430-B23B- 20A1349068F3"); // Call the Retrieve method to retrieve an // existing contact ColumnSet cols = new ColumnSet(); cols.Attributes = new string[] { "firstname" }; contact myContact = (contact)service.Retrieve(EntityName.contact. ToString(), id, cols);
  • Slide 11
  • Assemblies Microsoft.Crm.SDK.dll Microsoft.Crm.SdkTypeProxy.dll Microsoft.Crm.Outlook.Sdk.dll Wrap Web service functionality and provide most of the Web services functionality Recommended for plugins and WF activities Microsoft.Crm.Outlook.Sdk.dll = Offline API Web services Dynamic, strongly typed objects for custom entities
  • Slide 12
  • Olaf Feldkamp Development Platform Advisor Development & Platform Group
  • Slide 13
  • IntroductionAPIsExtensibilitySamples
  • Slide 14
  • Users, Organizations Business Units Security roles Settings Templates, KB articles Integration Custom UI Custom BL Business Intelligence Data model Views, Forms Workflow Mailmerge templates for documents and e-mails
  • Slide 15
  • Extensible UI, XML Config File Extensible UI, XML Config File Form events (JavaScript) Form events (JavaScript) Integrated Apps (OBA,..) Reporting (Excel/MOSS) Reporting (Excel/MOSS) Data access platform Business entity components Data access components Synchronous/asynchronous business logic Plugins (pre) (assemblies) Plugins (pre) (assemblies) Plugins (post) (assemblies) Plugins (post) (assemblies) Web services Security Workflow Custom activities (assemblies) Custom activities (assemblies) Filtered SQL Views Metadata Data 2 1 3 4
  • Slide 16
  • Extensive schema customization Create/rename entities, attributes Customize forms and views Create relationships Parental, Referential, Referential but restricted Configurable Cascading Offline entity data Schema management Web-based schema tool Publish customizations without reset Schema portability Import/export support Basic validation Entity 1 Entity 2 Entity 1 Entity 2 1
  • Slide 17
  • Allows coding against entities that were not available at design time Execute() works on a request/response model Example: CreateRequest and CreateResponse Used especially in plugins and workflow activities Properties are still strongly typed even though the entity is not New helper DLLs provide string-based indexers
  • Slide 18
  • // Create the request object AddItemCampaignRequest addReq = new AddItemCampaignRequest(); // Set the properties of the request object addReq.CampaignId = campaignId; addReq.EntityId = productId; addReq.EntityName = EntityName.product; // Execute the request AddItemCampaignResponse addRes = (AddItemCampaignResponse) service.Execute(addReq); // Get the ID of the new Campaign Item Guid id = addRes.CampaignItemId;
  • Slide 19
  • Olaf Feldkamp Development Platform Advisor Development & Platform Group Position Application Contact
  • Slide 20
  • Organization specific Pre and post events Run synchronously or asynchronously Offline support Registration through a tool, Web service API, or command line Deployment options: database or server(s) Must be signed CRM Application CRM Platform Method CRM Tools Custom Application Platform Core Operation Pre-Plugin Post-Plugin 2
  • Slide 21
  • using Microsoft.Crm.Sdk; using Microsoft.Crm.SdkTypeProxy; namespace CrmPlugin { public class HelloWorld : IPlugin { public void Execute( IPluginExecutionContext context) { DynamicEntity entity = (DynamicEntity) context.InputParameters [ParameterName.Target]; if (entity.Properties.Contains("accountname")) entity[accountname] = TechDays 2009; } } }
  • Slide 22
  • Olaf Feldkamp Development Platform Advisor Development & Platform Group
  • Slide 23
  • Web-based designer Easy enough for a business analyst Rich activities Create, Update, Assign, Share, etc Event support for all entities Workflow based on.NET 3.0 WF Can run on separate server Asynchronous Scalable 3
  • Slide 24
  • Extend workflow with custom activities Workflow designer support Deployment works like deployment of plugins Workflow Activity 1 Workflow Activity 3 Custom Assembly Activity 2 Custom Assembly Activity 2 Input parameters Return parameters
  • Slide 25
  • Olaf Feldkamp Development Platform Advisor Development & Platform Group
  • Slide 26
  • Form editor Add IFRAMES to a form CRM passes the Object Type Code and GUID to the external URL SiteMap Controls the left-navigation area of home page Embed your own web pages within the CRM UI ISV.Config Add new menus and toolbar buttons to forms, grids and the application URL Addressable Forms Used by external apps to load specific CRM forms 4
  • Slide 27
  • Enables real-time feedback for users Reduces load on the server Supported/upgradable Only access documented client-side methods and properties Scripts are shared across all form types
  • Slide 28
  • Fieldaccess and methods crmForm.firstname.DataValue,.SetFocus() crmForm.Save(), crmForm.SaveAndClose()
  • Slide 29
  • Olaf Feldkamp Development Platform Advisor Development & Platform Group
  • Slide 30
  • IntroductionAPIsExtensibilitySamples
  • Slide 31
  • CRM 4.0 Accelerators Event Management Enterprise Search Analytics Foundation eService Business Process Pack CRM Notifications Extended Sales Forecasting Sales Methodology Support Available for free
  • Slide 32
  • Office development is part of Visual Studio 2008 SharePoint development: Download VSeWSS version 1.3 Feb 2009 CTP (64 bit support)
  • Slide 33
  • Olaf Feldkamp Development Platform Advisor Development & Platform Group
  • Slide 34
  • Slide 35
  • Slide 36
  • Development time Extensible platform and easy to integrate SOA based Web service APIs Schema extensions Server-side plugins and workflow activities UI integration and programming Custom business logic Base functionality Custom business logic Base functionality Development time
  • Slide 37
  • Presentations TechDays: www.techdays.ch MSDN Events: http://www.microsoft.com/switzerland/msdn/de/presentationfinder.mspx MSDN Webcasts: http://www.microsoft.com/switzerland/msdn/de/finder/default.mspxwww.techdays.chhttp://www.microsoft.com/switzerland/msdn/de/presentationfinder.mspxhttp://www.microsoft.com/switzerland/msdn/de/finder/default.mspx MSDN Events MSDN Events: http://www.microsoft.com/switzerland/msdn/de/events/default.mspx Save the date: TechEd 2009 Europe, 9-13 November 2009, Berlinhttp://www.microsoft.com/switzerland/msdn/de/events/default.mspx MSDN Flash (our by weekly newsletter) Subscribe: http://www.microsoft.com/switzerland/msdn/de/flash.mspxhttp://www.microsoft.com/switzerland/msdn/de/flash.mspx MSDN Team Blog RSS: http://blogs.msdn.com/swiss_dpe_team/Default.aspxhttp://blogs.msdn.com/swiss_dpe_team/Default.aspx Developer User Groups & Communities Mobile Devices: http://www.pocketpc.ch/ Microsoft Solutions User Group Switzerland: www.msugs.ch.NET Managed User Group of Switzerland: www.dotmugs.ch FoxPro User Group Switzerland: www.fugs.chhttp://www.pocketpc.ch/www.msugs.chwww.dotmugs.chwww.fugs.ch
  • Slide 38
  • Presentations TechDays: www.techdays.chwww.techdays.ch TechNet Events TechNet Events: http://technet.microsoft.com/de-ch/bb291010.aspx Save the date: TechEd 2009 Europe, 9-13 November 2009, Berlinhttp://technet.microsoft.com/de-ch/bb291010.aspx TechNet Flash (our by weekly newsletter) Subscribe: http://technet.microsoft.com/de-ch/bb898852.aspxhttp://technet.microsoft.com/de-ch/bb898852.aspx Schweizer IT Professional und TechNet Blog RSS: http://blogs.technet.com/chitpro-de/http://blogs.technet.com/chitpro-de/ IT Professional User Groups & Communities SwissITPro User Group: www.swissitpro.ch NT Anwendergruppe Schweiz: www.nt-ag.ch PASS (Professional Association for SQL Server): www.sqlpass.chwww.swissitpro.chwww.nt-ag.chwww.sqlpass.ch
  • Slide 39
  • 7. 8. April 2010 Congress Center Basel
  • Slide 40
  • Classic Sponsoring Partners Media Partner Premium Sponsoring Partners
  • Slide 41