0% found this document useful (0 votes)
36 views5 pages

ZBDC BP

bdc bp

Uploaded by

arvinder
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views5 pages

ZBDC BP

bdc bp

Uploaded by

arvinder
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 5

REPORT zbdc_bp

NO STANDARD PAGE HEADING LINE-SIZE 255.

TYPES : BEGIN OF ty_bdc,


lifnr(10) TYPE c,
tax(3) TYPE c,
END OF ty_bdc.

DATA: it_bdc TYPE TABLE OF ty_bdc,


wa_bdc TYPE ty_bdc.

DATA: it_bdcdata TYPE TABLE OF bdcdata,


wa_bdcdata TYPE bdcdata.

DATA: it_msg TYPE TABLE OF bdcmsgcoll,


wa_msg TYPE bdcmsgcoll.
DATA: it_msg1 TYPE TABLE OF bdcmsgcoll,
wa_msg1 TYPE bdcmsgcoll.
DATA: lv_msg TYPE STRing.

TYPES:fs_struct(4096) TYPE c OCCURS 0 .


DATA:w_struct TYPE fs_struct.
DATA: lv_message TYPE string.
*DATA:msg(1000) TYPE c.

TYPES : BEGIN OF ty_msg,


lifnr(10) TYPE c,
msg(1000) TYPE c,
sta(1000) TYPE c,
END OF ty_msg.

DATA: lt_msg TYPE TABLE OF ty_msg,


lw_msg TYPE ty_msg.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.


PARAMETERS:p_file LIKE rlgrap-filename OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1 .

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.

CALL FUNCTION 'F4_FILENAME'


EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
field_name = 'P_FILE'
IMPORTING
file_name = p_file.

START-OF-SELECTION.

CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'


EXPORTING
* i_field_seperator = 'X'
i_line_header = '1'
i_tab_raw_data = w_struct
i_filename = p_file
TABLES
i_tab_converted_data = it_bdc
EXCEPTIONS
conversion_failed = 1
OTHERS = 2.

* INCLUDE bdcrecx1_s.

START-OF-SELECTION.
LOOP AT it_bdc INTO wa_bdc.
CLEAR:wa_bdcdata.
REFRESH: it_bdcdata[].
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
PERFORM bdc_dynpro USING 'SAPLBUS_LOCATOR' '3000'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=SCREEN_1000_OPEN'.
PERFORM bdc_field USING 'BDC_CURSOR'
'BUS_LOCA_SRCH01-SEARCH_TYPE'.
PERFORM bdc_field USING 'BUS_LOCA_SRCH01-SEARCH_TYPE'
'1'.
PERFORM bdc_field USING 'BUS_LOCA_SRCH01-SEARCH_ID'
'8'.
PERFORM bdc_field USING 'BUS_LOCA_SRCH01-MAXHIT'
'100'.
PERFORM bdc_dynpro USING 'SAPLBUPA_DIALOG_JOEL' '1600'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=BUS_MAIN_ENTER'.
PERFORM bdc_field USING 'BDC_CURSOR'
'BUS_JOEL_MAIN-OPEN_NUMBER'.
PERFORM bdc_field USING 'BUS_JOEL_MAIN-OPEN_NUMBER'
wa_bdc-lifnr."'21000266'.
PERFORM bdc_dynpro USING 'SAPLBUS_LOCATOR' '3000'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=BUS_MAIN_SAVE'.
PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_ROLE'
'FLVN01'.
PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'
'000001'.
PERFORM bdc_field USING 'BDC_CURSOR'
'GS_LFA1-FITYP'.
PERFORM bdc_field USING 'GS_LFA1-FITYP'
wa_bdc-tax."'01'.

CALL TRANSACTION 'BP' USING it_bdcdata MODE 'N' UPDATE 'S' MESSAGES INTO
it_msg.

IF it_msg IS NOT INITIAL.


LOOP AT it_msg INTO wa_msg.
CALL FUNCTION 'MESSAGE_TEXT_BUILD'
EXPORTING
msgid = wa_msg-msgid
msgnr = wa_msg-msgnr
msgv1 = wa_msg-msgv1
msgv2 = wa_msg-msgv2
msgv3 = wa_msg-msgv3
msgv4 = wa_msg-msgv4
IMPORTING
message_text_output = lv_message.

lw_msg-lifnr = wa_bdc-lifnr.
lw_msg-msg = lv_message.
APPEND lw_msg TO lt_msg.
CLEAR: lw_msg,lv_message.
ENDLOOP .
ENDIF.
ENDLOOP.

DATA(lt_msg1) = lt_msg.
SORT lt_msg BY lifnr .
SORT lt_msg1 BY lifnr msg.
DELETE ADJACENT DUPLICATES FROM lt_msg COMPARING lifnr.
DELETE ADJACENT DUPLICATES FROM lt_msg1 COMPARING lifnr msg.

LOOP AT lt_msg ASSIGNING FIELD-SYMBOL(<fs1>).


