Quantcast
Channel: Customer Relationship Management (SAP CRM)
Viewing all 228 articles
Browse latest View live

Desktop Connection with iCRM is now generally available

$
0
0
Imaging your Sales Force can fulfil their job using well known native tools
to administer own contacts, share information and collaborate with their teams.
Combine the power of SAP CRM with the familarity of Microsoft Outlook.

 

 

SAP’s Desktop Connection is the tool which helps you achieving this goal. Now it moved out of restricted Ramp-Up and is available to all customers.

 

The current version 2.0 (generally available February 14th, 2014) covers synchronization of accounts, contacts and appointments between MS Outlook and SAP CRM. Collaborating and information sharing is just one click away using native MS Outlook look and feel, ensuring everyone is working with the most up to date information.

 

Desktop Connection tailored your needs and was designed with flexibility and ease of use in mind. With the CRM server customization package you can not only define what gets synchronized but also extend the synchronized objects with your own fields, or even define your own objects to be synchronized.

 

Get started now, extend in the future. Together with invisibleCRM® we are already working on the next releases. Our professional edition, available in Q2 2014, will additionally synchronize e-mails and personal tasks. The enterprise edition, available later this year, will offer even more synchronized objects such as leads and opportunities, as well as a number of other improvements.

 

Further information can be found here.


Changing Default values for Installed Basis Search screen in CRM

$
0
0

This was a complicated request and hopefully will help some of you.

 

Requirement: By Default Installed Basis search screen displays the Search For as “Header Using Header Data”. In our case this default was to be changed to “Header Using Partner Data”.

 

Image1.jpg

 

 

After struggling a lot with debugging and some code changes found the following simple solution.

 

Solution:

 

Change the Repository.XML file. 

  1. Repository.xml file changes:

 

FROM:

 

<NavigationalLink name="TO_HEADERSEARCH">
<Source outboundPlugRef="headersearch" viewRef="CRMCMP_IBSEARCH/IBS    earchViewSet"/>
<Targets>
<Target inboundPlugRef="default" viewRef="CRMCMP_IBSEARCH/HeaderByHeader"/>
<Target inboundPlugRef="default" viewRef="CRMCMP_IBSEARCH/HeaderResultList"/>
</Targets>
</NavigationalLink>

 

TO:

 

<NavigationalLink name="TO_HEADERSEARCH">
<Source outboundPlugRef="headersearch" viewRef="CRMCMP_IBSEARCH/IBS  earchViewSet"/>
<Targets>
<Target inboundPlugRef="default" viewRef="CRMCMP_IBSEARCH/HeaderByPartner"/>
<Target inboundPlugRef="default" viewRef="CRMCMP_IBSEARCH/HeaderResultList"/>
</Targets>
</NavigationalLink>

 

 

FROM:

 

</NavigationalLink>
<NavigationalLink name="SEARCH_HEAD_f4">
<Source outboundPlugRef="SEARCH_HEAD_F4" viewRef="MainWindow"/>
<Targets>
<Target inboundPlugRef="DEFAULT" viewRef="CRMCMP_IBSEARCH/HeaderByHeader"/>
<Target inboundPlugRef="DEFAULT" viewRef="CRMCMP_IBSEARCH/HeaderResultList"/>
</Targets>
</NavigationalLink>

 

TO:

 

</NavigationalLink>
<NavigationalLink name="SEARCH_HEAD_f4">
<Source outboundPlugRef="SEARCH_HEAD_F4" viewRef="MainWindow"/>
<Targets>
<Target inboundPlugRef="DEFAULT" viewRef="CRMCMP_IBSEARCH/HeaderByPartner"/>
<Target inboundPlugRef="DEFAULT" viewRef="CRMCMP_IBSEARCH/HeaderResultList"/>
</Targets>
</NavigationalLink>

   

 

Output: Defaults changed to “Header Using Partner Data”.

Image2.jpg

Debugging CRM Middleware without disabling Queue.

$
0
0

One way to debug CRM Middleware is by disabling the inbound queue in ECC or outbound queue in CRM. This was causing great inconvenience to others working on the same server trying to create similar documents in ECC. This blog is about debugging the CRM middleware without disabling the queue. The example used here is of a DMR request created in ECC once a service confirmation is saved and completed in CRM.

 

  • Place an external break point in function module CRM_R3_SERVICECONF_UPLOAD.

 

Image3.jpg

 

  • Create a service confirmation in CRM, fill the mandatory fields, complete and save the confirmation.

 

  • By default gv_synchronous_call  is initial and function ‘BAPI_SERVICECONF_PROXY_UPLOAD’ is called as a background task. Once GV_SYNCHRONOUS_CALL is set to ‘X’, function ‘BAPI_SERVICECONF_PROXY_UPLOAD’ is called in foreground task and can be debugged all the way in ECC.

Image2.jpg

 

  • Function module CRS_SERVICE_BILLING_PROCESS processes the service confirmations.

 

   Image1.jpg

Another way to preview PDF in CRM web client UI with little coding

$
0
0

There is a good blog about how to get PDF preview in CRM web client UI. However several development are invovled in that solution. You have to implement your own ICF node to make PDF displayed in UI, and you have to generate the binary code of PDF by yourself.

 

