Quantcast
Channel: SCN : All Content - SAP CRM: Webclient UI - Framework
Viewing all 4552 articles
Browse latest View live

Blank Tax Jurisdiction Field

$
0
0

When creating a customer using crm portal (web ui), we enter the customer's name and address details (street, street number, city, postal code, region, country and zip), After pressing enter, the Tax Jurisdiction field remains blank. We expect to see a tax jurisdiction assigned to this customer.

 

Does anyone know why the Tax Jurisdiction field remains blank? This is a very sporadic occurence. The field gets automatically filled in with certain addresses. We use Sabrix.

 

thanks!


need to make Text area or notes lines enable or disable

$
0
0

Hi All,

 

I have a requirement of enabling or disabling data in lines of a text area in CRM web ui

Here is the requirement.

 

Lets say i have a text area and i saved data in first 2 lines for an object.

 

if i open the object ...text box will have 2 lines.


now i am editing the object and trying to add 2 more lines in the text.


My requirement is


The moment i click on edit button 2 lines which already has data in the text area or notes are should be disabled


and rest of the blank llines should be enabled to add more text.


It means user usould not be able to edit previous data in text area but should be able to add more data in the text area.


Please guide me how we can achieve this or if we have any existing example in any component please let me know.


Thanks

Pravin

WCEM ViewComponentHandlerBaseImpl question

$
0
0

Hi

I am working on WCEM application, I have question about ViewComponentHandlerBaseImpl , is there nay other way I can create a web application without extending from this class, because most of my methods are get called several times in its lifecycle, which is affecting our application performance. If I just create a bean and marked as JSF viewscoped bean, will it work, or what are the scenarios and advantages I get when  my backing bean extend from ViewComponentHandlerBaseImpl class. Another thing is I tried my backing bean extending from ViewComponentHandlerBaseImpl marked as Viewscoped but it is not working. Could someone point me to the right direction or some detailed document please.

Regards

Philip


SAP CRM Navigate from custom search page to email component

$
0
0

Hello Experts,

 

I implemented my own search page and added a link on every row of the returned query that should direct me to the email component eg. CRMCMP_CCS_EMLV.

 

I did something similar with Business partners and Task and it works. For BPs and tasks I managed to identify the object type and name associated to each of them and then I dynamically navigate to the components required.

 

The way I did it for tasks for instance is:

 

 

DATA:  lr_entity TYPE REF TO cl_crm_bol_entity,
 lr_col TYPE REF TO cl_crm_bol_bo_col.
DATA:  lr_nav_descr      TYPE REF TO if_bol_bo_property_access,              lr_nav_serv       TYPE REF TO if_crm_ui_navigation_service.
lr_entity = lr_core->get_root_entity( iv_object_name = 'BTOrder' iv_object_guid = lv_guid ).
CREATE OBJECT lr_col.
lr_col->if_bol_bo_col~add( iv_entity = lr_entity iv_set_focus = abap_true ).
CALL METHOD cl_crm_ui_descriptor_obj_srv=>create_ui_object_based  EXPORTING    iv_ui_object_type   = 'BT126_CALL'    iv_ui_object_action = 'B'  RECEIVING    rr_result           = lr_nav_descr.
lr_nav_serv = cl_crm_ui_navigation_service=>get_instance( ).
lr_col->if_bol_bo_col~insert( iv_bo    = lr_nav_descr iv_index = 1 ).
*   start the navigatiostart the navigation
lr_nav_serv->navigate_dynamically( iv_data_collection = lr_col ).

 

My question is whether doing the same for emails is possible and if yes can someone please share his/hers knowledge?

 

I guess that there should be a root object associate with emails like there is BTOrder for tasks.

Once the correct root object is identified I will need the object type (like BT126_CALL for tasks) to create the ui_object_based

 

Thank you for you help,

K

How to create ZBOL Relations

$
0
0

Hello Experts,

 

I've encounter a scenario that is causing me an headache. I'm developing a new solution composed by a few ZTables and they all related. I already have created the ZBOL as Simple Objects for each table and they work fine individually on my tests in the GENIL_BOL_BROWSER. Here comes the catch, I need to find the values of some check tables ( one of my ZTables ), these should be doing by RELATION but I'm not able to do it.

 

