SlideShare a Scribd company logo
A C R M W H I T E PA P E R                                                                                                                                                                                  APRIL 2011




   Five Practical Solutions
     for Integrating with
   Oracle CRM On Demand



                                                                                SUBSCRIBE TO PERFICIENT BLOGS ONLINE
                                                                                www.Perficient.com/SocialMedia
                                                                                BECOME A FAN OF PERFICIENT ON FACEBOOK
                                                                                www.Facebook.com/Perficient
                                                                                FOLLOW PERFICIENT ON TWITTER
                                                                                www.Twitter.com/Perficient
                                                                                DOWNLOAD PERFICIENT WHITE PAPERS
                                                                                www.Perficient.com/WhitePapers

    Copyright © 2007-2011 Perficient, Inc. All rights reserved. This material is or contains Proprietary Information, Confidential Information and/or Trade Secrets of Perficient, Inc. Disclosure to third parties and or any
    person not authorized by Perficient, Inc. is prohibited. Use may be subject to applicable non-disclosure agreements. Any distribution or use of this material in whole or in part without the prior written approval of
    Perficient, Inc. is prohibited and will be subject to legal action.
About The Author
    Simon Wang is a Project Manager in Perficient’s China Global Delivery Center. He is a Certified
    Scrum Master/Developer, Six Sigma Green Belt and has more than ten years’ experience in the IT
    industry. Simon specializes in project management, CRM and business intelligence solutions,
    process improvement and distributed delivery using the Agile methodology.

    Simon Wang
    simon.wang@perficient.com

ABSTRACT
    Overview
    Oracle CRM On Demand offers a Web Service interface that allows customers to access their hosted
    data from any Web Services-enabled client. This paper provides an overview of a Web Services-
    based integration architecture and details five (5) practical solutions that enable integration with
    CRM On Demand.

    Introduction to Oracle CRM On Demand Integration
    Oracle CRM On Demand is a comprehensive,
    scalable and fast-to-deploy CRM solution based
    on the SaaS model. Pre-built record types and
    out of the box (OTB) functionality enables
    customers to begin leveraging CRM On
    Demand as quickly as an account is created.
    The Web Services framework built into CRM On
    Demand allows customers to integrate to
    existing applications to support their business
    processes and functional requirements.

    To the right is a basic diagram depicting the
    CRM On Demand architecture.



                                                        Figure 1 – High-Level Integrated CRM Architecture




                                          Five Practical Solutions for Integrating with Oracle CRM On Demand   t   2
This white page introduces five practical integration solutions:

      • Queue Manager
      • Web Integration
      • Embedded Web Applet
      • Data Conversion
      • Mail Response

Solution 1: QUEUE MANAGER
    Overview
    CRM On Demand offers a special web service called the Integration Event Queue. This web service
    queues all the messages, which follow a ‘first-in, first-out’ manner. The message is sent by a CRM
    On Demand workflow when specific rules are met. These rules are configured in a workflow that
    assigns an action to insert a message into the Integration Event Queue (IEQ). The IEQ and workflow
    features enable a standalone application running on an integration server to manage data in CRM
    On Demand.

    This standalone application is called Queue Manager. Queue Manager can read the Integration
    Event Queue at defined intervals and can obtain the record type name, row ID and workflow name,
    and then proceed with defined
    business logic. Finally, the process
    deletes the message from IEQ.
    Queue Manager fits in some
    scenarios when follow-up back-end
    operations are required after a user’s
    action.




                                            Figure 2 - Queue Manager Integration with CRM On Demand


                                          Five Practical Solutions for Integrating with Oracle CRM On Demand   t   3
Steps
 1. Configure Queue
   Go to Admin > Integration Event Administration > Integration Event Queue Management >
   New Queue




 2. Configure Workflow
   Go to Admin > Workflow Configuration > New. Create a workflow under Action > Create
   Integration Event. Configure this action to select the fields being monitored and sent to the
   Integration Event Queue.




                                  Five Practical Solutions for Integrating with Oracle CRM On Demand   t   4
