Quantcast
Channel: SCN: Message List - SAP CRM: Webclient UI - Framework
Viewing all articles
Browse latest Browse all 7775

Re: Issue in uploading programs

$
0
0

Hi experts,

 

I am uploading contact person through program (not pad). Issue is in debugging i can see bp is generated but it is not updating the database. here is my code

 

DATA: lr_core          TYPE REF TO cl_crm_bol_core,

       lr_trans_context TYPE REF TO if_bol_transaction_context.

 

DATA: lv_file_path TYPE localfile.

PARAMETERS: lp_file TYPE localfile. "file path

 

AT SELECTION-SCREEN ON VALUE-REQUEST FOR lp_file.

   CALL FUNCTION 'KD_GET_FILENAME_ON_F4'

     EXPORTING

       static    = 'X'

     CHANGING

       file_name = lp_file.

 

START-OF-SELECTION.

   TYPES: BEGIN OF lty_data,

            datastring TYPE string,

          END OF lty_data.

   DATA : BEGIN OF ls_emp,

*            bp_number TYPE BU_PARTNER,

*            role TYPE BU_ROLE,

            title       TYPE ad_title,

            name1       TYPE bu_namep_f    ,

            name2       TYPE bu_namep_l  ,

            dob         TYPE string ,

            language    TYPE bu_langu_corr,

            street    TYPE ad_street ,

            houseno     TYPE ad_hsnm1,

            postelcode  TYPE ad_pstcd1,

            city        TYPE ad_city1,

            country     TYPE land1,

            region      TYPE regio,

            phone1      TYPE ad_tlnmbr,

            pextension  TYPE ad_tlxtns,

            fax         TYPE ad_fxnmbr,

            fextension  TYPE ad_fxxtns,

            email       TYPE ad_smtpadr,

            comm_method TYPE ad_comm,

 

          END OF ls_emp .

   DATA : lt_emp LIKE STANDARD TABLE OF ls_emp.

   DATA : lv_file_str    TYPE string,

          lv_filetype    TYPE char10,

          lv_header      TYPE xstring ,

          lv_filelength  TYPE i,

          lv_comm_method TYPE ad_comm.

*  DATA : ls_prospectdata TYPE  lty_prospect.

*  DATA : ls_emp TYPE  lty_data.

*  DATA : lt_prospectdata TYPE TABLE OF lty_prospect.

*  DATA : lt_emp TYPE TABLE OF lty_data.

   DATA lt_fields TYPE sesf_string_tab.

   DATA ls_fields TYPE string.

   DATA lv_timestamp TYPE timestamp.

   DATA lv_date TYPE dats.

**************

   DATA: lv_partnercategory   TYPE          bapibus1006_head-partn_cat,

         lv_partnergroup      TYPE          bapibus1006_head-partn_grp,

         lv_partnerrole       TYPE          bapibus1006_head-partnerrole ,

         ls_centraldata       TYPE          bapibus1006_central,

         ls_centraldataperson TYPE          bapibus1006_central_person,

         ls_addressdata       TYPE          bapibus1006_address,

         lv_businesspartner1  TYPE          bapibus1006_head-bpartner ,

         is_adrs_usage        TYPE          bapibus1006_addressusage ,

         it_adrs_usage        TYPE TABLE OF bapibus1006_addressusage ,

         gv_addressguid       TYPE          but020-guid .

 

   "BAPIBUS1006_RELATIONS         BAPIRET2

   DATA: lt_faxdata      TYPE TABLE OF bapiadfax,

         ls_faxdata      TYPE          bapiadfax,

         ls_bp_markating TYPE          crmt_bus_frg0040 ,

         lt_bp_markating TYPE TABLE OF crmt_bus_frg0040 ,

         lt_tel          TYPE TABLE OF bapiadtel,

         ls_tel          TYPE          bapiadtel,

         ls_uri          TYPE          bapiaduri ,

         lt_uri          TYPE TABLE OF bapiaduri ,

         lt_email        TYPE TABLE OF bapiadsmtp,

         ls_email        TYPE          bapiadsmtp,

         lt_roles        TYPE TABLE OF bapibusisb990_bproles,

         ls_roles        TYPE          bapibusisb990_bproles.

   DATA: lt_return         TYPE TABLE OF bapiret2 ,

         lt_pt_return      TYPE TABLE OF bapiret2,

         lt_err_return     TYPE TABLE OF bapiret2,

         lt_success_return TYPE TABLE OF bapiret2,

         ls_return         TYPE          bapiret2  .

   DATA: lv_guid TYPE bu_partner_guid.

   DATA: lv_person_id TYPE personid.

   DATA: lv_selected_folder TYPE string.

 