There is just another approach to achieve the same result but with much less coding by leveraging the standard control "Adobe Interactive form" in ABAP webdynpro. In this way no ICF node implementation, no manual PDF binary code generation, just a few model task.

 

1. Create an form interface in tcode SFP.

clipboard1.png

Choose interface type as ABAP Dictionary-Based Interface.

clipboard2.png

Just create two parameter NAME and SCORE. Activate the interface.

clipboard3.png

2. Create a new form template via tcode SFP.

clipboard4.png

Click "Context"tab, drag the two parameters from Interface to the right part Context ZPF_EXAMPLE and drop there.

clipboard5.png

Click tab Layout, design your form layout. Here I create a caption and two text fields. Bind the data source of the two fields to your form context parameter. Here text field NAME is bound to ZPF_EXAMPLE.NAME and Score field bound to ZPF_EXAMPLE.SCORE.

clipboard6.png

3. Create a new ABAP webdynpro in SE80. A view MAIN will be created by workbench automatically.

Just put a new Adobe Interactive form control into the empty view. You can choose "Insert Element" from context menu and choose "Interactive form"

clipboard7.png

clipboard8.png

Specify the form template name ZPF_EXAMPLE to property "templateSource" created in step2.

clipboard9.png

After that the property "dataSource" is also determined automatically.

clipboard10.png

Click tab "Context", now you should see the two parameters defined in form interface is also displayed in context node of view MAIN.

clipboard11.png

4. Create a new Webdynpro application and assign two parameter NAME and SCORE to it.

clipboard12.png

5. Double click WDDOINIT to implement:

clipboard13.png

The init method will retrieve name and score from application parameter included in url. The url will be populated from CRM webclient UI side.

Till now the development of ABAP webdynpro is finished. You don't care about the PDF generation and display, it will be handled by ABAP webdynpro framework.

 

method WDDOINIT .  data(lo_node) = wd_context->get_child_node( 'ZPF_EXAMPLE' ).  DATA: lv_name type string,        lv_score type int4.  lv_name = cl_wd_runtime_services=>get_url_parameter( name = 'NAME' ).  lv_score = cl_wd_runtime_services=>get_url_parameter( name = 'SCORE' ).  lo_node->set_attribute( name = 'NAME' value = lv_name ).  lo_node->set_attribute( name = 'SCORE' value = lv_score ).
endmethod.

6. The left task would be quite easy for a CRM UI developer:

 

I create a simple view with two input fields for Name and Score, and one hyperlink.

clipboard14.png

The event handler for hyperlink click:

 

DATA: lr_popup    TYPE REF TO if_bsp_wd_popup,        lr_cn       TYPE REF TO cl_bsp_wd_context_node,        lr_obj      TYPE REF TO if_bol_bo_property_access,        lt_parameters TYPE tihttpnvp,        ls_params   TYPE crmt_gsurlpopup_params.  data(lo_data) = me->typed_context->data->collection_wrapper->get_current( ).  DATA(ls_line) = VALUE ihttpnvp( name = 'NAME' value = lo_data->get_property_as_string( 'NAME' ) ).  APPEND ls_line TO lt_parameters.  ls_line = VALUE ihttpnvp( name = 'SCORE' value = lo_data->get_property_as_string( 'VALUE' ) ).  APPEND ls_line TO lt_parameters.  cl_wd_utilities=>construct_wd_url(      EXPORTING        application_name = 'ZADOBEFORM'        in_parameters    = lt_parameters      IMPORTING        out_absolute_url = mv_url ).  lr_popup =  me->comp_controller->window_manager->create_popup(  iv_interface_view_name = 'GSURLPOPUP/MainWindow'                                                                  iv_usage_name          = 'GSURLPOPUP'                                                                  iv_title               = 'Adobe Interactive Form Control' ).  lr_cn = lr_popup->get_context_node( 'PARAMS' ).           "#EC NOTEXT  lr_obj = lr_cn->collection_wrapper->get_current( ).  ls_params-url = mv_url.  ls_params-height = '700'.                                 "#EC NOTEXT  lr_obj->set_properties( ls_params ).  lr_popup->set_display_mode( if_bsp_wd_popup=>c_display_mode_plain ).  lr_popup->set_window_width( 700 ).  lr_popup->set_window_height( 700 ).  lr_popup->open( ).

Of course you need to add component GSURLPOPUP via component usage.

 

In the runtime after name and score fields are maintained in CRM UI and hyperlink is clicked, the corresponding PDF will be generated and displayed by ABAP Webdynpro framework.

clipboard15.png

3D tag cloud is also possible via BSP in CRM system!

$
0
0

Actually the code of this example comes from a Thoughworker in China and this is his blog.

I just move his code to a BSP component. Feel free to have a look at his blog directly, in case you understand Chinese

 

Once the bsp application is launched, all the tags will move in an ellipse trace:

 

 

clipboard1.png

clipboard2.png

clipboard3.png

To achieve it you just need a BSP component with a simple view:

clipboard4.png

paste the html source below to main.htm:

 