3. Develop and Deploy the Queue Manager Application
         Queue Manager is usually designed as a standalone back-end application running on an
         integration server. It can be developed by Java, .NET or any other programming language.
         Queue Manager is executed at defined intervals determined by how quickly Queue Manager
         needs to process the message sent from a workflow (i.e. every five minutes). There are
         scheduler tools that can be integrated with Queue Manager, such as Quartz written in Java
         and Windows Scheduler written in .NET. Error reports with detailed data can be generated into
         log files and then sent notification to administrators for troubleshooting and correction. Log
         files can be configured as daily archived logs or published at a web URL for easy download.

    Best Practices
    Deploy one Queue Manager instance to process one event queue. There can be more than one type
    of event from different workflows as long as workflow name is part of the message.

Solution 2: WEB INTEGRATION
    Overview
    CRM On Demand offers powerful customization in the Admin global link. Administrators can
    create new custom Web Link fields and custom buttons in a web applet. These web links and
    custom buttons enable CRM On
    Demand to provide an entry for
    custom web application out of CRM
    On Demand. The custom web
    application can be triggered with
    parameters passed from the current
    row of the record type when a user
    clicks a web link or a custom button.
    Web integration is typically used in
    scenarios where user interaction is
    required. Figure 3 shows the flow of
    a Web Integration with CRM On
    Demand.




                                           Figure 3 - Flow of a Web Integration with CRM On Demand



                                         Five Practical Solutions for Integrating with Oracle CRM On Demand   t   5
Details
  1. Configure web link or custom button
  • Web link
    Go to Admin > Application Customization > Record Type > Record Type Field Setup > New
    Field. Create a new field with type “Web Link”. Edit the Web Link and point the link to the
    custom web application, with the parameters.




  Sample of a Web Link:




                                   Five Practical Solutions for Integrating with Oracle CRM On Demand   t   6
• Custom Button
  Go to Admin > Application Customization > Record Type > Record Type Web Applet > New.
  Create a web applet with type HTML. Choose HTML and JavaScript to generate the buttons
  and implement the action when a user clicks the buttons.




A sample of custom buttons:




2. Develop and deploy the web application
  Web integration is designed as a web application that is running on an integration server. It
  can be developed by Java, .NET or any other programming language. The integration server
  should be available from the internet. Normally there will be a popup window after a user
  clicks the web link or custom button. If there is a user interface, it is recommended to build
  the popup page theme the same as CRM On Demand. If there is no user interface, it’s better
  to have a progress bar if it takes a while to finish and then close itself automatically. Any error
  with detailed data should be outputted into log files and then send to administrators for
  troubleshooting and correction. Log files can be configured as a daily archived log or
  published at a web URL for easy download.




                                   Five Practical Solutions for Integrating with Oracle CRM On Demand   t   7
Best Practices
      • Get SSO token from the CRM On Demand page and send to web server for verification. Get
        the current user’s session through SSO token to update the record.
      • Display friendly error message and suggested correction actions if any error occurs occur.

Solution 3: EMBEDDED WEB APPLET
    Overview
    While Web Integration introduces how to create a web applet in CRM On Demand, Embedded Web
    Applets leverage HTML tags <iframe> to create an embedded web applet in CRM On Demand
    page. This approach allows the custom functions to behave the same as the original CRM On
    Demand and provides a consistent user experience.

    Embedded Web Applets apply to scenarios where you need to introduce a custom section in a
    record type related section where the data in this section needs to be loaded together with the
    record type page. Additionally, it allows a user to directly manage the data in this record type page.

    Details
      1. Configure web applet
         Go to Admin > Application Customization > Record Type > Record Type Web Applet > New.
         Create a web applet with type URL. Enter the URL that outputs the HTML code within the
         <iframe> tag.




                                          Five Practical Solutions for Integrating with Oracle CRM On Demand   t   8
Sample of embedded web applet:




  2. Develop and deploy the web application
    Embedded Web Applets are designed as a web application that runs on an integration server.
    It can be developed by Java, .NET or any other programming language. The integration server
    should be available from the internet. Again, it is recommended to build the web applet theme
    the same as CRM On Demand. Any error with detailed data should be outputted into log files
    and then send to administrators for troubleshooting and correction. Log files can be
    configured as a daily archived log or published at a web URL for easy download.

Best Practices
  • Avoid loading too much data initially. Display the web applet as soon as CRM On Demand
    loads.
  • Pop up friendly error message and suggested correction actions if any error occurs.




                                    Five Practical Solutions for Integrating with Oracle CRM On Demand   t   9
