Registration

Dear SAP Community Member,
In order to fully benefit from what the SAP Community has to offer, please register at:
http://scn.sap.com
Thank you,
The SAP Community team.
Skip to end of metadata
Go to start of metadata

 

Overview

 

Surveys in CRM are used to gather information from specific users. Using the survey tool questionnaires, surveys and opinion polls can be created and managed.

Survey Tool

The Survey Tool contains the main maintenance components, required for managing the surveys. The survey tool is available in the SAPGUI in the survey suire using transaction CRM_SURVEY_SUITE. The main components are the survey repository and the survey builder. The survey builder is available in the WEB UI as well.

Survey Repository

The survey repository contains the survey style sheets and the survey parameters. This can be accessed in from the survey suite only, using the survey repository button.

The survey repository contains the files for the style sheets (cascading style sheets), the static survey XSLTs, the parameter files (XML), as well as layout XMLs for the survey print function.

  • Cascading Style Sheets (CSS): for formating surveys - colors, background, style, etc
  • Static Survey XSLTs: required for rendering the survey from the survey XML to the HTML
  • Parameter XMLs: contain parameters for URL scenario
  • Layout XMLs: contains layouts for print scenario

 

CATServer administration

The survey repository is the place to administrate the CATServer. The so called CATServer is responsible for transforming the survey XMLs to the HTML using the XSLT files. There are the following versions available in the CRM system:

  • Internal CATServer(ABAP Based): This version makes use of the ABAP XSLT processor. Therefore, this version of the CATServer has some limitations with respect to functionality, performance and resource consumption (especially memory). Hence the JTS is the recommended CATServer with the performance point of view, however since the ABAP based CATServer is much more stable always recommend this one.
  • JTS: Java Based Version of the CATServer JTS is Java based and provides the same functional scope than the external Java version. This requires no external installation. Inaddition, it is low in resource consumption and shows a much better performance than the internal ABAP-based CATServer.                     

 

Switching between the ABAP and the JTS CATServer can be done at runtime, there is no system restart required. To understand how to switch between the CATServer versions consider the following note 857535 - internal CATServer: Setup Instructions.        

 

Survey Transformation

Transformation During the Presentation of the Survey:

  • Survey is stored as an XML.
  • While presenting the survey, XML goes through the XSLT transformation as a result of which the survey HTML gets generated - this is happens in 2 steps:
    • Survey preparation (Build Time): the preparation step is done once for every survey. The first stylesheet (GenerateValues), extracts the default values from the survey and stores them in the survey vales template file. The second stylesheet (GenerateTemplate) generates the survey template.



    • Survey Execution (Run Time): The Survey Template processes the Survey Values Templates and generates the Survey HTML with the default values.

 

There was a change done to the framework, more information is available in the following sap note:

1817152 - Migration to THTMLB framework for BSP scenarios

 

 

BSP Applications / SICF services

 

Accessing the survey usually goes via BSP application CRM_SVY_SERVER. The corresponding service in SIFC is maintained under the following path:

 

/default_host/sap/bc/bsp/sap/crm_svy_server

 

 

The service needs to be activated to make the survey accesible. In addition the logon user must not be maintained in the logon data tab.

 

Having a logon user maintained will lead to an error as documented in the following SAP note:

 

1795897 - BSP XSRF error messages

 

Technically the reason is that the BSP application CRM_SVY_SERVER has XSRF protection enabled - maintaining the user will therefore cause issues. This design is shipped with the following SAP note:

 

1591057 - Unauthorized use of application functions in CRM-BF-SVY

 

When accessing the survey from outside the company network, login credentials are required.

 

To enable the survey access from outside the network the BSP application CRM_SVY_PUBLIC was introduced with the following note:

 

1848237 - Error on calling SICF service crm_svy_server

 

The BSP application CRM_SVY_PUBLIC has no XSRF protection, hence can be accessed with an anonymous logon user defined in SICF.

Surveys need to be flagged 'publicly available' in the survey attributes to enable the access via CRM_SVY_PUBLIC. 

 

Survey Builder  

The survey builder is the tool to maintain and administrate the surveys. This is available in WEB UI as well as in SAPGUI in Survey Suite, both are supported.

 

Maintain Survey

A survey needs to be maintained for a specific application. Before creating the survey the application needs to be specified. Once the survey is created a blank survey is generated using a template. This looks rather similar in SAPGUI and WEB UI:

 

The survey contains a structure of different sections, including questions with certain answers categories and answer several answer options. This again looks similar in SAPGUI and WEB UI:

Rating

Each question may be weighted with a rating factor that weights the question in the evaluation. The higher the rating factor the greater the evaluation weighting of the question. Each answer option can also be weighted with a certain rating. In the evaluation the rating is calculated with multiplying the question's rating factor with the answer's rating.

 

The rating is used in the lead qualification scenario.

 

Each question has a specific rating factor, and each answer option has a specific rating.

 

Those ratings calculate the overall rating of the survey.

 

Answers

The answer contains of answer categories and answer options. Each answer can be flagged as display only and can be flagged as required - the required flag can't be set for checkbox groups and radio buttons, this is a restriction,

 

There are the following answer categories available:

Answer CategoryAdditional Information
Input FieldFree text input field; field lenght needs to be specified

Text

Free text input field over several lines; field lenght needs to be specified

Input Field for Date

date input field; value help available; input is validated
Input Field for Timetime input field; value help available; input is validated
Input Field for Numbernumber input field; input is validated
Selection Button Groupradio buttons; just one answer option can be selected

