La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

CRM 3.0 Gli strumenti di sviluppo e personalizzazione di Microsoft CRM 3.0 Marcello Fisicaro Partner Technology Specialist Microsoft.

Presentazioni simili


Presentazione sul tema: "CRM 3.0 Gli strumenti di sviluppo e personalizzazione di Microsoft CRM 3.0 Marcello Fisicaro Partner Technology Specialist Microsoft."— Transcript della presentazione:

1 CRM 3.0 Gli strumenti di sviluppo e personalizzazione di Microsoft CRM 3.0 Marcello Fisicaro Partner Technology Specialist Microsoft Italia

2 todo VM METTERE EVENTO UPDATE Rivedere Stabilire demo

3 Avvertenze Questa rappresenta solo una previsione delle aree di investimento della nuova versione del CRM Le informazioni sono aggiornate a Dicembre 2005 Date e funzionalità possono essere soggette a cambiamenti Le immagini sono da considerarsi prototipi Disclaimer This presentation contains preliminary information that may be changed substantially prior to final commercial release of the software described herein. The information contained in this presentation represents the current view of Microsoft Corporation on the issues discussed as of the date of the presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented after the date of the presentation. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this presentation. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this information does not give you any license to these patents, trademarks, copyrights, or other intellectual property. © 2005 Microsoft Corporation. All rights reserved.

4 Agenda Introduzione Personalizzazione Data & Experience Personalizzazione dei processi Developer Experience Reporting & Business Intelligence Q & A

5 CRM 3.0 Introduzione

6 Configurabile con il tuo business Facilmente adattabile ai processi aziendali Framework completamente personalizzabile Motore di workflow e analitico Tecnologicamente avanzato Gestione centralizzata e semplificata Architettura SOA Facile integrazione Adattabile al tuo modo di operare Esperienza nativa Office e Outlook Semplice e utilizzabile off-line VenditeServizio Marketing Una completa soluzione di CRM che utilizza la potenza e la produtttività della piattaforma Microsoft. Microsoft CRM | Integrato e completo

7 Microsoft CRM | Elementi chiave Native Outlook Experience User experience comune con Office UI role based Riduzione sforzo per ogni attività Works the Way You Do Easy Adaptability Vasta business applicability Ricchi workflow guidano processi consistenti Closed-loop tracking e reporting Works the Way Your Business Does Works the Way Technology Should Build, Deploy & Extend Installatione e maintanence ridotta Srumenti di configurazione e personalizzazione comuni Integrazione semplice via Web services

8 Customization SpectrumImpostazioni Dati Processi Esperienza Integrazione Average1-way Organization Entities, Relationships Workflow Libraries Navigation, Reports ExtensiveSecurity Cross-DB Web Services, Callouts Controls, Script 2-way LightPer-User Attributes Workflow Forms, Views None

9 Architettura piattaforma

10 Architettura di Microsoft CRM 3.0

11 Customization Points

12 Web services Permettono lintegrazione con altre piattaforme nonchè laccesso a dati e logica di business di Microsoft CRM Callouts Estendono le funzionalità dei Web Services e integrano logica di business customWorkflow Assemblies Estendono le funzionalità di Workflow UI customizations Albero di navigazione Role based etc Schema customization Aggiungere entità e proprietà nuove Form customization Personalizzare form, viste e integrare elementi UI Form events Sviluppo attraverso gli eventi per aggiungere logica

13 CRM 3.0 Personalizzazione Data & Experience

14 Personalizzazioni strutture dati Foundation per le soluzioni verticali Distribuzione dei cambiamenti più semplice Riduce la necessità di coinvolgere lIT Customer Benefit Personalizzazione schema estensiva Creare/Rinominare entità, attributi, relazioni Personalizzazione attività Supporto per client Web e Offline Gestione schema efficente Strumento allinterno del web client Permessi più granulari Pubblicazione personalizzazioni senza reset Schema Portability Import/Export supportato anche per le nuove funzionalità

15 Entità Custom Design schema per le verticalizzazioni ContactsOpportunitiesLeadsAccounts New Entity InvoicesOrdersProductsQuotes Sales Literature All CasesContracts Contract Lines Support COLA Activities SOP List Marketing AddressesUsers Basic