Solution 4: DATA CONVERSION
    Overview
    When CRM On Demand goes live it is often necessary to load initial data (e.g. Account, Contact,
    Products, etc.) as well as to keep this data synchronized in real time with its source systems. CRM
    On Demand offers a data import function in the Admin global link, although this feature is not able
    to import data automatically from the back end. The data import function requires administrator
    involvement.

    Data Conversion is designed as a standalone application running on integration server with a
    defined schedule. The data conversion function reads data placed in the staging area from source
    systems interface. Data format can be in various formats such as interface tables, flat files, and web
    services.

    Figure 4 shows the flow of Data Conversion integrating with CRM On Demand.




    Figure 4 - Flow of Data Conversion Integrating with CRM On Demand



                                         Five Practical Solutions for Integrating with Oracle CRM On Demand   t   10
Details
  1. Extract data from source systems to the staging area
    The first step is to determine what data is in the source systems, as well as the data’s location.
    Next, determine the strategy to extract data from the source system and transform it to the
    staging area. The data format in the staging area is flexible, making both source system
    extraction and CRM On Demand import convenient (e.g. interface table in database and flat
    files).

  2. Develop the data mapping and conversion rules
    A critical step in data conversion is to document the requirements around data mapping and
    conversion rules. The table below illustrates a sample of data mapping and conversion rules.




  3. Develop and deploy the data conversion application
    Data conversion is typically designed as a standalone back end application that is running on
    an integration server. It can be developed by Java, .NET or any other programming languages.
    For the initial data load, data conversion is executed once to import all the data. For data
    synchronization, data conversion is executed at defined time intervals determined by how
    quickly data conversion needs to synchronize data between source systems and CRM On
    Demand. A number of scheduler tools are available in the marketplace to set up the data
    synchronization process.


                                    Five Practical Solutions for Integrating with Oracle CRM On Demand   t   11
At the end of each data conversion a status report should be sent to the appropriate adminis-
         trator. The status report should include at the very least the start time, end time, number of
         records processed, number of successful records, and number of failed records. Any errors
         should be outputted into log files then sent to administrators for troubleshooting and
         correction. Log files can be configured as a daily archived log or published at a web URL for
         easy download.

    Best Practices
      • Create an Activity with the status information in CRM On Demand and associate the Activity
        with administrators so that they are able to view the status on the home page as soon as they
        log in to CRM On Demand.

Solution 5: MAIL RESPONSE
    Overview
    The Service Request and Activity, Account, and Contact record types in CRM On Demand provide
    the core functionality of a lightweight CRM Call Center. Providing an approach to allow customers
    to send mail to update a service request automatically makes the CRM Call Center more flexible.

    Typically, CRM On Demand is configured to send the notification with a FROM mail address (e.g.
    mycase@example.com) and specific mail subject including the SR# to customer when an SR has
    been created. The customer can reply to the mail with updates or attachments.

    Mail Response is a standalone back end application running on integration server to monitor this
    mailbox. This function reads the new mail subject and validates if a SR# exists in CRM On Demand.
    If yes, Mail Response creates a new Activity and Attachment that is associated to the SR.

    If the SR# does not exist in the application, Mail Response can be configured to simply skip the new
    mail and move to another folder. Figure 5 shows the flow of a Mail Response integration with CRM
    On Demand.




                                        Five Practical Solutions for Integrating with Oracle CRM On Demand   t   12
Figure 5 - Flow of a Mail Response Integration with CRM On Demand.




                                    Five Practical Solutions for Integrating with Oracle CRM On Demand   t   13
Details
  1. Configure workflow when a new SR saved
     Go to Admin > Workflow Configuration > New. Create a workflow with an Action > Create
     Send Mail.




     Create the email template that it is sent to the customer. There should be a fixed pattern with
     the SR# in the mail subject and the correct FROM email address provided to allow a
     customer reply.

  2. Develop and deploy the mail response application
     Mail Response is typically designed as a standalone backend application that is running on an
     integration server. It can be developed by Java, .NET or any other programming languages.
     Mail Response is executed on defined time intervals and decides how quickly Mail Response
     needs to process the new mail in the Inbox. Any Queue Manager errors should be reported
     with detailed data and outputted into log files sent to administrators for troubleshooting and
     correction. Log files can be configured as daily archived logs or published at a web URL for
     easy download.