<%@page language="abap"%><%@extension name="htmlb" prefix="htmlb"%><script type="text/javascript" src="test.js"></script><div id="tagCloud"><style type = "text/css">  #tagCloud {    height: 300px;    width: 600px;    position: relative;    margin: 0;    overflow: hidden;
}
#tagCloud a {    position: absolute;    text-decoration: none;    color: #0B61A4;    text-shadow: #66A3D2 1px -1px 1px;
}</style>    <ul>        <li><a href="#">ABAP</a></li>        <li><a href="#">BSP</a></li>        <li><a href="#">Webdynpro</a></li>        <li><a href="#">RFC</a></li>        <li><a href="#">Interaction Center</a></li>    </ul>    <script type="text/javascript">          var tagCloud = new JsTagCloud({ CloudId: 'tagCloud' });          tagCloud.start();    </script></div>

 

Note:

a. define an CSS ID selector "tagCloud". It is used as the container for all tag clouds. Specify a default width and height. Set position property to relative.

b. define an CSS class selector for tag cloud. The position is set as absolute, as we will change X and U coordinate of tag cloud elements by Javascript.

 

Create an text file locally and paste the javascript code below into it:

 

function JsTagCloud(config) {    var cloud = document.getElementById(config.CloudId);    this._cloud = cloud;    var w = parseInt(this._getStyle(cloud, 'width'));    var h = parseInt(this._getStyle(cloud, 'height'));    this.width = (w - 100) / 2;    this.height = (h - 50) / 2;    this._items = cloud.getElementsByTagName('a');    this._count = this._items.length;    this._angle = 360 / (this._count);    this._radian = this._angle * (2 * Math.PI / 360);    this.step = 0;
}
JsTagCloud.prototype._getStyle = function(elem, name) {    return window.getComputedStyle ? window.getComputedStyle(elem, null)[name] :            elem.currentStyle[name];
}
JsTagCloud.prototype._render = function() {    for (var i = 0; i < this._count; i++) {        var item = this._items[i];        var thisRadian = (this._radian * i) + this.step;        var sinV = Math.sin(thisRadian);        var cosV = Math.cos(thisRadian);        item.style.left = (sinV * this.width) + this.width + 'px';        item.style.top = this.height + (cosV * 50) + 'px';        item.style.fontSize = cosV * 10 + 20 + 'pt';        item.style.zIndex = cosV * 1000 + 2000;        item.style.opacity = (cosV / 2.5) + 0.6;        item.style.filter = " alpha(opacity=" + ((cosV / 2.5) + 0.6) * 100 + ")";    }    this.step += 0.007;
}
JsTagCloud.prototype.start = function() {    setInterval (function(who) {        return function() {            who._render();        };    } (this), 20);
}

 

Then import it via context menu->Create->Mime Object->Import:

clipboard6.png

