Skip to Content
Technical Articles

SAP GRC-Customer Defined Survey- End to End Implementation

Customer Defined Survey- End to End Implementation

Having the right planning and approach, along with a strong technical foundation and correct information, can smooth the pathway and ensure the perfect execution of your strategic vision. This blog is against the backdrop of end-to-end implementation of customer defined surveys in GRC Process Control. Though, there is some information already available on this topic in multiple pieces, this is an attempt to summarize all the information in one place, along with additional details on the missing pieces.  Although from an operations perspective, this is just like Disclosure Survey Functionality but is very useful for clients who are already using Disclosure Surveys in PC and still want to use new surveys with Custom OWP Form, Custom email solution and a custom reporting mechanism. This blog can help as one stop shop for all the assistance needed in end-to-end implementation of Custom Surveys in GRC. So, Let’s get started!

Customers could define their own survey type and do compliance survey on specific objects. these type of Surveys come handy when you are already using standard Disclosure Surveys and still want to use a separate Survey with a Customized OWP form, Customized email solution and a Custom reporting mechanism. I faced the same situation with my client where Client is already using standard Disclosure Surveys but still wanted to have a separate line of Surveys for Internal Auditors- which will have a OWP form, emails and Reports totally different from what Disclosure Survey already has. This document will guide you on how you can implement these Surveys end to end in your systems.

The workflow task is created as a PDF as well as an online work item and includes task data. For Offline mode, It is sent as an email attachment. The title of the related attachment shows the task name. When you get the email, open the PDF file and complete the Survey and then submit the PDF. The outbound email will be launched. The system will automatically handle this workflow task after receiving the email. And, for online mode, user logs in to NWBC Work Inbox and take the action on work item created.

       SAP GRC 10.0,10.1, 12.0

 Note: Implement SAP note ‘2860253 – Customers can define their own survey types and do compliance survey on specific objects like ORGUNIT and CONTROLs. While using ORGUNIT as entity, planner throws an error ‘Cannot find Activity for plan XYZ”

Given SAP Note needs to be implemented if the requirement is to Perform Surveys on Org and Sub process entity level.

4.1 Create question category and assign proper answer types

New question category should be created in IMG and allowed answer types should be assigned to question category. This question category can be used in customer defined survey template.

  1. Path: SAP Customizing Implementation Guide –>Governance, Risk and Compliance –>

Common Component Setting –>Surveys –> Implement New Survey Valuation

  1. According to the IMG activity documentation, create question category (For instance: new question category ID:ZD)
  1. Click button ‘Back’ to previous Select new defined question category and double click folder ‘Answer Types’ in left hierarchy.
  2. Click button ‘New Entries’ and assign  answer   types   which  are  allowed  in this question category, then click button ‘Save’ and exit

4.2  Create or reuse survey PDF Interactive Form

Create a custom form “ZGRFN_SURVEY_FORM” as a copy of standard form “GRFN_SURVEY_FORM”  with an interface ‘ZGRFN_SURVEY_INTERFACE’ as a copy of standard interface ‘GRRM_WORKSHOP_SURVEY_FORM’.

Creating custom form will help customize the fields like client logo, organization, title, etc.

The form will reflect the configured questions and the survey can be submitted.

In case the attachments are also to be included in the form.

  • Add attachment tab beside evaluation. It allows to browse file from desktop and attach it to the survey. Addition, opening, deletion of URL and file is allowed.

To activate the ‘Browse’ functionality on the form for attachments, usage rights need to be enhanced for the PDF.

4.3  Define agent slot

Customer can define new agent slot to determine recipients.

  1. Maintain view “GRFNAGENTSLOTV” (Tcode: SM30) to define agent slot
  1. Click button “New Entries”, Input Business Event, Entity ID, Activity and Event Name, then click key “Enter”. Users who have authorization with selected activity on entity and data part will be determined as

NOTE: This demo survey is intended to be sent at SUBPROCESS Level. This can be modified to any Entity Object level.

  1. Click button “Save” to save entry
  1. Maintain view “GRFNAGENTSLOTCV” to maintain customized agent determination rules. If specific role is used for business event, this view should be maintained. Otherwise, skip step 4 to step
  1. Click button “New Entries”, input the defined business event in the business event field, role and entity

In the example below, the new defined business event is assigned to the role for Sox Sub Process owner

  1. Click button “Save” to save the entry.

4.4         Define message class

Custom message class should be created to determine notification texts as required.

  1. Maintain view “GRFNVNOTIFYMSG” (Tcode: SM30) to define message
  1. Click button „New Entries‟, input message class, message number, document object, attachment