Best Practices
  • Design the mail subject pattern identification mechanism to be flexible. It should be config-
    urable and easy to update without code change.
  • Filter out auto-reply (e.g. out of office mail or spam mails) responses.




                                    Five Practical Solutions for Integrating with Oracle CRM On Demand   t   14
SUMMARY
   The five solutions covered in this paper are flexible and lightweight technical solutions that best fit
   the integration architecture of Oracle CRM On Demand. While Web Services is a key to Oracle
   CRM On Demand integration, we can look at other Service Oriented Architecture (SOA) solutions
   (e.g. SOA middleware, BPEL, etc.) for other solutions, as long as the customer’s business needs are
   satisfied.




                                         Five Practical Solutions for Integrating with Oracle CRM On Demand   t   15

More Related Content

PPT
Oracle crm on demand
PPTX
Oracle CRM
PDF
Biz Craft Brochure
PPTX
CRM Demo Slides
PPT
Merit Event - Customer Relationship Management - What are the Benefits?|
PPT
What are Customer Relationship Managers
PDF
Crm Today Dinesh Chandrasekar
PPT
Sap Crm
Oracle crm on demand
Oracle CRM
Biz Craft Brochure
CRM Demo Slides
Merit Event - Customer Relationship Management - What are the Benefits?|
What are Customer Relationship Managers
Crm Today Dinesh Chandrasekar
Sap Crm

What's hot (19)

PPT
CRM Roadmap - Sample
PPT
Microsoft Dynamic CRM
PPTX
PPT
CRM Introduction
PPT
Customer Relationship Management (CRM)
PPTX
Information Builders WebFocus
PDF
In Mind Cloud - Product Release - 2005
PPTX
Readiness for CRM - 11 Steps to Plan & Prepare for CRM
PDF
Op9 Premier Ds
PDF
5 Essential Features of Call Center CRM
PPTX
Reduce Churn, Increase Revenue, and Scale Up with CPQ
PPTX
Banker In A Box
PPTX
CRM - Customer Relationship Management
PPTX
Analytical crm and social crm
PPT
It Solution On Value Chain
PPTX
Crm in Amazon
PPTX
Sugar Crm Marketing Industries Presentation 2 Sales Force Automation
PDF
In Mind Cloud - Product Release - 2108
PPTX
Case study: Asian Operators Designs Strategic Crm Roadmap
CRM Roadmap - Sample
Microsoft Dynamic CRM
CRM Introduction
Customer Relationship Management (CRM)
Information Builders WebFocus
In Mind Cloud - Product Release - 2005
Readiness for CRM - 11 Steps to Plan & Prepare for CRM
Op9 Premier Ds
5 Essential Features of Call Center CRM
Reduce Churn, Increase Revenue, and Scale Up with CPQ
Banker In A Box
CRM - Customer Relationship Management
Analytical crm and social crm
It Solution On Value Chain
Crm in Amazon
Sugar Crm Marketing Industries Presentation 2 Sales Force Automation
In Mind Cloud - Product Release - 2108
Case study: Asian Operators Designs Strategic Crm Roadmap
Ad

Similar to Five Practical Solutions for Integrating with Oracle CRM On Demand (20)

