cancel
Showing results for 
Search instead for 
Did you mean: 

Custom Column in SOCO output for SRM

former_member187651
Active Participant
0 Kudos

Hi Experts,

I am facing the issue while adding the Custom fields with SOCO. I am working with SRM 7.0

Steps I have performed is as below:

1. Appended the custom fields with structure: INCL_EEW_PD_ITEM_CSF_SC and INCL_EEW_PD_ITEM_CSF

2. Added the attribute with Node: RESULT_FIELDS of View V_AO_SOCO_GAF_1_EHP in Component Controller: /SAPSRM/WDC_DO_SOCO_GAF_1

3. Added Column in Table and Mapped it with node attribute (Fields is displayed in the table)

While search I can see the fields in Class: /SAPSRM/CL_CH_WD_DOM_SOCO_GAF1

Method: /SAPSRM/IF_CLL_DOM_SOCO_GAF1~SEARCH

Internal table: lt_item_list

Method: /SAPSRM/IF_CLL_MAPPER~REFRESH

Internal table: mt_displayed_list

Here, I have enhanced the 'REFRESH' method and added the value to the field.

I have read the Node RESULT_FILEDS in Webdynpro Component WDDOMODIFYVIEW method, and found that all the values are updated in node attribute.


Only issue I am facing that, value not getting displayed in the custom fields of SOCO list.


Any help is highly appreciated.


Regards

Chandan

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

Hello,

Maybe my answer is a bit late but, I've faced the same issue and I resolved it like following:

I bound the property 'VISIBLE' of the cell editor of my custom column to the attribute 'V_AO_SOCO_GAF_1_EHP.SEARCH.DUMMY_VISIBLE', then I get value displayed in the added column in result table.

BR,

Abder

former_member187651
Active Participant
0 Kudos

Hi Experts,

Any idea to activate Unloading Point Column at item level in SRM PO. Or we have to create new column there.

Table BBP_PDBEI-BE_UNLOAD_PT already holds the value for PO. Just I need to display this.

Please suggest.

Thanks

Chandan

Former Member
0 Kudos

Hi Chandan,

Go to SPRO transaction -> Supplier Relationship Management -> SRM Server -> Cross-Application Basic Settings -> Extensions and Field Control (Personalization) -> Configure Field Control -> Configure Control for Fields on Item Level.

On the Choose Activity screen, double click on the second option 'Default Metadata for fields in Items that do not (yet) exist'. If you wish to make this field visible on Item Level of the PO screen, then please select the option 'Metadata for Fields on Item Level'.

Add new entry and then

Select BUS2201 and field BE_UNLOAD_PT

Check box Field visible and Field Enabled.

Hope this helps.

Please open new thread for this

Regards
Venkatesh P

former_member187651
Active Participant
0 Kudos

Thanks Venkatesh.

Performed the same steps but not able to see the Field at PO Item level.

Please reply on below link:

http://scn.sap.com/thread/3743106

Thanks

Chandan

former_member187651
Active Participant
0 Kudos

Hi Everyone,

I didn't get the solution yet. Any one who has updated the SOCO table and faced the simillar issues. Please come up and give your valuable suggestions.

Thanks

Chandan

Former Member
0 Kudos

Hi Chandan,

Sorry i have given solution for another developement which i have done.

We have done the coding in the search method:

Enhancement ZDTSWDENH_ADD_CREATED created in WD component /SAPSRM/WDC_DO_SOCO_GAF_1 in view V_AO_SOCO_GAF_1_EHP

To populate the value of this new field,  implicit enhancement ZIDTS_CREATED_ON has been created in class /SAPSRM/CL_CH_WD_DOM_SOCO_GAF1 and method /SAPSRM/IF_CLL_DOM_SOCO_GAF1~SEARCH

You need to update the  mt_displayed_list.

No need to write any code on the ONACTIONSEARCH post exist or pre exit.

Please check and let me know, if you have any issuies.

Regards

Venkatesh P

Former Member
0 Kudos

Hi Chandan,

Sample code will be like below in the Search method.

You need to create implicit enhancement at end of this method and write your logic.

As mt_displayed_list is the displayed list in SOCO, you need to update the value here.

FIELD-SYMBOLS: <l_fs_list> LIKE LINE OF mt_displayed_list.

LOOP AT mt_displayed_list ASSIGNING <l_fs_list>.

***and accdoring to your logic pass the value the field like below:
*** In our case shopping cart approved date, we have passed to the custom field.

   <l_fs_list>-created_on =  lv_date+0(8).

End loop.

Regards

Venkatesh P

former_member187651
Active Participant
0 Kudos

Thanks Venkatesh for Reply.