16 Personalizzazione dati Design business forms e entità senza scrivere codice. Utilizzo dei termini del vostro business in forms, viste e report Sincronizza offline anche entità custom Business design flessibile

17 Overview Custom Entities and System Entities Planning a Custom Entity Ownership Type Entity Relationships Primary Related Cascading Behavior Entity Security and Customizations Working with Custom Entities Creating Entities Configuring a Custom Entity Outlook Participation

18 Lesson: Custom Entities and System Entities Similarities A user interface is generated for them in the application They are defined using the same customization tools Client-side events can be leveraged in the same way Custom entities are customizations that can be imported and exported like customizations to system entities Custom menu items and buttons can be added Relationships with other entities can be defined Mapping can be configured

19 Lesson: Custom Entities and System Entities Similarities, cont. The entities can be taken off-line with the Microsoft CRM client for Outlook Custom entities participate in merge operations Custom entities are fully integrated in the Security framework Callouts are supported with Custom entities Custom entities have methods that can be accessed by developers Filtered views are created to support reports on custom entities

20 Creazione di una nuova entità Considerazioni Ownership Type Organization / User Owned (es Product/Account) Entity Relationships Primary/ Related Relationship (1 many/ many 1) Cascading Behavior Parental / referential / referential restricted / configurable cascading Cascade all / active / user owned / none / remove link /restrict Actions: Assign/ Share/ Unshare/ Reparent/ Merge/ Delete Mappings Entity Security and Customizations

21 Ownership Type Organization Owned An entity that is owned by the organization cannot be assigned to a particular user. Organization owned entities typically contain data involving something that belongs to the organization. Product is an example of an Organization Owned System entity. User Owner A user owned entity must be associated with a user. User owned entities typically contain data relating to customers. The user is the primary owner of the relationship between the related customers and the organization. Account is an example of a User Owned System entity.

22 Entity Relationships Represents how the entities are related to each other within the Microsoft CRM Platform. Consider these relationships as Primary and Foreign Key relationships in a database, but remember, these relationships are defined by the platform and not in the database. How a relationship is referred to depends on how you look at it. The same relationship can be referred to as either a Primary relationship or a Related relationship depending on which entity you are viewing the relationship from.

23 Entity Relationships Primary Relationship A primary relationship is where the entity is defined as a parent for another entity. There will be a 1:Many relationship between the Primary Entity and the Related Entity. The Parent entity represents the 1 in a 1:Many relationship. Related Relationship A related relationship is the same relationship as the Primary relationship except that it is defined from the Child entity. The Child entity represents the Many in a 1:Many relationship.

24 Cascading Behavior In Microsoft CRM you can control how certain actions taken on a parent record affect any child records. The actions that have cascading behavior are: Assign/Share/Unshare/Reparent/Merge/Delete Cascade all Eredita su tutto Cascade active Eredita solo su attivi o open (Not in delete) Cascade User Owned Solo su oggetti posseduti da utente corrente (Not in delete) Cascade None Non eredita (Not in delete) Remove link Toglie solo il link (Only in delete) Restrict Impedisce cancellazione ent primaria (Only in delete)

25 Lesson: Customizable Entities – Activities In Microsoft CRM 1.2, there was one entity called Activity – any task could be specified as a type of activity: a phone call, fax, task, etc. This was difficult because activities could not be customized like other entities. In Microsoft CRM 3.0, activities (phone calls, s, fax, task, and letters) are separate entities and can be customized like other entities.

26 Personalizzazione esperienza Flessibilità e supporto a soluzioni Foundation per soluzioni verticali Esperienza personalizzata consistente Minori costi per personalizzazione e upgrade Customer Benefit Form Scripting Field Events: OnLoad, OnSave, OnChange Metodi per accedere a client /attributi / state Proprietà per ObjectID, Object Type Code Form Customization Supporto IFrame layout migliorato Supporto upgrade per estensioni ISV registrate in ISV.config Navigation Navigatione custom via SiteMap Integrazione con entità custom Consistenza fra web e Outlook Estensioni al menu Outlook

27 CRM Form Designer Look della form Formato colonne Add/remove/move Fields/Tabs/Sections Eventi legati ai campi Add/configure IFrames Etichette