PPTX
Dev day paris020415
PDF
Salesforce Certified MuleSoft Associate Exam Dumps.pdf
PPTX
Microsoft Dynamics CRM Multi - Tier Architecture
PPT
Salesforce Presentation
PPTX
Salesforce Lightning workshop
PPTX
Salesforce Lightning workshop Hartford - 12 March
PPT
2. 8 things that will make your business love your developers again
PPTX
All About Salesforce Lightning
PPTX
IBM Forms Experience Builder on Cloud
PPTX
Integration with Microsoft CRM using Mule ESB
PPTX
Suisse Romande SF DG - Lightning workshop
PPTX
Get Data from Microsoft CRM using Mule ESB
PPT
CloudOps evening presentation from Salesforce.com
PPTX
Dynamics AX and Salesforce Integration
PDF
Lightning week - Paris DUG
PDF
Sakshi Report
PPTX
IBM Forms Experience Builder on Cloud
PDF
Primavera unifier integration_wp
PPTX
WebServices Using Salesforce
PPTX
IBM Forms Experience Builder - Web Form Apps for Marketers
Dev day paris020415
Salesforce Certified MuleSoft Associate Exam Dumps.pdf
Microsoft Dynamics CRM Multi - Tier Architecture
Salesforce Presentation
Salesforce Lightning workshop
Salesforce Lightning workshop Hartford - 12 March
2. 8 things that will make your business love your developers again
All About Salesforce Lightning
IBM Forms Experience Builder on Cloud
Integration with Microsoft CRM using Mule ESB
Suisse Romande SF DG - Lightning workshop
Get Data from Microsoft CRM using Mule ESB
CloudOps evening presentation from Salesforce.com
Dynamics AX and Salesforce Integration
Lightning week - Paris DUG
Sakshi Report
IBM Forms Experience Builder on Cloud
Primavera unifier integration_wp
WebServices Using Salesforce
IBM Forms Experience Builder - Web Form Apps for Marketers
Ad

More from Perficient, Inc. (20)

PPTX
Driving Strong 2020 Holiday Season Results
PPTX
Transforming Pharmacovigilance Workflows with AI & Automation
PDF
The Secret to Acquiring and Retaining Customers in Financial Services
PPTX
Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.
PPTX
Content, Commerce, and... COVID
PPTX
Centene's Financial Transformation Journey: A OneStream Success Story
PPTX
Automate Medical Coding With WHODrug Koda
PPTX
Preparing for Your Oracle, Medidata, and Veeva CTMS Migration Project
PDF
Accelerating Partner Management: How Manufacturers Can Navigate Covid-19
PPTX
The Critical Role of Audience Intelligence with Eric Enge and Rand Fishkin
PPTX
Cardtronics Future Ready with Oracle EPM Cloud
PDF
Teams Summit - What is New and Coming
PPTX
Empower Your Organization with Teams & Remote Work Crisis Management
PPTX
Adoption & Change Management Overview
PPTX
Microsoft Teams: Measuring Activity of Employees Working from Home
PPTX
Securing Teams with Microsoft 365 Security for Remote Work
PPTX
Infrastructure Best Practices for Teams Remote Workers
PPTX
Accelerate Adoption for Microsoft Teams
PPTX
Preparing for Project Cortex and the Future of Knowledge Management
PPTX
Utilizing Microsoft 365 Security for Remote Work
Driving Strong 2020 Holiday Season Results
Transforming Pharmacovigilance Workflows with AI & Automation
The Secret to Acquiring and Retaining Customers in Financial Services
Oracle Strategic Modeling Live: Defined. Discussed. Demonstrated.
Content, Commerce, and... COVID
Centene's Financial Transformation Journey: A OneStream Success Story
Automate Medical Coding With WHODrug Koda
Preparing for Your Oracle, Medidata, and Veeva CTMS Migration Project
Accelerating Partner Management: How Manufacturers Can Navigate Covid-19
The Critical Role of Audience Intelligence with Eric Enge and Rand Fishkin
Cardtronics Future Ready with Oracle EPM Cloud
Teams Summit - What is New and Coming
Empower Your Organization with Teams & Remote Work Crisis Management
Adoption & Change Management Overview
Microsoft Teams: Measuring Activity of Employees Working from Home
Securing Teams with Microsoft 365 Security for Remote Work
Infrastructure Best Practices for Teams Remote Workers
Accelerate Adoption for Microsoft Teams
Preparing for Project Cortex and the Future of Knowledge Management
Utilizing Microsoft 365 Security for Remote Work

Recently uploaded (20)

PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Electronic commerce courselecture one. Pdf
PPTX
Spectroscopy.pptx food analysis technology
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Machine learning based COVID-19 study performance prediction
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Encapsulation_ Review paper, used for researhc scholars
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Assigned Numbers - 2025 - Bluetooth® Document
Electronic commerce courselecture one. Pdf
Spectroscopy.pptx food analysis technology
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Unlocking AI with Model Context Protocol (MCP)
NewMind AI Weekly Chronicles - August'25-Week II
20250228 LYD VKU AI Blended-Learning.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
sap open course for s4hana steps from ECC to s4
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
A comparative analysis of optical character recognition models for extracting...
Per capita expenditure prediction using model stacking based on satellite ima...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Machine learning based COVID-19 study performance prediction
“AI and Expert System Decision Support & Business Intelligence Systems”
Encapsulation_ Review paper, used for researhc scholars