Somebody has a guide or a how-to for this kind of customization?

 

Thanks in advance!

Rapid Application: possibility to see the description in a field populated with a code

$
0
0

Hello Everyone,

    

We’re using the Rapid Application Tool and we would like to know the functionality the field Check Table, located in the details of a field.

 

We have created a field (using Rapid Application) that is populated with a code (via custom program), but we expect to see its description when the user goes to webclient instead of the code.

 

We want a similar behavior if we use Dropdown Listbox (in this case, the field in the table is populated with a code, but when you see it in webclient, you can see its description.

 

As we said, to do this we have indicated a “Check Table”. Obviously, in that table there is the code and its description, but nothing happens, we still see the code in the field either the table or the webclient.

 

Let’s see:

 

Repid Application:

 

Rapid Application I.png

The field TIPO_CENSO has the “Check Table” indicated:

Rapid Application I.png

The table ZGID_CMP_PRC_GP4 contains the following values, look at the code "X2" that has a description.

Rapid Application I.png

 

The records of the table are inserted via custom program, and it completes the field with codes.

    

However, when we see object in webclient, we expect that the field highlighted shows its description instead of its code:

Rapid Application I.png

 

 

The
behavior we want does works properly when we use Dropdown Listbox, but in this case we don’t want to use it, we want to use a reference table.

    

My questions are:

 

 

  1. What is the functionality of the “Check Table” option in the Rapid Application Tool?
  2. If the function of “Check Table” is not what we have expected, is there any possibility to write a code in a field but see its description in Webclient?

 

 

I hope you can help us!

 

Best regards,

JC

SAP CRM 703 & Firefox 38.0.1: disable pop-up block + IE 11

$
0
0

Hi,

 

I am using SAP CRM 703 & Firefox 38.0.1. The pop-up blocking is totally disabled but still, from time to time, it starts blocking the pop-ups leaving me with the only solution to log off and restart. Do you know what is the reason for this behavior and what would be the solution?

 

As a bonus, another problem :-). When using IE 11 instead of Firefox, there are some well defined were the browser freezes and I have to use task manager to close it. As an example, it happens always when I want to maintain quantities for items in opport. or always when maintaining the values for a marketing attribute. Any ideea?

 

Kind regards,

 

Horatiu

Updating value in BOL Buffer

$
0
0

Hi ,

 

I am working in the HCM ESS Portal side, and the standard system uses BOL for several process. I havea doubt regarding updating the BOL buffer.

 

The actual requirement is, we need to modify some data through an enhancemnt and that we are able to do. But since the data in the BOL buffer is not updated with the current changes, the sytem is not processing to the next level.

 

These are details from Genil_Model_Editor.

 

Component : HRBENF

 

Root Object : PERNR_BEN

 

Dependent Object HEALTH_PLANS

Component                      HRBENF

Object                             HEALTH_PLANS

Object Type                     C Dependent Object

Key Structure                   HRESS_S_BEN_HEALTH_KEY

Attribute Structure             RPBEN_OA

Root Object                      PERNR_BEN

 

Relations

Aggregation HEALTH_DEP_REL Child Cardinality 0..n

Component                            HRBENF

Relation                                 HEALTH_DEP_REL

Source Object                        HEALTH_PLANS

Card. of Srce Object               C1

Relation Type                         C Aggregation

Card. of the Assigned Object   B 0..n

Assigned Object                     DEPENDENTS

 

My requirement is to update the value of an attribute in the Relation HEALTH_DEP_REL.

 

Please help me with this. It will be very helpful if you could provide the sample code for this.


Automatically redirect to load balanced URL

$
0
0

Hi all,

 