Three entries created with following message numbers:

  • 000: Survey Distribution (text in survey email)
  • 006: Survey successfully processed (text for successful processing)
  • 008: Duplicated submission notification (text for duplicated submission notification)
  • 009: Invalidate answers notification (text for invalidate answers notification)

For each message number, entry should be created as following steps.

  • In the message class filed, enter message class ID
  • In the message number field, enter message number
  • In the Notification Messages section, enter a description for the notification
  • Enter the subject line of the e-mail message
  • Enter the name of the documentation object used as the body of the e-mail message. This documentation object can be defined in the document class General Text ‟in transaction code SE61‟
  • Enter attachment file name, if file is attached to the
  • Save your entry

4.5         Create survey usage class

Create survey usage class to return PDF form, recipient list, message variables and so on.

  1. A custom survey usage class ZCL_GRFN_SVYUSAGE must be created to inherit from class “CL_GRFN_SVYUSAGE”.
  • In class“CL_GRFN_SVYUSAGE”,there are two attributes,“MV_SVYTYP”and “MV_OBJECTID”. “MV_SVYTYP” represents survey type, “MV_OBJECTID” represents object id.
  1. Redefined method “GET_RECIPIENT_LIST”.
  • Recipient list is fetched using the regulation as space, object id and agentslot.

Agentslot is fetched based on the survey type.

  1. Redefine method “GET_MESSAGE_CLASS”. Mandatory
  • Return the message class used for customer’s survey.

 rv_agentslot = ‘ZPC_RF_SURVY’.

  1. Redefine method “GET_MSG_VARIABLE”.
  • This method returns message variables which are used to replace the variables used in notification text, email subject and filename of attached pdf interactive form.

Variables like survey name, object id, object name, plan name and due date are fetched and used in the PDF as well as notifications.

4.6         Define Online Webdynpro Component

WEBDYNPRO COMPONENT “GRFN_SIMPLE_SURVEY” CAN BE USED AS ONLINE WD COMPONENT DIRECTLY.

To add the required customizations, a custom webdynpro component can be created as ’ZGRFN_SIMPLE_SURVEY’.

4.6.1            Create Webdynpro Component

The custom Webdynpro component ’ZGRFN_SIMPLE_SURVEY’:

  • Implements Webdynpro interface “GRFN_ONLINE_SURVEY”.
  • Reuses Webdynpro Component “GRFN_SURVEY_RESPONSE”, interface methods are called by SAP online survey framework and Webdynpro Component. “GRFN_SURVEY_RESPONSE” is used to display customer defined survey questions.
  • Component ‘GRFN_DOCUMENT’ is also re used to add attachments to the online survey.
  • Custom view needs to be created with an additional tab in the layout for attachments and links. “MAIN_W” appears in the window list and interface methods appear in the component
  • Main window ‘MAIN_W’ is updated with the attachment container.

4.6.2            Implement Interface method

Below interface methods appearing in component controller have been implemented:

  1. Interface method ‘INIT’

This method is called by online survey framework to initialize the application. For instance: initialize survey questions.

  1. Interface method ‘IS_CHANGED_BY_CLIENT’

This method is called by online survey framework to check whether the question answer or survey comments is changed by current user.

  1. Interface method ‘RELOAD_SURVEY’

If survey interactive PDF form is filled offline and uploaded in online application, this method will be called by online survey framework. Interface method ‘INIT’ of WebDynpro Component ‘GRFN_SURVEY_RESPONSE’ should be called in this method.

Note: Parameter ‘IV_FORCE_RELOAD’ value of interface method ‘INIT’ of WebDynpro Component ‘GRFN_SURVEY_RESPONSE’ must be set as ‘X’.

  1. Interface method ‘UPDATE_SURVEY_MODEL’

This method is called by online survey framework to save survey answers.

  1. Interface method ‘SET_CURRENCY’

Parameter ‘IV_CURRENCY’ value of this method is determined by the currency of organization.

4.7         Maintain survey type table

New survey type should be created with Question Category ID, agent Slot, survey usage class, PDF Form Interface, PDF Form and Online component.

  1. Path: SAP Customizing Implementation Guide –>Governance, Risk and Compliance –>

Common Component Setting –> Surveys –> Maintain Survey Types.

  1. According to IMG activity documentation to define new survey type and each field will be described here-
  • Survey type

Survey type must be defined in customer name space, begin with ‘Y’ or ‘Z’.

  • Text

Description for survey type

  • Survey Category

Compliance survey should be used.

  • Question Cat. ID

The new defined question category must be used here. Then planner can retrieve survey templates which are created for this question category.

  • Business Event

