200 likes | 333 Views
Sage CRM Developers Course. Coding the Web SelfService COM API (1). Looking ahead to the classes. DP01: Introduction to the Development Partner Program DP02: Entities and the Data Model (Part 1 of 2) DP03: Entities and the Data Model (Part 2 of 2)
E N D
Sage CRM Developers Course Coding the Web SelfService COM API (1)
Looking ahead to the classes • DP01: Introduction to the Development Partner Program • DP02: Entities and the Data Model (Part 1 of 2) • DP03: Entities and the Data Model (Part 2 of 2) • DP04: Implementing Screen Based Rules (Part 1 of 2) • DP05: Implementing Screen Based Rules (Part 2 of 2) • DP06: Screen and User Independent Business Rules • DP07: Workflow (Part 1 of 2) • DP08: Workflow (Part 2 of 2) • DP09: Using the API Objects in ASP Pages (Part 1 of 2) • DP10 : Using the API Objects in ASP Pages (Part 2 of 2) • DP11: Using the Component Manager • DP12: Programming for the Advanced Email Manager • DP13: Using the Web Services API • DP14: Using the Web Services API (Part 2 of 2) • DP15: Coding the Web Self Service COM API (Part 1 of 2) • DP16: Coding the Web Self Service COM API (Part 2 of 2) • DP17: Using the .NET API (Part 1 of 2) • DP18: Using the .NET API (Part 2 of 2)
Agenda • Introducing CRM Self Service • Technical Features and Architecture • Advantages and Limitations • Anonymous and Authenticated Access • Registry Settings and Self Service Configuration • Simple Pages including Logon and Logoff
What is CRM Self Service? • Allows customers to access and request services and support over the web • Can integrate key features of Sage CRM with a corporate website • A means to create a self service website. • Exposes CRM data to the WWW. • Enables powerful web-based sales, marketing and customer support solutions • Can capture new data straight to Sage CRM entities. • How much, or little, data is exposed or captured is entirely up to the self service implementation!
CRM Self Service Technical Features • Use familiar Sage CRM object methods and properties • Great flexibility – leverage industry standard scripting technologies to integrate with existing website • Flexible security features – define different levels of access
Users vs. Visitors • A User: • someone who logs into CRM using the familiar CRM interface • they have a paid license ‘seat’ • represented in the database as a record on the user table • A Visitor: • someone who accesses CRM via the Web Self Service website • number of visitors is limited by WSS separate licensing arrangements • Represented in the database as a record on the person table
Demonstration • Use Anonymous access to create a new Lead • (Not to be confused with the WebtoLead feature) • Within CRM promote created Lead into Company and Opportunity • Assign selfservice logon rights to created contact. • Logon as this new contact and view opportunities • Logon new Case
The Registry Settings Class registrations
The eWareSelfService Object • eWareSelfService is referenced in ewaress.js • It is a child of the eWare Object • Inherits all its properties and methods • Has a few extra, self service specific methods. • Only one registered object • Uses data from “Software/eWare/SelfService”
The SelfService configuration • Always points to “Software/eWare/SelfService” registry entry • Not CRM install specific, even though it can be altered there.
Building a Self Service System • Anonymous Usage • Build a Registration (New Lead) Page • Authenticated Usage • Logon Page • Logoff Page • Main Page (user details) • Record List Page (users cases) • New Record Page (new case) • Search Page (knowledge base)
Block Usage • Self Service is a COM based API • Usage of the blocks different from main application extension API. • Self Service environment lacks a user 'logon' that generates a CRM SID (Session ID) or context • Therefore can't use any API objects/methods that rely on session or context information for building URLs. • Can't use • CRM.Button() • CRM.GetTabs() • CRM.URL() etc, • Can't use the output mechanism of a typical application extension ASP page • CRM.AddContent(myBlock.Execute(Arg));Response.Write(CRM.GetPage()); • Self Service Pages use the more basic • Response.Write(myBlock.Execute(Arg));
Logoff • Typical Code • if(CRM.Authenticated){CRM.EndSSSession(Request.Querystring, Request.Form, Request.Cookies("eware"));Response.Redirect("customlogon.asp")}else{Response.Redirect("customlogon.asp")}
Looking ahead to the classes • DP01: Introduction to the Development Partner Program • DP02: Entities and the Data Model (Part 1 of 2) • DP03: Entities and the Data Model (Part 2 of 2) • DP04: Implementing Screen Based Rules (Part 1 of 2) • DP05: Implementing Screen Based Rules (Part 2 of 2) • DP06: Screen and User Independent Business Rules • DP07: Workflow (Part 1 of 2) • DP08: Workflow (Part 2 of 2) • DP09: Using the API Objects in ASP Pages (Part 1 of 2) • DP10 : Using the API Objects in ASP Pages (Part 2 of 2) • DP11: Using the Component Manager • DP12: Programming for the Advanced Email Manager • DP13: Using the Web Services API • DP14: Using the Web Services API (Part 2 of 2) • DP15: Coding the Web Self Service COM API (Part 1 of 2) • DP16: Coding the Web Self Service COM API (Part 2 of 2) • DP17: Using the .NET API (Part 1 of 2) • DP18: Using the .NET API (Part 2 of 2)