28 Lesson: IFrame Inline Frame – A frame that can be inserted within an HTML document; a document within a document. Used for a variety of purposes, including the ability to display: Another website Dynamic web application Dynamic help

29 CRM Form Object Model Proprietà per accedere alle info della form aperta Metodi che permettono linvocazione di azioni sulla form Sintassi: crmForm.propertyname Accesso ai campi della form crmForm.all.{field_schema_name}

30 CRM From Object Model Esempi //Setup variables var CRM_FORM_TYPE_CREATE = "1"; var CRM_FORM_TYPE_UPDATE = "2"; //Test the FormType and ObjectId properties: switch (crmForm.FormType) { case CRM_FORM_TYPE_CREATE: alert("This is a create form."); break; case CRM_FORM_TYPE_UPDATE: alert("This is an update form, the ID is " + crmForm.ObjectId); break; } //Setup variables var CRM_ENTITY_ACCOUNT = 1; var CRM_ENTITY_CONTACT = 2; //Test the ObjectTypeCode property: switch (crmForm.ObjectTypeCode) { case CRM_ENTITY_ACCOUNT: alert("This is an Account form."); break; case CRM_ENTITY_CONTACT: alert("This is a Contact form."); break; }

31 CRM Form Fields Operazioni e proprietà generali //Toggle the disabled state of the filed var oField = crmForm.all.SOME_FIELD_ID; oField.Disabled = !oField.Disabled; //Use RequiredLevel to parse form logic var CRM_REQUIRED_LEVEL_NORMAL = 0; var CRM_REQUIRED_LEVEL_RECOMMENDED = 1; var CRM_REQUIRED_LEVEL_REQUIRED = 2; var oField = crmForm.all.SOME_FIELD_ID; switch (oField.RequiredLevel) { case CRM_REQUIRED_LEVEL_NORMAL: alert("This field is not required or recommended"); break; case CRM_REQUIRED_LEVEL_RECOMMENDED: alert("This field is business recommended"); break; case CRM_REQUIRED_LEVEL_REQUIRED: alert("This field is required"); break; } //Use of IsDirty property var oField = crmForm.all.SOME_FIELD_ID; if (oField.IsDirty) { alert(Field's value changed.");} else { alert(Field's value not changed."); }

32 Isv.config Possibilità di personalizzare toolbars/ menu Export, Edit, Import Impostazioni viste anche da Outlook

33 Sitemap Possibilità di personalizzare completamente la navigazione Export, Edit, Import Impostazioni viste anche da Outlook Integrazione con le entità custom

34 CRM 3.0 Overview strumenti di personalizzazione Es integrazione con Mappoint service Es nuova entità fornitore Area BI

35 CRM 3.0 Personalizzazione dei processi Workflows

36 Workflow Realizzazione di regole per automazione di processi Strumenti in base al profilo Workflow Editor Realizzazione di workflow (admin) Su attività Entità custom etc Estensione di azioni/condizioni (dev) Workflow Monitor (debbugger per admin) Callout (dev)

37 Strumenti di workflow per i processi di Business Workflow Editor Creazione, modifica, impostazioni regole di workflow. Workflow Monitor Status dei processi di workflow in corso

38 Lesson: Workflow Available with More Entities Activities In previous versions, workflow could create activities but could not be associated with the Activity Entity. In Microsoft CRM 3.0, activity entities were broken out into separate entities that support workflow: Appointment Fax Campaign ActivityLetter Campaign ResponsePhone Call Service Activity Task Custom Entities All created, user-owned custom entities will support workflow

39 Defining Wait for Timer Conditions Workflow rules can include Wait for Timer conditions to control the actions that are performed. Wait for timer conditions existed in previous version of Microsoft CRM, but with the ability to reference fields other than createdon or values stored in a call assembly reference, they are much more powerful.

40 Workflow Wait for Timer Conditions Basic Condition Specific Condition Description Wait for Timer From now onAllows for entry of a static time period to wait from the moment of execution. The time period can be up to 25 months. AfterAllows for entry of a static time period to wait after a related object was created. This can include a time referenced in an assembly. The expression can also be reevaluated to compare other datetime values on the bound object when those fields are updated. BeforeAllows for entry of a static time period to wait before a date time. This might be used to send a reminder based on the start time of an appointment.