Checkbox / Checkbox Group

checkbox; more answer options can be selected
List Box with Single / Multiple Selectionprefilled listbox

  

Pushbuttons

Each Survey has the buttons SUBMIT and CANCEL with the same function code assigned

Questions for Marketing Attributes

Questions can be added for marketing attributes. The question is created for a certain marketing attribute assigned to a certain marketing attribute set, For this question system reads the available answer options from the Marketing Attribute Application.

Once the survey is used for a specific account the values are read from the account using function CRM_SURVEY_MKTATTR_PRESELECT and prefilled in the survey. After submitting the survey the changed marketing attributes are updated for the account using function CRM_SURVEY_MKTATTR_UPDATE.

 

Survey Attributes

Technical Settings

The technical settings in the survey attributes contains the information about data storage and evalutation:

The callback to the application contains a function that is called before the survey is opened and after the survey is submitted. The Callback to PBO is called before the survey is loaded, this retrieves application data depending on the scenario. The Callback to PAI is called after the survey is submitted, this sends back the survey data to the application. Depending on the scenario there are the following functions delivered:

ScenarioPBO ModulePAI Module
ActivityCRM_SVY_ACTIVITY_PBOCRM_SVY_ACTIVITY_PAI

Lead

CRM_SVY_LEAD_PBOCRM_SVY_LEAD_PAI
IC Shared Service CenterCRM_SVY_ESSC_PBOCRM_SVY_ESSC_PAI
Contract CRM_SVY_CONTRACT_PAI
Opportunity CRM_SVY_OPPORT_PAI
Service 

CRM_SVY_REPAIR_PAI

CRM_SVY_SERVICE_PAI

MarketingCRM_MKTCA_SURVEY_MKT_PBOCRM_MKTCA_SURVEY_MKT_PAI

 

Publicly Available

 

With setting the flag 'publicly available' the survey is accessed via the service CRM_SVY_PUBLIC rather than CRM_SVY_SERVER.

This is required for accessing surveys from outside the company network without providing user and password.

 

Administration Data

Scenarios 

There are the following scenarios available:

  • Screen: survey renderd for the SAPGUI
  • Printer: survey rendered for printing and pdf generation
  • Handheld / Offline Handheld: survey rendered for handheld
  • BSP pages: survey rendered for WEB UI

Versions

After each change of the survey using the survey builder the survey needs to be activated so that the same can be used. Each change of an activated survey creates a new version of the survey, that is initiall created in inactive status. The newly created version then needs to be activated again so the same can be used.

 The Version Management also contains kind of a change history for the survey.

 

Translations

The survey is initially created in a default language - this is usually the log on language. To make the survey available in any languages different from the source language the survey needs to be translated using the translation tool. A translation needs to be created for each version. 

 

Transport

 

A survey can be transported using the transport tool.

The selected survey is put into a transport request and can be transported in the target system. In the target system the survey needs to be activated.

 

To transport a survey together with its translations each survey translation needs to be added to the transport request manually. This needs to be done the following way:

 

This needs to be done from the survey version management

From there each survey translation needs to be added in the transport request.


Each of the translated versions need to be activated in the target system.

 

Evaluation

 

Evaluation in CRM

There is a lean evaluation tool integrated in the CRM system. This is integrated in the CRM_SURVEY_SUITE for all of the releases.

 

The evaluation tool for the WEB UI is only available with SAP CRM7.0 EHP4 SP06 and above or SAP CRM 7.0 EHP3 SP1

 This is documented in the following SAP note:

https://launchpad.support.sap.com/#/notes/0002325585

 

 

To enable the simple evaluation in Survey Suite the flag 'Evaluation Without Business Information Warehouse' needs to be flaged in the survey attributes:

 

After having some survey values available, the same are available in the evaluation.

 

 

 

The result can be exported or can be displayed as a graph.

 

Evaluation in BW

Evaluation can also be done in the BW system - a sample scenario is available in the following page:

 

Survey Evaluation in BW

Scenarios

 

URL Scenario

The survey can be sent as an URL. This scenario is mainly used in Marketing, in campaign execution and campaign automation scenario. The survey link is sent per mail, the receiver open the URL and submit the survey. The results can be taken for analyzes or are used as decission for further steps in campaign automation.

 

The survey URL is generated the following way:

Technical Details

Tables

Object

SubObject

Tables

Description

Additional information

Survey Repositorystyle sheets and survey parametersCRM_SVY_DB_SFACRM Surveys: Survey File Access 

Programs

Object

Description

CL_CRM_SVY_DOM_DEFINE-IF_CRM_SURVEY_DOM~CREATE_INITIAL_SURVEY_XMLdefaults CSS file

CRM_SURVEY_MKTATTR_PRESELECT

  

CRM_SURVEY_MKTATTR_UPDATE

function for reading MKT attribute from an account and prefilling MKT attribute question in a survey

function for updating MKT attribute to an account from survey

CRM_SURVEY_DATA_GET

CRM_SURVEY_SEL_M_DET_FOR_ORDER

CRM_SURVEY_CHECK_EC 

function called in survey determination

CL_CRM_SVY_SURVEY=>COPY

CRM_SVY_COPY_SURVEY

copy survey in suvey builder

Common Issues

 

Common issues

 

A collection of common issues within CRM Survey application is available in the following blog:

 

Survey Rendering in CRM WEB UI 

 

 

 


 

 

  • No labels