Quantcast
Channel: SCN : Blog List - Customer Relationship Management (SAP CRM)
Viewing all articles
Browse latest Browse all 229

Change Attachment property CREATED_BY via code

$
0
0

For a complete list of my blogs regarding content management, please see here.

In our CRM social integration project we extract the picture of one tweet from twitter website  and store them in CRM system as attachment.

We are creating attachment in CRM via the approach described in this blog.

 

However, we found the Create by property for an attachment is always hard coded with sy-uname, even we explicitly specify the created_by property when calling

cl_crm_documents=>create_with_table. However our requirement is it should be filled by the screen name in twitter website who posts the tweet.

clipboard1.png

clipboard2.png

 

After some debugging I found the created_by property could only be modified after the attachment is created.

First I query all attachments of a given tweet:

 

     DATA(ls) = VALUE SIBFLPORB( INSTID = iv_guid typeid = iv_bor_type catid = 'BO' ).

 

     CALL METHOD CL_CRM_DOCUMENTS=>get_info

       EXPORTING

          BUSINESS_OBJECT = ls

       IMPORTING

          LOIOS = LOIOS

          phios = phios.

 

Then I use FM SDOK_PHIO_PROPERTIES_SET to change the property

 

 

  DATA(ls_property) = VALUE SDOKPROPTY( name = iv_attr_name value = iv_new_value ).

 

  APPEND ls_property TO lt_properties.

 

 

  LOOP AT phios ASSIGNING FIELD-SYMBOL(<ios>).

 

       ls_header-class =  <ios>-class.

       ls_header-objid = <ios>-objid.

      CALL FUNCTION 'SDOK_PHIO_PROPERTIES_SET'

        EXPORTING

          object_id = ls_header

        TABLES

          properties = lt_properties

        EXCEPTIONS

          NOT_EXISTING = 1

          BAD_PROPERTIES = 2

          NOT_AUTHORIZED = 3

          EXCEPTION_IN_EXIT = 4.

ENDLOOP.

 

I have put the code into a utility class and test it:

 

clipboard3.png

And that's done:

clipboard4.png

Never forget to activate internal mode, or else you will fail with an error message that created_by field is read only.

clipboard5.png


Viewing all articles
Browse latest Browse all 229

Trending Articles



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