The new defined agent slot must be used here.

  • ABAP Class

The new defined survey usage class must be used here.

  • Interface for PDF-Based Form

The new defined PDF Interactive Form interface must be used here.

  • Name of PDF-Based Form

The new defined PDF Interactive Form must be used here.

  • Online WD Component

To support online survey function, online WD component must be used here.

  1. `Click button “New Entries” to create a survey type

4.8         Maintain plan usage

  1. Path: SAP Customizing Implementation Guide –>Governance, Risk and Compliance –>

Common Component Setting –> Planning and Scheduling –> Define Plan Usage

  1. According to IMG activity documentation to create Plan usage Plan usage for entity “Sub Process”

Note:Fill the fields with proper value, the field “ABAP Class” must be filled with value “CL_GRFN_PLANUSAGE_SURVEY” and check box “Need Survey” must be selected.

 Plan usage for entity “ORGUNIT”–Need Select Objects checkbox is not required for ORGUNIT compliance survey

4.9         Maintain selection procedure

NOTE: DO NOT PERFORM THIS STEP IF THE ENTITY IS “ORGUNIT”

 

  1. Path: SAP Customizing Implementation Guide → Governance, Risk and Compliance → Common Component Setting → Planning and Scheduling → Maintain Relationship between Selection Procedure & Plan Usage
  1. According to the IMG activity Documentation to maintain selection

4.10    Assign Regulations to Plan Usage

  1. Path: SAP Customizing Implementation Guide → Governance, Risk and Compliance → Process Control → Multiple Compliance Framework → Maintain Regulation to Plan Usage
  1. According to the IMG activity Documentation to assign regulation to Plan usage

4.11    Create Custom Report

 A new Report Id is created in report configuration in below given SPRO path:

SPRO-> SAP Customizing Implementation Guide-> Governance, Risk and Compliance-> Reporting-> Maintain Report Configuration

A custom Webdynpro ‘ZGRFN_REPORT_SELECTION’ can be created to customize the selection screen for Reporting.

Implements interface ‘GRFN_REPORT_SELECTION’.

Create custom view with a following layout:

Method LINK_CLICKED in Component controller is updated to handle hyperlinks in the report.

Set mandatory fields from selection and Initialize in method SELECTION_INIT.

Get data from selection in Method SELECTION_GET.

All the tabs in the hierarchy are updated for the Report:

  • Version dependent data:
  • Walking strategy

A new custom Entity ID is created:

  • Create Structure ZGRFN_S_CUST_REPATTR for reporting attributes.
  • Create entry in Table GRFNREPENTITYSTR for the new custom Entity ZSURVEY:

Create below two Custom classes and maintain in view GRFNVENTITY and implement the

methods of these classes to meet the customized requirements.

ZCL_GRFN_API_CUST_PLAN- ‘Fetch’ and ‘traverse’

ZCL_GRFN_OBJTYPE_DESCR- s

An entry is maintained in table GRFNNAVENTITY for survey link creation in Report

  • Hierarchy
  • Evaluation types
  • Columns- Add the required columns to be displayed in report.
  • Filter-Add fields for selection criteria
  • Column header texts- Customize the header texts for columns selected for the report

Some of the fields have been activated as hyperlinks by updating the LINK as below:

4.12       Define survey questions

Create survey questions with new defined questions category in question library. Path NWBC –> Assessment –> Question Library.  For example: create question for answer type: Yes/No/NA

4.13    Define survey template

Create survey template with new defined question category in survey library. Path NWBC –> Assessment –> Survey Library

4.14    Plan survey

  1. Enter Plan Details and Click button “Next”
  1. Select Regulation and Organization and click button “Next”
  1. Select objects and click button “Next”
  1. Review the plan and click button “Activate Plan”
  1. Click button “Finish” to complete the plan

4.15    Receive survey via Email

If offline function is configured in IMG, customer can receive survey via email.

4.16    Receive survey via work inbox

Customer can always open the work inbox to receive survey and open survey online.

4.17    Check Submitted Survey Details in the Custom Report Created as Above

Run The report with Plan Name, Period and Org Data as shown below

Use Print and Export button to Export results to Excel

 

5.    Conclusion

To recapitulate, I have provided the technical insights on how to create your own surveys with custom OWP forms, emails and reports. if you’re interested to know any in depth steps on OWP form creation, Report creation, email solution or any other related subject from the blog, please let me know in the comments section and I shall assist you with that.

Please like, share and drop your suggestions and learnings in the comments section and feel free to reach out to me in case you need any further assistance on this topic.

Cheers!

Be the first to leave a comment
You must be Logged on to comment or reply to a post.