I am doing the same thing as you said. Updating the value in mt_displayed_list in search Method (even tried with Refresh Method) of the given class.

At the end I can see the value updated with Context node while debug (checked the node value in WDDOMODIFY) . But these values are not getting displayed in SOCO Table in output. I am not able to configure out that from where these are getting swiped out.

Even I have Configured the field control for the these fields. Any idea on this.

Thanks

Chandan

Former Member
0 Kudos

Hi Chandan,

Is issue solved?

We have not done anything, other than that.

Hope you have done the enhancement only in view V_AO_SOCO_GAF_1_EHP.

Also please put a break point in the method /SAPSRM/IF_CLL_DOM_SOCO_GAF1~SEARCH and see the whether table  mt_displayed_list is getting updated with your values or not in the custom column.

Regards

Venkatesh P

former_member187651
Active Participant
0 Kudos

Thank you all guys.

Issue has been resolved for me. Getting problem with visibility of Column which were stop the value to getting displayed.

Regards

Chandan

vinita_kasliwal
Active Contributor
0 Kudos

Hi Chandan

Please include some more details if you could also share the code and steps on how you resolved?

Regards

Vinita

Former Member
0 Kudos

Thats Good New Chandan...All the Best..

vinita_kasliwal
Active Contributor
0 Kudos

HI Chandan

Please check below did you regenerate screen ?

Also PLease note you may have to code in ONACTIONSEARCH  method

Below is the code which may be useful

LOOP AT lt_soco_workarea ASSIGNING <lfs_soco_workarea>
WHERE werks IS INITIAL
OR price IS INITIAL.

LOOP AT llt_soco_workarea INTO ls_soco_wa
WHERE ext_demid = <lfs_soco_workarea>-ext_demid
AND object_id = <lfs_soco_workarea>-object_id
AND werks <> space.
** Move value of field Plant.
<lfs_soco_workarea>-werks = ls_soco_wa-werks.

Addition of columns in Sourcing Cockpit of SRM - Supplier Relationship Management - SCN Wiki

Regards

Vinita

former_member187651
Active Participant
0 Kudos

Thanks Vinita for Reply.

As I said, I have added Columns in SOCO table of View V_AO_SOCO_GAF_1_EHP, updated the structure and added the values from Refresh method (Class and Method written above), I can see the values in node attribute when I read it in WDDOMODIFY. Also I have Regenerated the screen as said. Issue I am facing is not able to display the value in columns and correct mapping with node attribute.

Regarding the code in ONACTIONSEARCH, I do not understand that why we require that.

Please help me on this.

Regards,

Chandan

former_member187651
Active Participant
0 Kudos

Hi Vinita,

As per the code given by you, it refers to the View: V_AO_SOCO_GAF_1 but in my case SRM is updated version i.e 7.0 and View: V_AO_SOCO_GAF_1_EHP is getting called.

As I said, I have updated the values from Refresh method of Class: /SAPSRM/CL_CH_WD_DOM_SOCO_GAF1

It is also updated and I can see in the node in debug of WDDOMODIFY of view but value is not getting displayed in item column.

I have also updated the the 'configure control at item levels' for the given fields. Please let me know where I am missing..

Thanks in advance

Chandan

Former Member
0 Kudos

Hi Chandan,

You need to update in BUT000 to get the value displayed, for that you need to do below coding.

Update the custom field in the table BUT000:

To update the custom field value in the BUT000 table, you need to implement the Implicit enhancement in the class : /SAPSRM/CL_PDO_BP_UPDATE_BUFF , Method : PREPARE_PD_CP_BASIC_DATA

Implement the Implicit enhancement at the end of the method and logic will be below :

if MS_BUFFER_CHANGE-COMPANY_DATA-Z_INDUS_KEY NE MS_buffer_master-COMPANY_DATA-Z_INDUS_KEY (this is your cutom field). (This condition is for update action)
move 'X' to MS_PD_BUPA-DATA_CENTRAL_EXT_X-Z_INDUS_KEY (this is your cutom field). .
MOVE-CORRESPONDING ms_buffer_change-company_data-ext_csf to ms_pd_bupa-data_central_ext.
else.
(This condition is for create action)
MOVE-CORRESPONDING ms_buffer_change-company_data-ext_csf to ms_pd_bupa-data_central_ext.
endif.
 

Regards

Venkatesh P

former_member187651
Active Participant
0 Kudos

Thanks Venkatesh for reply.

But I do not really understand that why we need to update this BUT000 table to display the value in custom field. What is the link between this table and the SOCO Output (on SRM Portal) in 'Carry Out Sourcing'.

Thanks in advance.

Chandan