In the javascript we first get the radian of each tag cloud element, and change its X and Y coordinate, that is left and top property based on calculation on it from time to time( in 20 millisecond's interval ). The same logic is done on font size, the opacity and Z-Order index so that we got a Pseudo 3D effect: the more the element is near to us, the bigger and more vivid it is, and vice visa.

How-to navigate to ECC BOR object from CRM DocFlow

$
0
0

Yesterday I faced a very common issue with some CRM business transactions: the document flow was showing ECC objects for which no navigation was possible (despite the identification number rendered as hyperlink):

img1.png

So, as I couldn't find any source on SCN to solve it, I decided to post a quick note on one possible solution to overcome this problem (which I found by debugging the system as of method PREPARE_COL_FOR_NAVIGATE_BOR from class CL_CRM_UIU_BT_NAVIGATE). First, check table BSPDLCV_OBJ_TYPE: it is most likely that you won't find any entry delivered by SAP with "BOR object Type" = "BCONTACT". So you'll have to create such entry in table BSPDLCVC_OBJ_TYP (which is exactly the same as BSPDLCV_OBJ_TYPE, but for customers only):

img2.png

It's important to use "BOL Object Name" = "ICBORWrapper", because SAP will use this name to determine a "mapping class" stored in table CRMV_UI_OBJ_MAPS (or CRMV_UI_OBJ_MAP if you want to overwrite this customizing with your own values):

img4.png

This class will in turn create a BOL entity dedicated to BOR objects that will store the BOR type, ID and logical system (i.e. those three pieces of information you need to navigate to the right system, on the right screen). Also, make sure that you name your UI object type WRAPPED_<BOR TYPE> in table BSPDLCVC_BJP_TYP. Now we just need to create a Launch Transaction (tcode CRMC_UI_ACTIONWZ):

img5.png

And we also need to enable navigation for this WRAPPED_BCONTACT UI object type created above in the corresponding navigation bar (tcode CRMC_UI_NBLINKS):

img6.png

img8.png

Everything is setup. If you click on the link corresponding to BCONTACT object type in the Document Flow assignment block, the system will automatically navigate to the corresponding screen in the backend (provided the launch transaction is customized correctly, and the backend system is defined in tcode CRMS_IC_CROSS_SYS). In case you're facing any issue, the following documents by Hasan Zubairi might help:

Almost Everything About Transaction Launcher - Part I

Almost Everything About Transaction Launcher - Part II

The Search for the Holy Grail: Deliver Unprecedented Customer Engagement

$
0
0

Personalized customer engagement is not an event, it is a process. Once the appropriate infrastructure is in place, the journey can begin….


Companies are looking to provide world class service as a way to meet the challenges from increasingly demanding customers that are knowledgeable about their alternatives.

 

“…Technology is changing the game, and customers are changing the rules. Yet these are more than just trends; we are witnessing a profound paradigm shift in how companies engage with customers. Today’s customers are digitally connected, socially networked, and always on, and with technologies like smartphones, social networks, and mobile apps, they are more empowered than ever.” says Volker Hildebrand, SAP’s Global Vice President, Customer Engagement Solutions.

 

Facing these challenges may seem daunting, even overwhelming. Once the commitment is made to deliver personalized customer engagement, start where the biggest impact can be made, your Contact Center. This is the “face” you present to your customers and where you interact with them.


One of the challenges is the unpredictable nature of the communications. Your customers decide when, if and how they are going to communicate with you. Your challenge is how to appropriately respond in the communications mode your customers choose, and as quickly as possible.


Another challenge is that the customer dialogue is not a series of discrete, unique experiences, it is part of an ongoing relationship. Customers expect you to know about them and acknowledged them, and to be treated with dignity, and not kept waiting. Violating this relationship can have profound consequences. When musician Dave Carroll was unhappy with how United Airlines handled his concerns and treated him he created a music video “United Breaks Guitars” video that has been seen by more than 13 million viewers.


Companies like Wacker Neuson made a strategic decision to begin their journey to provide personalized customer engagement. They wanted to make sure that the agent could really help callers with their problems by being as knowledgeable as possible when customer called in. To do so, they wanted to arm their Contact Center agents with everything they knew about their customers and have all of the tools available. With a 360-degree view of the customer, agents will instantaneously obtain customer information from multiple systems that typically exist in separate silos. Financial and transactional information from SAP ERP systems where in one place and the sales histories from SAP CRM systems were in another. Seamlessly integrating these systems with the SAP BCM Contact Center gives the agents’ comprehensive information without the time consuming toggling between multiple screens.


Creating a new paradigm for world class customer service with personalized customer engagement is not an event, it is a process. Once the appropriate infrastructure is in place, the journey can begin and the goals of increased customer loyalty and greater long term profits achieved.

Business Analyst Sandy Reisenauer from Wacker Neuson loves sharing the tale of her organization’s experiences on this journey. Hear what she has to say.

 

This blog originally appeared on NoJitter.com and SAP Business Innovations

New feature within SAP CRM 7.0 EhP1 – Object Tagging

$
0
0

An Object tagging is a great feature that allows you to tag an instance of an object (Ex. An Order) and share the tags with the community.


As per EhP1 of SAP CRM 7.0 the “Object Tagging” has been made available. With Object Tagging or Tag Cloud, you can easily put all kinds of tags on most of the objects across Sales, Service and Marketing area.

Screen Shot 1.png


The tag cloud function has to be activated using PARAMETERS profile and Personalization, check details how to  - Tag Clouds - Generic User Interface Functions - SAP Library

 

  • Tag Clouds is created for usability purposes but it is also a powerful tool for search optimization.
  • Since user link tags are textual and keyword-rich, a tag cloud is more advantageous to use in terms of Search Optimization against traditional navigation bar.
  • Favorites are a collection of direct links to predefined objects which are stored in your favorites list.
  • You can easily create and manage your favorites as well as share them across the community.
Tagging an object (eg. an order)
Tagging an object is easy. In the overview screen of an order (or another object within CRM) you can click on the tag button to tag the order. This tag button you can find in the upper-right corner of the WebUI(below screen shot). Once this button is clicked, a Tag Object Dialog box is opened.
Tags in the “Assigned Tags” area are tags that you already had added to this specific object. These tags can be deleted by clicking on the trash can button. The “Suggested Tags” are tags that have been attached to this specific object by other users and can be selected by clicking the tag.

In the field “Add tag” you can add several tag names by using commas or add only one tag name for one single tag.

You can select any tag and navigate to a result list page where objects are grouped by Object Types. If multiple objects are linked to your tag you will navigate to a results list page, otherwise you will navigate directly to the overview page if only a single object is linked to the tag.

 

Available actions in the assignment block “Tag”

In your homepage, your tags should be visible in the assignment block “Tag”.
Here you can choose the following actions to display your tags:

  • My Cloud
  • Community Cloud
  • Search for Tags
  • Search for objects
  • Popular Tags
  • My Recent Tags


How to enable this new feature

 

Requisite - To enable this new feature, you have to assign a Functional Profile “Parameter” to a Business Role .
1. First you should create a Parameter (Refer UIF_PROF as value) with the right settings for the tag cloud. You can do this by adding the correct Parameter Assignment to the profile.

Screen Shot 2.png

2. Assign a new functional profile for the tag cloud, you assign this to your Business Role.

 

3. After assigning the Business role to the right user, it is possible that you have to make some personal settings in the Web UI (Home - Personalize - Settings).
After that you can assign tags to all the objects across Sales, Service and Marketing area.

Desktop Connection Community

$
0
0


there a lot's of things ongoing in the new Desktop Connection development. Actually we are working on a "Professional Edition" which will be available soon. This version will cover quite a bunch of functionality to support sales people in their daily work. This version will still be license free for SAP CRM customers, so it is very simpe to try it out and leverage the power.

To improve our development and gather feedback a Wiki Page is available:

http://wiki.scn.sap.com/wiki/display/CRM/Desktop+Connection+for+SAP+CRM

 

Here you can find some collaterals and also FAQs.

 

To collect all of the postings a tag was introduced "desktop_connection". If this is used is fairly simple to get an overview.

IS-U&CRM Integration - How to Add Extra Fields to Business Agreements in SAP CRM

$
0
0

1. Objective

This blog describes how to add additional fields to Business Agreements (BUAG) in releases SAP CRM 2007 and SAP CRM 7.0 (i.e. Customer-specific fields).


2. Prerequisites

    • SAP CRM 2007 or SAP CRM 7.0
    • For release SAP IS-U 4.72 or lower: Implementation of SAP note 718234
    • Implementation of SAP note 1280914


    3. Instructions

    In order to store additional fields in the database, it’s recommended to use the append technique (two alternatives).

    If one way doesn’t work for you, try another one.
     

    There are two alternatives:

    A) Append a field to table CRMM_BUAG_H (special data of business agreements)
    Fields of the same name and in the same sequence (very important!) has to be appended to each of the following structures:

    • BAPIBUS1006130_SPEC_DATA
    • BAPIBUS1006130_SPEC_DATA_EXP
    • BAPIBUS1006130_SPEC_DATA_X
    • CRMT_BUAGS_EI_SPEC_DATA_X (both in SAP CRM and in R/3 or ERP (Plug-In))
    • BAPI_TE_FKKVKP (in R73 or ERP (Plug-In))


    For the fields to be added to structures BAPIBUS1006130_SPEC_DATA_X and CRMT_BUAGS_EI_SPEC_DATA_X, choose field type BAPIUPDATE.

     

    B) Append a field to table CRMM_BABR_H (general data of business agreements)

    Fields of the same name and in the same sequence (very important!) has to be appended to each of the following structures:

    • BAPIBUS1006130_GNRL_DATA
    • BAPIBUS1006130_GNRL_DATA_EXP
    • BAPIBUS1006130_GNRL_DATA_X
    • CRMT_BUAGS_EI_GNRL_DATA (both in CRM and in R/3 or ERP (Plug-In))
    • CRMT_BUAGS_EI_GNRL_DATA_X (both in CRM and in R/3 or ERP (Plug-In))


    For the field to be added to structures BAPIBUS1006130_GNRL_DATA_X and

    CRMT_BUAGS_EI_GNRL_DATA_X, choose field type BAPIUPDATE.


    4. Validations

    If necessary, for the BAPI, use method DATA_CHECK_BAPI of business add-in CRM_MDBP_BUAG.


    5. IC-Webclient UI enhancements

    New fields are automatically available at BOL (Business Object Layer) level.

    You need just add them to existing nodes and view configuration tab.

    Use transaction BSP_WD_CMPWB (BSP WD Workbench) and enhancement sets to maintain the enhancement of views. 
    Otherwise, in WEB UI you can use AET (Application Enhancement tool) for the same purpose.


    If you want to show new fields (by BSP WD Workbench or AET in WEB UI) then the following views are relevant (views that show some information about object Business Agreement):


    Context

    Component

    View

    IC Agent

    BUAG_DETAIL

    BUAG_DETAIL/BuAgCorr

     

     

    BUAG_DETAIL/BuAgDetails

     

     

    BUAG_DETAIL/BuAgDunning

     

     

    BUAG_DETAIL/BuAgInvoice

     

     

    BUAG_DETAIL/BuAgMoreFields

     

     

    BUAG_DETAIL/BuAgPayments

     

     

    BUAG_DETAIL/BuAgRefunds

     

     

    BUAG_DETAIL/BuAgTax

     

    BUAG_QUERY

    BUAG_QUERY/BuAgDynBuAgList

     

     

    BUAG_QUERY/BuAgList

     

     

    BUAG_QUERY/BuAgListEdit

    Utilities Sales

    IUBUAG

    IUBUAG/Details

     

    IUBUAGS

    IUBUAGS/ResultList

    Attachment Attribute: Visible in Search

    $
    0
    0

    I tried to use them to perform the search and I expected only the attachment instances belonging to the given product I specified in INSTID are returned.

     

    To my surprise, the query result includes not only the attachments for the given product, but also returns lots of attachments belonging to other products created by me.

    clipboard1.png

    Through debugging, I found the parameter CATID, TYPEID and INSTID is not passed into main search function module in line 61, which means they are not considered during search at all.

    clipboard2.png

    Instead the search result are filtered by the three parameters in post processing, according to the attribute value "CRM_SEARCH_VISIBILITY" of each attachment instance:

    clipboard3.png

    In Attachment Property UI, we can assign three kinds of value for "Visible in Search":

    clipboard4.png

    clipboard5.png

    It is defined as instance attribute in Document model workbench:

    clipboard22.png

    according to the filtering logic in code below, the attribute would work as below in CMAdvDocumentFinder implementation:

     

    No Restriction: the attachments with such attribute will not be filtered.

    1 - In Business Objects of the Same Object Type Only: the attachments whose host business object type not equal to search parameter TYPEID will be filtered out.

    2- Only in the Same Business Object: the attachments whose host business object instance not equal to the instance specified by search parameter TYPEID and INSTID will be filtered out.

    clipboard6.png

    Customer Engagement, Do Take it Personally

    $
    0
    0

    Customer Engagement is a white-hot topic.  Everybody is talking about it, but there is a big difference between those who can "walk the walk and those who "talk the talk".

     

    The best way to create Customer Engagement is to have a personal experience with your customer and make sure that they know you care about them. Integrating your Contact Center with instant access to everything you know about your customer (both ERP and CRM data) is key. Agents are empowered with knowledge of the:

    • History of the customer relationship (and how valuable they are to your company)
    • Customer's buying history (including their credit and payment history)
    • Context of why the customer may be calling - what happened during their last transaction?

     

    Simplifying information feeds with a single, centralized database for your Contact Center, ERP and CRM systems and presenting a single screen for agents eliminates the need to toggle between multiple screens of data, a costly waste of the customers time. Shorter transaction times and greater efficiency is key in delivering best-in-class performance.

     

     

    The Aberdeen Group's Agent Desktop Optimization:  Agents Can Finally Focus on the Customer analyzed characteristics of the top 20% performers. In 43% of those, "...the building block of top performers agent desktop management initiatives focused on simplification and integration." Too many agent screens is also a waste of money.  26% of agents time was spent looking for relevant data across different systems and the cost of each additional screen is $1,400 per agent, per year.

     

    Recently we held a webinar that featured how Wacker Neuson used Personalized Customer Engagement as a strategic initiative. If you were unable to attend our webinar on February 27, you can click on this link to access this webinar and still listen to it.

    One order trace tool CRMD_TRACE_SET

    $
    0
    0

    Recently I am helping customer to measure the performance of APIs in function group CRM_ORDER_API and find this trace tool.

     

    1. use tcode CRMD_TRACE_SET to activate the trace mode:

    clipboard1.png


    2. run the one order scenario under trace mode. In my case I execute the program( source code attached to this blog). Once finished, go to tcode CRMD_TRACE_EVAL:

    clipboard2.png

    double click on the highlighted cell and it will lead to parameter detail screen:

    clipboard3.png

    it is also possible to see the callstack where the function module is called.

    clipboard4.png

    How is it implemented

     

    1. There is an include CRM_TRACE_PART_ONE which does the following jobs:

      a. evaluate the trace mode enablement

      b. collect the timestamp, work process id, callstack information etc

     

    The include looks strange for me( as an ABAP OO developer) at the first glance:

    clipboard5.png


    2. There is another include CRM_TRACE_PART_TWO which persists the collected trace information to table INDX. 

    clipboard6.png

    By using where used list on these includes, you can know what APIs could support the trace function.

     

    You can also set user parameter "CRM_DEBUG_CODE" if you would not like to activate it explicitly. It will be evaluated by function module CRM_ORDER_DEBUG_CODE which is called by include CRM_TRACE_PART_TWO.

    clipboard7.png

    You can also explore the package CRM_TOOLS:

     

    clipboard10.png

    Customer Intelligence: Are Companies Asking the Right Questions?

    $
    0
    0

    In a world where everyone is mobile, businesses will need to ensure that their customer engagement strategies are using data effectively

     

    “How do I attract more customers?”

    It seems such a simple question but this is the quandary at the heart of every business. It doesn’t matter how well-run your operations, how skilled your staff or how superior your product or service is, f no-one buys what you are selling.

    This predicament is exacerbated by the proliferation of networking technology. Businesses may have more tools with which to market themselves and more avenues but keeping customers satisfied has become more difficult rather than easier. Consumers have grown used to fast response times and high levels of personalisation. Should they not feel happy with one company’s products, finding another that does the same thing is simply a matter of reaching for their mobile devices and doing an internet search. Worse still, they can take their complaints to social media and reach a potentially limitless audience.

    These challenges will only grow over the next few years. East Africa is well on the way to universal mobility. The floodgates have opened and companies’ digital CRM strategies will determine whether they sink or swim.

    In the face of this, the question “How do I attract more customers” becomes more complex. Now, companies must ask “How do I keep individuals with their own unique needs happy while determining what the majority want? How can I balance quantity with quality? How do I maintain a 24-hour engagement with customers while running an efficient business that can deliver the products and services they need? How do I serve the needs of local and regional markets while growing outward and exploring whole new markets with whole new needs?

    The odds seem impossible yet many companies are achieving far greater levels of customer engagement and retention than they have in the past using customer engagement intelligence and data analytics. By using cutting edge technology to analyse past performance and customer histories, these companies can identify patterns and trends that allow them to create meaningful CRM strategies.

    Integrated customer intelligence engagement reaches far deeper than normal marketing research. It gets to the heart of what customers value and allows companies to assess not just of the differences between regions, and age groups, but between individuals, allowing them to target the right products and services to the segment that will respond best to them.

    Every customer interaction, every past purchase, every bit of personal information becomes a data point from which companies can build a meaningful relationship with them. Crucially, this allows for highly targeted marketing campaigns that cut straight to the heart of what individual customers are looking for or might not even realise they need. Sales teams are better able to collaborate to identify and follow up on opportunities for upselling and cross-selling.

    The result of all of this is that companies better able to invest their capital wisely in order to maximise sales and build an incredible amount of customer loyalty, all while pursuing new segments. If a customer must choose between two companies that offer the same services, they will inevitably stick with the company that understands them, listens to them, and offers them incentives they actually want.

    It’s time to ask a new question: “What should my customer intelligence strategy be and which analytics should I use to determine it?”

    Search for Outbound Mails in the Agent Inbox

    $
    0
    0

    So far, no direct search for outbound SAPoffice e-mails sent from the Interaction Center (IC) was supported in the agent inbox in IC. Agents could only indirectly search for outbound e-mails by opening business transactions (like interaction records or service requests) the outbound e-mails are linked to.

    As of SAP enhancement package 3 (SP03) for SAP CRM 7.0, outbound correspondence (SAP Office e-mail, fax, letter) created in IC can be directly searched for in the agent inbox. This is helpful for example when agents save draft e-mails, search for such e-mails, and finalize and send them out at a later point in time. Additionally, outbound e-mails can be listed in the account factsheet in IC. Also when an agent handles a phone call from a customer the customer might mention having received an e-mail from the call center. In this situation the agent can now search for the sent e-mail in the agent Inbox or fact sheet.
    For further information check the RKT material of SAP enhancement package 3 or the release information.


    Replace polling in CRM Interaction Center by ABAP Push Channel

    $
    0
    0

    As of SAP enhancement package 3 (SP03) for SAP CRM 7.0, the Interaction Center (IC) utilizes ABAP Push Channel (APC) for
    detail information on APC refer to blog
    http://scn.sap.com/community/abap/connectivity/blog/2013/11/18/websocket-communication-using-abap-push-channels. When the APC is active, the server informs the Web browser about events like an incoming phone call immediately and directly - using a permanent WebSocket connection. This way APC provides an alternative to the polling mechanism of the IC context area.

    Example: A communication event like “new phone call is altering” arrives on the CRM server. Now it has to be transferred to the IC Session in the Web browser of the respective agent. In the past, this was done by a polling mechanism (“SAM polling”): the browser polls at regular intervals (typically once per second) to the server and will thus get the information that the new event (alerting phone call) has occurred. With APC there will be no need for polling: the CRM server can directly push the information that there is a new communication event to the Web browser. This way the CRM server, the network and the browser session are freed up from the permanent polling traffic. And also the agent benefits from the better response times: the event (alerting phone call) will - on average - arrive faster on the agent’s UI because the polling interval (e.g. 1 second) is avoided.

    It is by the way not only the communication events that benefit from the new push mechanism. Also Alerting and Broadcast Messaging rely on the new push channel as soon as you switch on the APC option in the context area profile.

    As prerequisite you need a Web browser that supports WebSockets (e.g. IE10). If temporary network connection problems occur, or if the Web browser used by an agent does not support WebSockets, the system launches the classic polling mechanism instead.

    If you are interested, you can activate the APC in the Customizing activity Define Context Area Profile and check out SAP note 1962301 for more technical details.
    For further information check the RKT material of SAP enhancement package 3 or the release information.

    Omni-channel Consumer Engagement ..by enriching consumer profile across digital and enterprise

    $
    0
    0

    CRM and sales automation systems have existed for many years now. Many of them are in transactional /automation systems. The need of the hour is omni-channel consumer engagement system, let’s discuss.

     

    Inspired by Ray Wang’s post in HBR, moving from transaction to engagement, I thought of pinning my long pending blog on this topic, which is a topic we are working on here at SAP. Ray suggests 9 tips on an effective consumer engagement system.

     

    I like history, and it helps us to understand evolution and the “whys” behind anything. In the business evolution, Forrester had shared an excellent article recently on Competitive Strategy In The Age Of TheCustomer, where they really highlight 2010+ as age of customer with customer-obsessed metrics
    are key. The evolution goes back through manufacturing, distribution, information and into now in age of  customer.

     

    forresterAgeOfCustomer.jpg

     

    Getting back to Ray’s post and connecting it with ‘age of customer’, the fundamental shift on customer (CRM) system is moving away from
    transactional/automation system which is very operational in nature, has a lot of B2B focus, with strength in enterprise centric customer information and is
    inside-out (for cross sell, upsell, opportunity tracking) to systems that facilitates knowing about the consumer, their omni-channel activities (across
    enterprise and digital channels), B2C focus and is outside-in (understanding what consumer wants/two way interaction and how they perceive through every
    interaction).

     

     

     

    Consumer engagement & profile enrichment

     

    The below picture shows a simple example for an airline to understand the  passenger better over a time scale, note how the consumer picture becomes more clear.

     

    enrichedconsumer.jpg

     

    This is what we call as “profile enrichment” where we continuously build and enrich profile of consumers. There could be 100s of profile attributes
    that the business users would be interested to know about their consumers.

    But every large or small company have huge consumer base (can run into millions of consumers).The ultimate business goal is to get good share 7.2billion+ people of the world as your consumers. Many companies rely on their partners/retailers to know their real customers, their needs and is often a big challenge. All this boils down to really big data of consumers and we are talking of understanding 100s of profile attributes, of each consumers.

     

       

    Technology plays a pivot role in ability to handle large consumer activities, across omni-channel and enrich profile of the consumers.
    This can’t be done manually, gone are the days when a marketer or commercial manager would sit and get a segmentation done for targeting campaigns. The need of “age of customer” is to enable rule based and predictive learning that would allow for constantly asking the relevant questions about the consumer omni-channel activities and data, and enriching the consumer profile through machine learning algorithms.  The biggest competitive advantage for the company would be to constantly ask the relevant differentiating questions and translate the knowledge back into the consumer engagement
    systems. So these systems have to be special purpose platforms which cannot be pre-built applications like we have a traditional CRM transaction system.

     

    Technology further enables bringing the context (time stamp) of consumer activity. This is especially very relevant given mobile brings the opportunity to understand the real time context and the geo location of the consumer, and their intent (to buy). The context information can again be bucketed into as attributes to enrich consumer profile.

     

    In addition to getting the consmer data, we need to empower business users to visualize these consumers information in different new ways, an example is pixel plot big data visualization.

     

    SAP with its Hybris e-commerce suite and its powerful big data platform SAP HANA, enables for this special purpose platform for consumer
    engagement. It’s really competitive differentiation in this age of customer, to know and enrich their consumer’s profile and provide personalized consumer
    engagement.

     

    Welcome your comments and thoughts on this topic...

    Customizing the Interaction Centre Account Information Context Area

    $
    0
    0

    Two lines are available to display account and contact information after confirmation of an account/contact. The first line is generally used for account name and second is used for contact name by default. In case a custom logic needs to be implemented for displaying the account or contact information then follow the steps below –

     

    1. Determine what type of account identification profile is used or intended to be used in Interaction Centre – Single or Multiple. This can be done by looking up the function profile ID on the interaction centre business role customizing by going into the assigned function profiles.

    • BPIDENT – Single
    • BPIDENT_MULTIPLE – Multiple

    IC_5.PNG

     

    2. Based on the account identification profile type go into corresponding SPRO customizing area. The screen shots below are for Multiple Business Partners profile.

     

    IC_1.PNG

     

    IC_4.PNG

     

    3a. If the logic that needs to be used is simply to add another field then selecting the fields on Line 1 and Line 2 customizing should suffice. Having said that, in the system I am currently on, it did not work and that may be because of heavy custom development.

     

    b.   3b. If the logic required is more than just displaying another field then derive your Z class from CL_CRM_IC_CONTEXTAREA, code the method DISPLAY_DATA and maintain the class name in the customizing area. The value returned on the returning variable RV_TEXT1 of the method DISPLAY_DATA will result in the value being displayed on the screen.

     

    IC_6.PNG

     

     

     

     

     

     

     

     

     

    Misc - The UI component ICCMP_HEADER can be used to configure the Interaction Centre Header area.

     

    IC_2.PNG

    SAP CRM EHP3 SP04 Social Media Integration Solution New Features

    $
    0
    0

    Dear friends,

     

    Thanks a lot for being intersted in SAP CRM social media integration solution, now our latest release EHP03 SP04 is released to market, you can download and try it out in case you are intersted.

     

    Now let me give you a brief introduction about the main feature we delivered in this release.

    1. Support inbound attachment.

            Beside the post text conent, now we support to also retrieve the attachments in post, e.g. pictures and documents, etc. Then in the post overview page,

            CRM agent can see thses attachments and open it to see the details.

        

            All the attachments are stored in SAP content management server, so all the functions which standard CM supported like virus scan is also supported for         social media.

       

            In order to support the attachment function, customer needs to update theri channel adapter class to latest version which can be downloaded from consulting note.

    attachment.PNG

     

      2.  Include conversation history block also in post reply page.

           Now, we add the conversation history AB to post reply page as well, so that agent can check the conversation context easily during reply.

    reply.PNG

     

    3. Enhance the application log for social data retrieving.

        As now, the social media data is retrieved by the backgroud job, so if there are some error occured, e.g. client certificate is expired, API changes by the social media channel, it is difficult for the IT guy to do the trouble shooting.

     

    In order to make the trouble shooting process easier, we enhance our error logging logic to log the very detailed steps during whole data retrieving.

    Then customer's IT guy can go to transaction 'SLG1', and check the log object 'CRM_SOC' and sub-object 'SOC_MANAGER' to get more details.

     

    log.PNG

     

    4. Support Before-Save BAdI for social media post.

    From SP04, we now create an new BAdI "Before-Save" for social media post.

    It can be used in senarios like below.

    (1) The social media channel you are connecting can also give you the main category and sentiment of the post to you, you don't want the text analysis engine to calculate them again. You can use this BAdI to fill these two fields from additional attributes table.

    (2) If you have some rules which can be used to filter out some junk social post (e.g. define black-list for some social media users), you can check logic in this BAdI impl and remove the post entries from changing parameter. Then this post will not be saved into CRM system.

     

     

    That's all the main functions we provides in SP04.

    Welcome your questions and suggestions! ^-^

     

    B.R

    Derry

    Partner Redetermination

    $
    0
    0

    Two of the most common question from users where they are dealing with Partner Determination issues are “Why are the partner not been re-determined after I changed other partner in the document?” and “Why is partner re-determination not available for all the kind of transaction types?”.

     

    For the first one, it is very important to clarify that users are able to change partners as many times as they want and, of course, if this partner function has been set to allow changes through the partner determination procedure. However, it doesn’t mean that all the other partners will be re-determined in the document.

     

    Partner Re-determination is a process that will be automatically triggered for specific transaction types (here you will find the answer to the second most common question I’ve heard), and for other you can use “Propose Alternatives” button. If you want to learn more about  the pre-requisites and settings needed for partner re-determination, please click here.

     

    In the next coming weeks, I will be posting more challenges on this process and how overcome them.

    Viewing all 228 articles
    Browse latest View live


    <script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>