41 Microsoft.Crm.Platform.WorkflowAssembly.dll Microsoft CRM 3.0 has an assembly to give some useful datetime functions. This assembly also demonstrates how a configured Call Assembly action is used. The Microsoft.Crm.Platform.WorkflowAssembly.dll provides two methods: Add DateTime Subtract DateTime These methods can be used to modify date time values for objects in Workflow. Either of these methods also allows users to reference a DateTime value even if they do not intend to modify that time.

42 Estensibilità – Nuove Azioni Creazione nuove Azioni / Condizioni Estensione del workflow con codice custom.NET based Facile subscription e deployment Workflow manager support Integrazione con VS.NET & CRM Web Services Messaggi Rich context Benefit Modellazione di processi ricca e flessibile

43 Asincrone (accodate) Parametri in ingresso e uscita Utilizzo delle estensioni dal Workflow manager Eventi: Create, State change, Assign Facile deployment copiando assembly.NET e attraverso un file di configurazione XML Estensione regole di Workflow Creazione di estensioni con assembly.NET

44

45 Es: creazione di sito sharepoint collegato alla creazione di una opportunità Estensione regole di Workflow Creazione di estensioni con assembly.NET Modifica file workflow.config

46 Extensibilità - Callout Estensioni attraverso logica custom.NET e basati su eventi Facile subscription e deployment Eventi POST e PRE Ricche informazioni contestuali Integrazione con Web Services CRM Sincroni e transazionali Benefit Costruzione di soluzioni fortemente integrate

47 Estensibilità - Callout Es: assembly.NET per tracciare cambiamenti di sconto e mandare messaggi di modifica.NET assembly per il calcolo dello sconto discountpercentage discountpercentage totallineitemamount totallineitemamount

48 Pre-Callout Sincrono Parametri gestiti: Entity e User Context Attribute influenzati Modifica dati on the fly Gestione controllo attraverso comandi Continue, Stop, Abort Eventi PreCreate PreUpdate PreDelete PreAssign PreSetState PreMerge

49 Post-Callout Sincrono Informazioni ricche: Stato pre Stato post Eventi PostCreate PostUpdate PostDelete PostAssign PostSetState PostMerge