LOOP AT lt_msg1 ASSIGNING FIELD-SYMBOL(<fs2>) WHERE lifnr = <fs1>-lifnr.
DATA(lv_msg11) = <fs2>-msg.
CLEAR: <fs2>-msg.
CONCATENATE lv_msg11 <fs2>-msg INTO <fs1>-sta SEPARATED BY ':'.
CLEAR: lv_msg11.
ENDLOOP.
ENDLOOP.

IF lt_msg IS NOT INITIAL.


CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
* i_structure_name = 'BDCMSGCOLL'
TABLES
t_outtab = lt_msg
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
ENDIF.

FORM bdc_dynpro USING program dynpro.


CLEAR wa_bdcdata.
wa_bdcdata-program = program.
wa_bdcdata-dynpro = dynpro.
wa_bdcdata-dynbegin = 'X'.
APPEND wa_bdcdata TO it_bdcdata.
ENDFORM.

*----------------------------------------------------------------------*
* Insert field *
*----------------------------------------------------------------------*
FORM bdc_field USING fnam fval.
IF fval <> space.
CLEAR wa_bdcdata.
wa_bdcdata-fnam = fnam.
wa_bdcdata-fval = fval.
SHIFT wa_bdcdata-fval LEFT DELETING LEADING space.
APPEND wa_bdcdata TO it_bdcdata.
ENDIF.
ENDFORM.

* PERFORM open_group.
* PERFORM bdc_dynpro USING 'SAPLBUS_LOCATOR' '3000'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=BUS_MAIN_ENTER'.
* PERFORM bdc_field USING 'BUS_LOCA_SRCH01-SEARCH_TYPE'
* '1'.
* PERFORM bdc_field USING 'BUS_LOCA_SRCH01-SEARCH_ID'
* '8'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'BUS_JOEL_SEARCH-LIFNR'.
* PERFORM bdc_field USING 'BUS_JOEL_SEARCH-LIFNR' "enter
* '21001179'.
* PERFORM bdc_field USING 'BUS_LOCA_SRCH01-MAXHIT'
* '100'.
* PERFORM bdc_dynpro USING 'SAPLBUS_LOCATOR' '3000'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=%_GC 120 3'.
* PERFORM bdc_field USING 'BUS_LOCA_SRCH01-SEARCH_TYPE'
* '1'.
* PERFORM bdc_field USING 'BUS_LOCA_SRCH01-SEARCH_ID'
* '8'.
* PERFORM bdc_field USING 'BUS_JOEL_SEARCH-LIFNR'
* '21001179'.
* PERFORM bdc_field USING 'BUS_LOCA_SRCH01-MAXHIT'
* '100'.
* PERFORM bdc_dynpro USING 'SAPLBUS_LOCATOR' '3000'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=SCREEN_1110_CHG_ROLE'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'BUS_JOEL_MAIN-PARTNER_ROLE'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_ROLE'
* 'FLVN00'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'
* '000001'.
* PERFORM bdc_dynpro USING 'SAPLBUS_LOCATOR' '3000'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=SCREEN_1100_TAB_10'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_ROLE'
* 'FLVN00'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'
* '000001'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'BUS000FLDS-TITLE_MEDI'.
* PERFORM bdc_dynpro USING 'SAPLBUS_LOCATOR' '3000'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=SCREEN_1000_ACTIVITY'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_ROLE'
* 'FLVN00'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'
* '000001'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'GS_LFA1-FITYP'.
* PERFORM bdc_dynpro USING 'SAPLBUS_LOCATOR' '3000'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=BUS_MAIN_SAVE'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_ROLE'
* 'FLVN00'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'
* '000001'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'GS_LFA1-FITYP'.
* PERFORM bdc_field USING 'GS_LFA1-FITYP' "enter
* 'Z1'.
* PERFORM bdc_dynpro USING 'SAPLBUS_LOCATOR' '3000'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=BUS_MAIN_SAVE'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_ROLE'
* 'FLVN00'.
* PERFORM bdc_field USING 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'
* '000001'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'GS_LFA1-FITYP'.
* PERFORM bdc_field USING 'GS_LFA1-FITYP'
* '01'.
** PERFORM bdc_transaction USING 'BP'.

* PERFORM close_group.

*Text elements
*----------------------------------------------------------
* 040 Program already exists
* 041 Report name is not valid
* 042 No authorization to create reports
* 043 Path names are not permitted. Save file in DIR_HOME instead?
* E00 Error opening dataset, return code:
* I01 Session name
* I02 Open session
* I03 Insert transaction
* I04 Close Session
* I05 Return code =
* I06 Error session created
* S01 Session name
* S02 User
* S03 Keep session
* S04 Lock date
* S05 Processing Mode
* S06 Update Mode
* S07 Create Session
* S08 Call transaction
* S09 Error sessn
* S10 Nodata indicator
* S11 Short log

*Selection texts
*----------------------------------------------------------
* P_FILE D .

----------------------------------------------------------------------------------
Extracted by Mass Download version 1.5.5 - E.G.Mellodew. 1998-2024. Sap Release 757

You might also like