We are using an URL(https://xxxx.xxxxx.com/sap/bc/bsp/sap/crm_ui_frame) to login CRM Web UI where user enter their credentials. Since we are using load balancing in our environment, the source URL is getting redirected to some other destination URL(https://yyyy.xxxxx.com:xxx/sap/crm_logon?sap_client=100).

 

Now, the issue is the destination URL is coming as a pop up and user needs to click the link to navigate to destination.

 

Capture.PNG

 

Please kindly let me know is there any possible ways to supress this pop up window and navigate directly to the destination without user click.

 

Thanks,

Dilipan M

How to access SAP CRM Web UI Screen Configuration

$
0
0

SAP Web UI Configuration allows modifying the user screen without coding.  By accessing the “View configuration” is possible to define/modify:

 

  • Assignment blocks label.
  • Assignment blocks position and visibility (hidden, closed, opened).
  • Overview Assignment Block - Screen layout:
    • Include subsection titles
    • Fields label of screen
    • Fields visibility (add, remove).
    • Field position.
    • Field validation (mandatory, optional).
    • Additional fields (enhanced fields – not standard fields).
  • Detailed Assignment Block – Screen layout:
    • Change order of available field for display

 

 

There are different ways to access the SAP Web UI Configuration. However in closed sap system client (such as quality or production), knowledge is required to identify correctly the component to be modified. Those changes need to be implemented directly in development using any of the available option to access Web UI configuration.

 

A very common mistake in some many projects,that consultants are not able to perform correctly the UI changes if the system client is not open.

 

 

How does it work?

 

Before modify a UI Component, is necessary to identify the component that required modification.

 

If you want to know Component set name from the Web UI page, you must select any field on the screen, and Click F2 button on the Web UI screen and you will get the detailed information.

 

UI component.png

 

To modify any UI Object is necessary to know: the component, the view and the “Role Key” configuration for the page.

 


Different ways to access SAP Web UI View configuration.

 

A. By Using SAP Implementation Guide

 

To access SAP Web UI configuration by SAP GUI, use the following path.

 

IMG Menu

SAP Implementation Guide > Customer Relationship Management >  UI Framework > UI Framework Definition > Access BSP Component Workbench

Transaction Code

BSP_WD_CMPWB

 

1.Enter the component that require modification.

 

access bsp workbench.png

 

2.Navigate to the required “View” and double click to see detailed

 

BP Address View.png

 

3.Navigate to “Configuration” tab.

 

UI configuration tab.png

 

4. Select the “Configuration Key” that require modification or to be used as template if you wan to create a new one.

 

view selection.png


information.pngAlways modify your own “Configuration Key”

               Never modify the standard view with <DEFAULT> Configuration Key

 

 

B- By Using SAP Web UI buttons on the screen


Show configurable Areas

 

 

1. Using button “Show Configuration areas”.

 

button show configuration areas.png

 

2. Then click on the area of the screen that you want to configure.

 

show configuration areas.png

 

3 .A pop up will open and after select the correct “Role Configuration  Key” the screen can be modified/created.

configuration area section.png

 

Configure Page Overview

 

 

1.Using button “Configure Page”

 

Configure page.png

 

2. A pop up will open and after select the correct “Role Configuration  Key” the screen can be modified/created.

 

Configure Page View.png

 

Practical Tip

 

To enable configuration mode in the Web UI Browser, two steps are necessary:

 

1. Add Authorization object CRMCONFMOD to the user, with value ALLOWED=X;

 

2. In WEB UI, activate the following flag Personalize -> Settings-> Personalize Settings-> Enable configuration mode.

 

Enable configuration mode.png


C- Using SAP Web UI - Logical Link for Configuration

 

 

1.Using navigation Link “View Configuration”

 

View configuration.png

 

2.A wizard will open to search for the component to be modified.

 

1 select component.png

 

3.Press “Search” and select the View to modify. After press “next”

 

1 search.png

 

4. Select the “Role Configuration Key” and perform the changes requires to the screen.

 

2 view.png

 

Practical Tip

 

To access to workcenter “Business Role Customising” and “View Configuration” from SAP  Web UI Browser, activate the following logical link for your workcenter.

 

Logical Link ID

Type

Target ID

Description

BSP-DLC-VC

A

BSP-DLC-VC

View Configuration

CT-BR-SR

A

TBRCSR

Business Role Customizing

 

 

For example:


work centet.png



In summary, the UI Screen Configuration can be made from:

 

-Directly in the required Web UI Screen by using buttons available.

-By using SAP Implementation Guide (IMG).

-By using the Web UI Screen - View Configuration.

Hide Navigation Bar in SAP CRM Web UI.

$
0
0

Hi Friends,

 

 

We have got a requirement in which we require to hide the navigation bar for a particular business role. so as per below thread

How to - Start WebUI with hidden navigation bar - CRM - SCN Wiki

we are able to set the navigation bar as hidden for the first time when we select the Business role.

 

But the issue comes  after I select some direct or in-direct links on the navigation bar that time we should be navigated to the specific BSP page and the navigation bar should go to condense mode, but it is always staying there as expanded mode.

 

I redefined the CRM_UI_FRAME component and tried a lot of options to hide the navigation bar, but no results.

 

If any of you have done this kind of development or faced such issue, please let me know the possible solution.

 

Points will be rewarded.

 

Thanks

Ashraf.

Timeout / Countdown Timer on CRM WebUI

$
0
0

In my previous post : Session Time out warning message on UI , I wrote about the session warning message popup on WebUI. It was my first work in JS on WebUI. Many people found it helpful. Many found a bug in that. Well, anyone with some JS knowledge could have fixed that.

In this post, i'll tell you about creating a Timeout Timer on WebUI so that user can see how much time is remaining in the session. This is again achieved by htm page of 'CRM_UI_FRAME/WorkAreaViewSet '

 

Step 1 : Get the session timeout value from 'rdisp/gui_auto_logout' parameter, table : TPFET.

 

Step 2 : html and JS code :-

 

<span id="countdown" class="timer" style="display: block; margin: 0px auto; text-align: center;"></span><script>
var seconds = <%= ls_proftab-PVALUE %> ;
var start = 0;
function secondPassed() {    var minutes = Math.round((seconds - 30)/60);    var remainingSeconds = seconds % 60;    if (remainingSeconds < 10) {        remainingSeconds = "0" + remainingSeconds;    }
document.getElementById('countdown').innerHTML = "Time out in " + minutes + ":" + remainingSeconds;    if (seconds == 0) {        document.getElementById('countdown').innerHTML = "Time Up";        start = 0 ;    } else {        seconds--;        setTimeout(secondPassed, 975);    }
}
function secondStart() {
seconds = <%= ls_proftab-PVALUE %> ;    start++;  if (start == '1')  { secondPassed() ; }
}
thtmlbRegisterOnLoad(secondStart);</script>

There was more to this code then just the timer. See my next post for more interesting features.

P.S. : Few portions of the code have been pulled out as that was not relevant here. Correct syntax errors in this JavaScript if any.

Auto Cancel any transaction if not finished in time on WebUI

$
0
0

The agents/users tend to stay over a transaction for a long period of time and do not let anyone else update it. When they try to come back to their work and edit/save it, it gets lost/incomplete due to session timeout. Wouldn't it be nice to have warning message ir-respective of the window you are on and a functionality to Auto click the 'CANCEL' button if the transaction is not finished in a stipulated time. Read on and you'll find how this can be achieved.

 

This functionality can achieved by doing a little bit of coding in the htm page of 'CRM_UI_FRAME/WorkAreaViewSet'

 

a. Set the value of the warning and cancellation time - at which the warning message should appear and CANCEL clicked. Be it a custom table or variant, your choice.

b. Fetch this value in the htm page.

c. Start a timer using JS. Refer my previous post for the timer : Timeout / Countdown Timer on CRM WebUI

d. Code Snippets :-

<script>
var warn = <%= warn %>;
var canc = <%= canc %>;
var sr_time = 1 ;
var can_pressed = 0 ;
function press_can() {      can = document.getElementById('C18_W59_V61_#Exit#_CANCEL');      return htmlbSL(can,2,'C18_W59_V61_#Exit#_CANCEL:\x23Exit\x23_CANCEL','0');
}
function tempAlert(msg,duration)
{
var el = document.createElement("div");
el.setAttribute("style","position:absolute;top:20%;left:45%;background-color:yellow;");
el.innerHTML = msg;
setTimeout(function(){  el.parentNode.removeChild(el);
},duration);
document.body.appendChild(el);
}
if (sr_time == warn )    {        var myWindow = window.open("", "", "width=200, height=100");   // Opens a new window        myWindow.document.write("<p>Active Transaction Idle Timeout Warning</p>");         // Some text in the new window        myWindow.focus();        var msgg1 = "Session Idle for too long. Any active SR will be cancelled in ";        var msgg2 = <%= canc - warn %> ;        var msgg3 = " seconds, unless saved by user" ;        var msgg4 = msgg1.concat(msgg2,msgg3) ;        var msgtime = msgg2 * 1000 ;        tempAlert(msgg4,10000);    }
if (sr_time == canc )    {      press_can() ;      can_pressed = 1 ;    }</script>

This is not the complete code but a code snippet. Use the Timer code in combination to this code. We have to initialise the value of 'sr_time' whenever the page loads and 'can_pressed' whenever 'CANCEL'  button is pressed.

 

'C18_W59_V61_#Exit#_CANCEL' - this will vary. On any active transaction, goto developer tools in the Browser's menu and click on 'Select Element' and select the cancel button.

 

You are invited to tinker around the code to create your own enhancements.

'Processing log' block to SOLMANREQU

$
0
0

Hi All,

 

Is it possible to add 'Processing Log' Assignment block for Reporter role (SOLMANREQU/ZSOLMANREQU business role) in Incident?

 

--

thanks,

Yessen

BP_HEAD_SEARCH/SearchHelpShuffler not giving results for the first time

$
0
0

Hello ,

 

BP_HEAD_SEARCH/SearchHelpShuffler ,category defaulted to "Corporate accounts" ,when pressed on search ,result list showing  no records for the first time although results are present in the entity and also set to the search result entity when debugged and checked in EH_ONSEARCH() Method..

When again i press search button it shows records on the screen.

 

Kind Regards,

Hitesh.


Custom Attribute is not saving

$
0
0

Hello

I'm new to CRM but I need your help.

I need to add a custom field for service locations => Technical Object Details

The field should be add here:

 

 

 

1.jpg

 

 

 

2.jpg

 

 

First I've tried to use AET but I can´t use it in this case (no "Create field" button appears):

 

 

3.jpg

 

 

I've created a new enhancement set: "ZCRM_TEST2" and in table BSPWDV_EHSET_ASG uses this one as default:

 

 

4.jpg

 

 

In BOL explorer I've seen that ConnectionObject uses structure "CRM_ISU_TEC_CO". This structure has an include CI_CON, so I added my field here:

 

 

5.jpg

 

 

6.jpg

 

 

Then I've create an enhancement for the view "IUICOBJD/ConnectionObject":

7.jpg

 

8.jpg

 

 

Here I created a new Model Attribute for CCAA field:

 

 

9.jpg

 

 

In the generated code the only changes are:

Method WD_CREATE_CONTEXT to comment linne super->wd_create_context( ).

Methods GET_ SET_ GET_M and GET_I are also generated but I made no modification in them.

Then I add the attribute to the view.

The problem is that the value is not saved:

11.jpg

 

Thank you vey much.

How to place the navigation bar from left to right in web ui?

$
0
0

Hello Master,

 

Can anyone tell how replace the navigation Bar from left to right  in web ui.

Hide navigation bar in SAP CRM

$
0
0

Hi,

I want to hide by default navigation pane in specific SAP CRM window.

I read, that there is transaction SPRO, where you can define navigation bar profile, but I din't found where and how I can define the page/window, where I want to hide this navigation pane.

 

Could someone point me to the right direction?

 

Thanks.

Closing the Complete Interaction Centre Webui Screen

$
0
0

  Is some class –method/API available to close the IC Agent  Webui Screen or this can be done through Java scripting in some component htm page ?      Actually in a web service we need to code for closing the complete WebUI  screen.  This web service would be called from an external application based on some condition at external application end. Do we have some function/Class-method to close the Webui URL browser similar to CALL_BROWSER for launching url?

Make all views read only in an overview page on a condition

$
0
0

Hi All,

 

I have a requirement where for a particular BP role i need to make all the views in account overview page as display only. My problem is that all the assignment blocks have edit buttons. So how can i disable all these edit buttons on account overview page when the BP role is 'Sold to party'.

 

Thanks in advance.

Pooja

Viewing all 4552 articles
Browse latest View live


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