Five Practical Solutions for Integrating with Oracle CRM On Demand

  • 1. A C R M W H I T E PA P E R APRIL 2011 Five Practical Solutions for Integrating with Oracle CRM On Demand SUBSCRIBE TO PERFICIENT BLOGS ONLINE www.Perficient.com/SocialMedia BECOME A FAN OF PERFICIENT ON FACEBOOK www.Facebook.com/Perficient FOLLOW PERFICIENT ON TWITTER www.Twitter.com/Perficient DOWNLOAD PERFICIENT WHITE PAPERS www.Perficient.com/WhitePapers Copyright © 2007-2011 Perficient, Inc. All rights reserved. This material is or contains Proprietary Information, Confidential Information and/or Trade Secrets of Perficient, Inc. Disclosure to third parties and or any person not authorized by Perficient, Inc. is prohibited. Use may be subject to applicable non-disclosure agreements. Any distribution or use of this material in whole or in part without the prior written approval of Perficient, Inc. is prohibited and will be subject to legal action.
  • 2. About The Author Simon Wang is a Project Manager in Perficient’s China Global Delivery Center. He is a Certified Scrum Master/Developer, Six Sigma Green Belt and has more than ten years’ experience in the IT industry. Simon specializes in project management, CRM and business intelligence solutions, process improvement and distributed delivery using the Agile methodology. Simon Wang simon.wang@perficient.com ABSTRACT Overview Oracle CRM On Demand offers a Web Service interface that allows customers to access their hosted data from any Web Services-enabled client. This paper provides an overview of a Web Services- based integration architecture and details five (5) practical solutions that enable integration with CRM On Demand. Introduction to Oracle CRM On Demand Integration Oracle CRM On Demand is a comprehensive, scalable and fast-to-deploy CRM solution based on the SaaS model. Pre-built record types and out of the box (OTB) functionality enables customers to begin leveraging CRM On Demand as quickly as an account is created. The Web Services framework built into CRM On Demand allows customers to integrate to existing applications to support their business processes and functional requirements. To the right is a basic diagram depicting the CRM On Demand architecture. Figure 1 – High-Level Integrated CRM Architecture Five Practical Solutions for Integrating with Oracle CRM On Demand t 2
  • 3. This white page introduces five practical integration solutions: • Queue Manager • Web Integration • Embedded Web Applet • Data Conversion • Mail Response Solution 1: QUEUE MANAGER Overview CRM On Demand offers a special web service called the Integration Event Queue. This web service queues all the messages, which follow a ‘first-in, first-out’ manner. The message is sent by a CRM On Demand workflow when specific rules are met. These rules are configured in a workflow that assigns an action to insert a message into the Integration Event Queue (IEQ). The IEQ and workflow features enable a standalone application running on an integration server to manage data in CRM On Demand. This standalone application is called Queue Manager. Queue Manager can read the Integration Event Queue at defined intervals and can obtain the record type name, row ID and workflow name, and then proceed with defined business logic. Finally, the process deletes the message from IEQ. Queue Manager fits in some scenarios when follow-up back-end operations are required after a user’s action. Figure 2 - Queue Manager Integration with CRM On Demand Five Practical Solutions for Integrating with Oracle CRM On Demand t 3
  • 4. Steps 1. Configure Queue Go to Admin > Integration Event Administration > Integration Event Queue Management > New Queue 2. Configure Workflow Go to Admin > Workflow Configuration > New. Create a workflow under Action > Create Integration Event. Configure this action to select the fields being monitored and sent to the Integration Event Queue. Five Practical Solutions for Integrating with Oracle CRM On Demand t 4
  • 5. 3. Develop and Deploy the Queue Manager Application Queue Manager is usually designed as a standalone back-end application running on an integration server. It can be developed by Java, .NET or any other programming language. Queue Manager is executed at defined intervals determined by how quickly Queue Manager needs to process the message sent from a workflow (i.e. every five minutes). There are scheduler tools that can be integrated with Queue Manager, such as Quartz written in Java and Windows Scheduler written in .NET. Error reports with detailed data can be generated into log files and then sent notification to administrators for troubleshooting and correction. Log files can be configured as daily archived logs or published at a web URL for easy download. Best Practices Deploy one Queue Manager instance to process one event queue. There can be more than one type of event from different workflows as long as workflow name is part of the message. Solution 2: WEB INTEGRATION Overview CRM On Demand offers powerful customization in the Admin global link. Administrators can create new custom Web Link fields and custom buttons in a web applet. These web links and custom buttons enable CRM On Demand to provide an entry for custom web application out of CRM On Demand. The custom web application can be triggered with parameters passed from the current row of the record type when a user clicks a web link or a custom button. Web integration is typically used in scenarios where user interaction is required. Figure 3 shows the flow of a Web Integration with CRM On Demand. Figure 3 - Flow of a Web Integration with CRM On Demand Five Practical Solutions for Integrating with Oracle CRM On Demand t 5
  • 6. Details 1. Configure web link or custom button • Web link Go to Admin > Application Customization > Record Type > Record Type Field Setup > New Field. Create a new field with type “Web Link”. Edit the Web Link and point the link to the custom web application, with the parameters. Sample of a Web Link: Five Practical Solutions for Integrating with Oracle CRM On Demand t 6
  • 7. • Custom Button Go to Admin > Application Customization > Record Type > Record Type Web Applet > New. Create a web applet with type HTML. Choose HTML and JavaScript to generate the buttons and implement the action when a user clicks the buttons. A sample of custom buttons: 2. Develop and deploy the web application Web integration is designed as a web application that is running on an integration server. It can be developed by Java, .NET or any other programming language. The integration server should be available from the internet. Normally there will be a popup window after a user clicks the web link or custom button. If there is a user interface, it is recommended to build the popup page theme the same as CRM On Demand. If there is no user interface, it’s better to have a progress bar if it takes a while to finish and then close itself automatically. Any error with detailed data should be outputted into log files and then send to administrators for troubleshooting and correction. Log files can be configured as a daily archived log or published at a web URL for easy download. Five Practical Solutions for Integrating with Oracle CRM On Demand t 7
  • 8. Best Practices • Get SSO token from the CRM On Demand page and send to web server for verification. Get the current user’s session through SSO token to update the record. • Display friendly error message and suggested correction actions if any error occurs occur. Solution 3: EMBEDDED WEB APPLET Overview While Web Integration introduces how to create a web applet in CRM On Demand, Embedded Web Applets leverage HTML tags <iframe> to create an embedded web applet in CRM On Demand page. This approach allows the custom functions to behave the same as the original CRM On Demand and provides a consistent user experience. Embedded Web Applets apply to scenarios where you need to introduce a custom section in a record type related section where the data in this section needs to be loaded together with the record type page. Additionally, it allows a user to directly manage the data in this record type page. Details 1. Configure web applet Go to Admin > Application Customization > Record Type > Record Type Web Applet > New. Create a web applet with type URL. Enter the URL that outputs the HTML code within the <iframe> tag. Five Practical Solutions for Integrating with Oracle CRM On Demand t 8
  • 9. Sample of embedded web applet: 2. Develop and deploy the web application Embedded Web Applets are designed as a web application that runs on an integration server. It can be developed by Java, .NET or any other programming language. The integration server should be available from the internet. Again, it is recommended to build the web applet theme the same as CRM On Demand. Any error with detailed data should be outputted into log files and then send to administrators for troubleshooting and correction. Log files can be configured as a daily archived log or published at a web URL for easy download. Best Practices • Avoid loading too much data initially. Display the web applet as soon as CRM On Demand loads. • Pop up friendly error message and suggested correction actions if any error occurs. Five Practical Solutions for Integrating with Oracle CRM On Demand t 9
  • 10. Solution 4: DATA CONVERSION Overview When CRM On Demand goes live it is often necessary to load initial data (e.g. Account, Contact, Products, etc.) as well as to keep this data synchronized in real time with its source systems. CRM On Demand offers a data import function in the Admin global link, although this feature is not able to import data automatically from the back end. The data import function requires administrator involvement. Data Conversion is designed as a standalone application running on integration server with a defined schedule. The data conversion function reads data placed in the staging area from source systems interface. Data format can be in various formats such as interface tables, flat files, and web services. Figure 4 shows the flow of Data Conversion integrating with CRM On Demand. Figure 4 - Flow of Data Conversion Integrating with CRM On Demand Five Practical Solutions for Integrating with Oracle CRM On Demand t 10
  • 11. Details 1. Extract data from source systems to the staging area The first step is to determine what data is in the source systems, as well as the data’s location. Next, determine the strategy to extract data from the source system and transform it to the staging area. The data format in the staging area is flexible, making both source system extraction and CRM On Demand import convenient (e.g. interface table in database and flat files). 2. Develop the data mapping and conversion rules A critical step in data conversion is to document the requirements around data mapping and conversion rules. The table below illustrates a sample of data mapping and conversion rules. 3. Develop and deploy the data conversion application Data conversion is typically designed as a standalone back end application that is running on an integration server. It can be developed by Java, .NET or any other programming languages. For the initial data load, data conversion is executed once to import all the data. For data synchronization, data conversion is executed at defined time intervals determined by how quickly data conversion needs to synchronize data between source systems and CRM On Demand. A number of scheduler tools are available in the marketplace to set up the data synchronization process. Five Practical Solutions for Integrating with Oracle CRM On Demand t 11
  • 12. At the end of each data conversion a status report should be sent to the appropriate adminis- trator. The status report should include at the very least the start time, end time, number of records processed, number of successful records, and number of failed records. Any errors should be outputted into log files then sent to administrators for troubleshooting and correction. Log files can be configured as a daily archived log or published at a web URL for easy download. Best Practices • Create an Activity with the status information in CRM On Demand and associate the Activity with administrators so that they are able to view the status on the home page as soon as they log in to CRM On Demand. Solution 5: MAIL RESPONSE Overview The Service Request and Activity, Account, and Contact record types in CRM On Demand provide the core functionality of a lightweight CRM Call Center. Providing an approach to allow customers to send mail to update a service request automatically makes the CRM Call Center more flexible. Typically, CRM On Demand is configured to send the notification with a FROM mail address (e.g. mycase@example.com) and specific mail subject including the SR# to customer when an SR has been created. The customer can reply to the mail with updates or attachments. Mail Response is a standalone back end application running on integration server to monitor this mailbox. This function reads the new mail subject and validates if a SR# exists in CRM On Demand. If yes, Mail Response creates a new Activity and Attachment that is associated to the SR. If the SR# does not exist in the application, Mail Response can be configured to simply skip the new mail and move to another folder. Figure 5 shows the flow of a Mail Response integration with CRM On Demand. Five Practical Solutions for Integrating with Oracle CRM On Demand t 12
  • 13. Figure 5 - Flow of a Mail Response Integration with CRM On Demand. Five Practical Solutions for Integrating with Oracle CRM On Demand t 13
  • 14. Details 1. Configure workflow when a new SR saved Go to Admin > Workflow Configuration > New. Create a workflow with an Action > Create Send Mail. Create the email template that it is sent to the customer. There should be a fixed pattern with the SR# in the mail subject and the correct FROM email address provided to allow a customer reply. 2. Develop and deploy the mail response application Mail Response is typically designed as a standalone backend application that is running on an integration server. It can be developed by Java, .NET or any other programming languages. Mail Response is executed on defined time intervals and decides how quickly Mail Response needs to process the new mail in the Inbox. Any Queue Manager errors should be reported with detailed data and outputted into log files sent to administrators for troubleshooting and correction. Log files can be configured as daily archived logs or published at a web URL for easy download. Best Practices • Design the mail subject pattern identification mechanism to be flexible. It should be config- urable and easy to update without code change. • Filter out auto-reply (e.g. out of office mail or spam mails) responses. Five Practical Solutions for Integrating with Oracle CRM On Demand t 14
  • 15. SUMMARY The five solutions covered in this paper are flexible and lightweight technical solutions that best fit the integration architecture of Oracle CRM On Demand. While Web Services is a key to Oracle CRM On Demand integration, we can look at other Service Oriented Architecture (SOA) solutions (e.g. SOA middleware, BPEL, etc.) for other solutions, as long as the customer’s business needs are satisfied. Five Practical Solutions for Integrating with Oracle CRM On Demand t 15