*************

   SPLIT lp_file AT '.' INTO lv_file_str lv_filetype .

 

*  TRANSLATE lv_filetype TO UPPER CASE.

*  IF                                                                                        "lv_filetype = 'CSV'.

   lv_file_str = lp_file.

   CALL FUNCTION 'GUI_UPLOAD'

     EXPORTING

       filename                = lv_file_str

       filetype                = 'ASC'

       has_field_separator     = 'x'

       replacement             = '#'

       no_auth_check           = 'x'

     IMPORTING

       filelength              = lv_filelength

       header                  = lv_header

     TABLES

       data_tab                = lt_emp

     EXCEPTIONS

       file_open_error         = 1

       file_read_error         = 2

       no_batch                = 3

       gui_refuse_filetransfer = 4

       invalid_type            = 5

       no_authority            = 6

       unknown_error           = 7

       bad_data_format         = 8

       header_not_allowed      = 9

       separator_not_allowed   = 10

       header_too_long         = 11

       unknown_dp_error        = 12

       access_denied           = 13

       dp_out_of_memory        = 14

       disk_full               = 15

       dp_timeout              = 16

       OTHERS                  = 17.

 

   IF sy-subrc <> 0.

     EXIT.

   ENDIF.

 

   LOOP AT lt_emp INTO ls_emp.

     lv_partnercategory = '1'.

*    lv_partnergroup = 'Z004'. " THIS DOES NOT EXIT IN SYSTEM

     lv_partnergroup = 'Y6'.

 

CALL FUNCTION 'CONVERT_DATE_TO_INTERNAL'

                 EXPORTING

                   date_external            = ls_emp-DOB

                 IMPORTING

                   date_internal            = lv_date

                 EXCEPTIONS

                   date_external_is_invalid = 1

                   OTHERS                   = 2.

 

     ls_centraldataperson-CORRESPONDLANGUAGE = ls_emp-language.

     ls_centraldataperson-firstname = ls_emp-name1.

     ls_centraldataperson-lastname = ls_emp-name2.

     ls_centraldata-title_key    =   ls_emp-title .

     ls_centraldataperson-BIRTHDATE =   lv_date .                      "ls_emp-DOB.

     " company .     "TITLE_KEY

     TRANSLATE ls_emp-country TO UPPER CASE.

     ls_addressdata-country = ls_emp-country.

     ls_addressdata-postl_cod1 = ls_emp-postelcode.

     ls_addressdata-street = ls_emp-street.

     ls_addressdata-city = ls_emp-city.

     ls_addressdata-house_no = ls_emp-houseno.

     ls_addressdata-comm_type = ls_emp-comm_method.

 

     REPLACE ALL OCCURRENCES OF '.' IN ls_emp-phone1 WITH space.

     CONDENSE ls_emp-phone1 NO-GAPS.

     REPLACE ALL OCCURRENCES OF '.' IN ls_emp-fax WITH space.

     CONDENSE ls_emp-fax NO-GAPS.

*    REPLACE ALL OCCURRENCES OF '.' IN ls_emp-mobile WITH space.