50 Callout Esempio di codice public class CalloutSample : CrmCalloutBase { // This function is called before an account is created. public override PreCalloutReturnValue PreCreate(CalloutUserContext userContext, CalloutEntityContext entityContext, ref string entityXml, ref string errorMessage) {..... return PreCalloutReturnValue.Continue; }

51 CRM 3.0 Personalizzazione dei processi Processo di vendita Integrazione con sharepoint

52 CRM 3.0 Developer Experience

53 Integrazione con Visual Studio.NET Supporto estensivo a IntelliSense Classi e messaggi Strongly typed Managed code development model Pieno supporto alle personalizzazioni Generazione dinamica dei type (WSDL) Seamless programming model Supporto al Polimorfismo Sviluppo veloce e a basso costo. Scrivi meno codice. Benefits Meno codice e più generico SOA & Interoperabilità WSDL e modello platform independent Compliancy a Standard (WS-I BP V1.1) Gestione dei web service semplice per tutte le entità Facile integrazione con altre applicazioni

54 Microsoft CRM Web Services WSI, BP v1.1, WSDL, Single Endpoint Strongly typed.NET based CRM Web Service (CrmService.asmx) Accesso ai dati di tutte le Entità (incluse entità custome e proprietà) Esecuzione delle business op (business logic e op specializzate) Metadata Web Service (MetadataService.asmx) Accesso ai metadati del CRM

55 Confronto fra Web Services V3.0 vs. V1.x V1.X Web ServicesNuovi web services XML based (no type support) Runtime errors Strongly typed Design/Compile time errors Core Entities and Properties Custom Entities and Properties Strongly typed child properties Browse-able class hierarchy Precompiled static Proxy dllsDynamically generated WSDL N Entities N Web Services Low scalability N Entities One Web Service High scalability No versioningVersioned schema and Web Service.NET only Dll based deploymentAny platform WSDL with no deployment Low consistencyHigh level of consistency on naming, types and operations support

56 Business Entity And Data Model

57 CrmService: Metodi comuni Create - System.Guid Create(BusinessEntity businessEntity) Crea un istanza di una qualsiasi entità Retrieve - BusinessEntity Retrieve(string bEName, Guid bEId, ColumnSet columnset) Ottiene una istanza di una entità già presente nel CRM RetrieveMultiple - BusinessEntityCollection RetrieveMultiple (QueryBase queryBase) Usa una query custom (QueryExpression) per ottenere risultati strongly typed Update - void Update (BusinessEntity businessEntity) Aggiorna una istanza di entità estitente nel CRM Delete - void Delete (string bEName, Guid bEId ) Cancella una istanza di entità dal CRM Fetch - string Fetch (string FetchXML) Usa una query custom (FetchXML) per ottenere risultati in formato XML (genericamente utilizzabile)

58 Differenze: 1.2 vs 3 Non è più necessario specificare url del server (incluso nel WSDL) // strServer should be set with the name of the platform Web server. String strServer = "MyServerName"; // strVirtualDirectory should be set with the name of the Microsoft CRM // virtual directory on the platform Web server. String strVirtualDirectory = "mscrmservices"; String strDir = String.Concat("http://", strServer, "/", strVirtualDirectory, "/"); CrmService service = new CrmService(); service.Credentials = System.Net.CredentialCache.DefaultCredentials; // Send credentials on first round trip. service.PreAuthenticate = true;

59 Differenze: 1.2 vs 3 Istanziazione Account e Contatto // Instantiate the BizUser proxy object. Microsoft.Crm.Platform.Proxy.BizUser bizUser = new Microsoft.Crm.Platform.Proxy.BizUser (); bizUser.Credentials = System.Net.CredentialCache.DefaultCredentials; bizUser.Url = String.Concat(strDir, "BizUser.srf"); // Instantiate the Account proxy object. Microsoft.Crm.Platform.Proxy.CRMAccount account = new Microsoft.Crm.Platform.Proxy.CRMAccount (); account.Credentials = System.Net.CredentialCache.DefaultCredentials; account.Url = String.Concat(strDir, "CRMAccount.srf"); // Instantiate the Contact proxy object. Microsoft.Crm.Platform.Proxy.CRMContact contact = new Microsoft.Crm.Platform.Proxy.CRMContact (); contact.Credentials = System.Net.CredentialCache.DefaultCredentials; contact.Url = String.Concat(strDir, "CRMContact.srf"); account act = new account(); contact cont = new contact();

60 Differenze: 1.2 vs 3 Modifica attributo cliente StringBuilder accountXml = new StringBuilder(" Account One "); accountXml.Append(""); accountXml.Append(userAuth.UserId.ToString()); accountXml.Append(" "); act.name = "Account One";

61 Differenze: 1.2 vs 3 Creazione account e contatto String accountId = account.Create(userAuth, accountXml.ToString()); String contactId = contact.Create(userAuth, contactXml.ToString()); Guid actId = service.Create(act); Guid contId = service.Create(cont);

62 Utilizzo di CrmService Esempio di Creazione di un Account // Set up the Web service. CrmService service = new CrmService(); service.Url = "http:// /mscrmservices/2006/crmservice.asmx"; service.Credentials = System.Net.CredentialCache.DefaultCredentials; // Create an account entity and assign data to some attributes. account newAccount = new account(); newAccount.name = "Greg Bike Store"; newAccount.accountnumber = "123456"; newAccount.address1_postalcode = "98052"; newAccount.address1_city = "Redmond"; // Call the Create method to create an account. Guid accountId = service.Create(newAccount);

63 Query sui dati CRM QueryExpression Valori di ritorno strongly typed Query class based Business Entity centrico: può solo restituire valori fa una busuness entity Supporta join Serialize/DeSerialize da/per FetchXML QueryByAttribute FetchXML Valori di ritorno NON strongly typed La query deve essere scrita in XML Business Entity Agnostico: ad es. Può restituire dati da più business entities Supporta join Usa Advanced Find UI per la costruzione delle query Serialize/DeSerialize da/per QueryExpression Secured/Filtered views Valori di ritorno NON strongly typed Utilizzo di SQL per scrivere query sulle Filtered views

64 QueryExpression Query Class based Valori di ritono Strong type Useta in RetrieveMultiple Serialize/Deseriali ze da/per FetchXML

65 Utilizzo di QueryExpression Esempio di codice per il controllo della duplicazione di un account QueryExpression query = new QueryExpression(); query.EntityName = EntityName.account.ToString(); //entità ricercata query.ColumnSet = cols; // colonne da includere nei risultati query.LinkEntities = new LinkEntity[] {link}; // contiene le varie condizioni in And/Or e entità linkate RetrieveMultipleRequest retrieve = new RetrieveMultipleRequest(); retrieve.Query = query; RetrieveMultipleResponse retrieved = (RetrieveMultipleResponse) service.Execute(retrieve);

66 Utilizzo di CrmService Esempio di codice per il controllo della duplicazione di un account CrmService service = new CrmService(); service.Credentials = System.Net.CredentialCache.DefaultCredentials; QueryByAttribute attributeQuery = new QueryByAttribute(); attributeQuery.Attributes = new string [] {"name"}; attributeQuery.Values = new string [] {newAccountName}; attributeQuery.EntityName = EntityName.account.ToString(); RetrieveMultipleRequest retrieve = new RetrieveMultipleRequest(); retrieve.Query = attributeQuery; RetrieveMultipleResponse retrieved = (RetrieveMultipleResponse)service.Execute(retrieve); // Render the response to the caller if (retrieved.BusinessEntityCollection.BusinessEntities.Length > 0) { //duplicated found } else { //duplicated NOT found }

67 Utilizzo di CrmMetadataService Esempio di codice per ottenere due array di entità custom e non // Retrieve the metadata and build two arrays, // one that contains core entities, // the other custom entities. MetadataService service = new MetadataService(); Metadata md = service.RetrieveMetadata(MetatDataFlag.Entities); ArrayList coreEntities = new ArrayList(); ArrayList customEntities = new ArrayList(); foreach (EntityMetadata em in md.Entities) { if (em.IsCustomEntity) customEntities.Add(em.name); else coreEntities.Add(em.name); }

68 CRM 3.0 Building powerful applications DupDetection & Callout Integrazione con Windows Desktop Search Rss Feeds

69 CRM 3.0 Reporting & BI

70 Analisi dei dati Analisi dei dati con strumenti familiari ed efficaci Report sui tuoi dati aggiornati in- context Pivot e grafici generati dinamicamente con Microsoft Excel Pianifica e distribuisci I report Analisi del business immediata

71 Reportistica integrata / cruscotti

72 Accesso ai dati CRM da Office

73 Reportistica: riassumendo... Strumenti di reportistica per diversi profili Non più solo in area Report Report pre filtrabili contestuali (nelle form, liste o area reporting) Disponibili anche in Outlook Strumenti disponibili per diversi profili Viste – My expiring cases, My accounts, … Integrazione con Excel – PivotTable dinamiche SRS Reports – Account Overview, … Cruscotti aziendali con sharepoint Business Data Lookup Snap in per Office

74 Lesson: Creating Excel Reports Static List Takes the records in the current view exports them to an Excel file. This file can then be saved and used like any Excel document. Dynamic List When Dynamic list is selected, there is an option to edit columns. Any other object attribute can be added to a column in the worksheet. The Dynamic List provides the option to enable automatic refresh of the data each time the report is opened or disable automatic refresh. The option to disable automatic refresh still allows users to manually refresh the data Dynamic Pivot Table Pivot tables provide powerful ways to manipulate a set of data. Learning to work with Pivot Tables can take some effort for the novice, but the many users who are already familiar with them can perform powerful analysis with them.

75 Reporting Services Report Request Report Request Query on Filtered View Reporting Services Server Secure CRM Data Database Report SRS: elementi chiave

76 Lesson: Transition to SQL Reporting Services Upgrade Crystal Enterprise is removed All reports deployed are backed up and stored on the server Options Customers can re-deploy the existing reports, if they own or want to purchase Crystal Enterprise. Reports will not be able to use the specialized Crystal driver shipped with previous versions of Microsoft CRM Data source of the report can be modified to use Microsoft CRM filtered views

77 Microsoft CRM Report Area Administrative Tasks Provides users with sufficient privileges to: Upload or link reports to CRM Remove, rename existing reports Control where reports are displayed in Microsoft CRM Control how reports are categorized Set the default filter for reports that support default filters Microsoft CRM Reports Area does not provide control over who can view reports

78 Overview architettura

79 Integrazione con SQL Reporting Services Report Server Usato come store sicuro dei report Più basso TCO Supporto per qualsiasi edizione di SQL Server SQL Reporting Services functionality Scheduling e Caching Delivery options Export to PDF …

80 Reporting Secure reporting with integrated CRM security Open, extensible reporting solution Contextual reports with CRM features Improved interactivity SQL Server Reporting Services

81 Filtered Views Viste SQL che rispettano la sicurezza del CRM Disponibili per tutte le entità Built off application views Accesso agli atributi CRM Lookups (id, name) Picklists (id, name) Dates (users time, UTC time) Accessibili a membri del SQL Reporting Group

82 Reportistica estensibile Visualizzazione Show any report types inside CRM Integrazione lato client e server SAP, Excel, Pivotal, Business Objects… Utilizzo di soluzioni di reportistica esterne Build on top of Filtered Views SharePoint, Excel, Access, Business Objects …

83 Gestione dei report Gestione dei report (in CRM) Create Update Delete Categorize Associate with UI Show any report types inside CRM Integration client and server side SAP, Excel, Pivotal, Business Objects… Bulk publish (PublishReports.exe) Bulk download (DownloadReports.exe)

84 CRM 3.0 Great reports Report dinamici con Excel Esempio di report con RS Business Data Lookup Snap in Esempio di cruscotto con sharepoint

85 Riassumendo Microsoft CRM V3.0: Fornisce un insieme di funzionalità di estensione e integrazione che permette la creazione di potenti applicazioni di business Facilmente integrabile con applicazioni esterne attraverso Web services e XML Ricca development experience

86 Links utili Crm SDK Downloadable Online GotDotNet Crm Sandbox Home Microsoft Crm Newsgroup Microsoft Crm Developer Newsgroup Microsoft Crm Deployment Newsgroup Microsoft CRM DemoLab Blogs vari Mid Atlantic Microsoft CRMMid Atlantic Microsoft CRM

87 CRM 3.0 Microsoft CRM V3.0 Q & A mailto:

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

89 Mapping from Version 1.2 For the most part, Microsoft CRM 3.0 SDK is backward compatible with previous versions. This means that you can include the old DLLs from the previous version and your code will still work using the old programming style. There are a few exceptions: Activities. CRMActivity and CRM proxy objects are not supported. Code written against these objects must be converted to the new programming model. Methods that create activities. This includes CRMSalesOrder.Cancel, CRMOpportunity.Lose, and CRMIncident.Close. Workflow. CRMProcess proxy object is no longer supported. It is recommended that all workflows be created using the Workflow Manager. Rich Client Sync. Use of the CRMRichClientSync proxy object is no longer supported. CRMCustomization. This class is no longer supported. Use the message InitializeFrom to transform entity instances.InitializeFrom CRMSalesperson. This entity is no longer supported. Use systemuser instead. CRMAnswer. This entity is no longer supported. Teams security. Teams cannot own objects in Microsoft CRM 3.0. MakePrivate/MakePublic. These methods are no longer supported. Organization. The organization entity does not support Create, Delete, Enable, and Disable actions. Warning Microsoft CRM V1.x APIs located in the assemblies Microsoft.Crm.Platform.Proxy, Microsoft.Crm.Platform.Types and /mscrmservices/*.srf are deprecated and are considered obsolete. This means that these APIs may not be supported in future versions of Microsoft CRM. You should avoid the use of Microsoft CRM V1.X APIs and you are strongly encouraged to migrate and develop your applications using the Web services that are described in this version of the Microsoft CRM 3.0 SDK and the accompanying documentation.

90 Upgrade unsupported 1.2 a 3 Modifiche al DB Qualsiasi modifica diretta a tabelle viste sp (es campi aggiunti alla AccountBase) Integrazioni con DB Accesso diretto Personalizzazioni di Form Modifiche dirette a Aspx, js, xml, css etc Modifiche su IIS Sviluppo custom non previsto in SDK


Scaricare ppt "CRM 3.0 Gli strumenti di sviluppo e personalizzazione di Microsoft CRM 3.0 Marcello Fisicaro Partner Technology Specialist Microsoft."

Presentazioni simili


Annunci Google