*    CONDENSE ls_emp-mobile NO-GAPS.

 

     IF NOT ls_emp-phone1 IS INITIAL.

       ls_tel-country = ls_emp-country.

       ls_tel-telephone = ls_emp-phone1.

       ls_tel-extension = ls_emp-pextension .

       ls_tel-r_3_user = space.

       APPEND ls_tel TO lt_tel.

       CLEAR ls_tel.

     ENDIF.

*    IF NOT ls_emp-uri IS INITIAL.

*      ls_uri-uri_type = 'HPG' ." add by srikanth

*      ls_uri-uri = ls_emp-uri.                                 "uri_type

*      APPEND ls_uri TO lt_uri.

*      CLEAR ls_uri.

*    ENDIF.

     IF NOT ls_emp-fax IS INITIAL.

       ls_faxdata-country = ls_emp-country.

       ls_faxdata-fax = ls_emp-fax.

       ls_faxdata-extension = ls_emp-fextension .

       APPEND ls_faxdata TO lt_faxdata.

     ENDIF.

     IF NOT ls_emp-email IS INITIAL.

       ls_email-e_mail = ls_emp-email.

       APPEND ls_email TO lt_email.

     ENDIF.

 

     ls_roles-partnerrole = 'BUP001'.

     ls_roles-partnerrolecategory = 'BUP001'.

     APPEND ls_roles TO lt_roles.

 

     CALL FUNCTION 'BAPI_BUPA_CREATE_FROM_DATA'

       EXPORTING

         partnercategory   = lv_partnercategory

         partnergroup      = lv_partnergroup

         centraldata       = ls_centraldata

         centraldataperson = ls_centraldataperson "commented by sriaknth

*       centraldataorganization = ls_orgnization " addded by srikanth

         addressdata       = ls_addressdata

         accept_error      = abap_true

       IMPORTING

         businesspartner   = lv_businesspartner1

       TABLES

         telefondata       = lt_tel

         faxdata           = lt_faxdata

         e_maildata        = lt_email

         return            = lt_return

*        uriaddressdata    = lt_uri.

*        roles             = lt_roles.

.

     IF NOT lt_return IS INITIAL.

       PERFORM f_check_error.

     ENDIF.

 

     SELECT SINGLE partner_guid FROM but000

     INTO lv_guid

     WHERE partner EQ lv_businesspartner1.

     CHECK sy-subrc EQ 0.

     WRITE :/ lv_businesspartner1.

 

     CALL FUNCTION 'BAPI_BUPA_ROLE_ADD'

       EXPORTING

         businesspartner     = lv_businesspartner1

         businesspartnerrole = 'BUP001'

*       DIFFERENTIATIONTYPEVALUE       =

       TABLES

         return              = lt_return.

     CALL FUNCTION 'BBPU_COMMIT_AND_WAIT'.

     CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

       EXPORTING

         wait = 'X'.

 

 

     CLEAR: lv_partnercategory, lv_partnergroup,

         ls_centraldata,ls_centraldataperson,

         ls_addressdata,

         lt_tel,lt_faxdata,lt_uri ,

         lt_email,lt_return,lt_roles,lv_guid, lv_person_id.

 

 

   ENDLOOP .

 

*&---------------------------------------------------------------------*

*&      Form  F_CHECK_ERROR

*&---------------------------------------------------------------------*

FORM f_check_error.

   LOOP AT lt_return INTO ls_return.

     IF ls_return-type EQ 'E'.

       CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.

       APPEND ls_return TO lt_err_return.

     ELSEIF ls_return-type NE 'E'.

       APPEND ls_return TO lt_success_return.

       CALL FUNCTION 'BBPU_COMMIT_AND_WAIT'.

     ENDIF.

 

   ENDLOOP.

ENDFORM.




this is data is in my notpad.


0002radan27Donthu302.02.1990ENV.P.colony17-1-382500079HyderabadIN0124332452342323223232shivp@gmail.comINT





Viewing all articles
Browse latest Browse all 7775

Trending Articles



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