Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Regarding BDC

Former Member
0 Likes
558

I have faced problem during uploading data.

The requirement is like that after uploading the data through BDC, the existing flat file should delete from Presentation Server (desktop).

Could you provide the code for the same? Urgent.

Regards,

Nihar.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
539

Hi Nihar,

Use CL_GUI_FRONTEND_SERVICES->FILE_DELETE

Regards,

Atish

5 REPLIES 5
Read only

Former Member
0 Likes
540

Hi Nihar,

Use CL_GUI_FRONTEND_SERVICES->FILE_DELETE

Regards,

Atish

Read only

0 Likes
539

Hi Atish ,

could provide me the code , This Function Module CL_GUI_FRONTEND_SERVICES not found in the system .

Read only

0 Likes
539

Hi Nihar,

it is not a FM. It is a class. and file_delete is its method.

Regards,

Atish

Read only

0 Likes
539

Hi This is my code , could u plz guide me where i have to write

REPORT ZNIHAR_CT_BDC

NO STANDARD PAGE HEADING LINE-SIZE 255.

DATA: BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.

DATA: MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.

DATA: X_FILE TYPE STRING.

DATA: BEGIN OF ITAB OCCURS 0 ,

MATNR LIKE MARA-MATNR,

MBRSH LIKE MARA-MBRSH,

MTART LIKE MARA-MTART,

MAKTX LIKE MAKT-MAKTX,

MEINS LIKE MARA-MEINS ,

END OF ITAB .

PARAMETERS : P_FILE TYPE RLGRAP-FILENAME OBLIGATORY.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.

  • CALL FUNCTION '/SAPDMC/LSM_F4_SERVER_FILE'

  • EXPORTING

  • DIRECTORY = 'C:\mara.txt'

    • FILEMASK = '*'

  • IMPORTING

  • SERVERFILE = P_FILE

  • EXCEPTIONS

  • CANCELED_BY_USER = 1

  • OTHERS = 2 .

*

  • IF SY-SUBRC <> 0.

  • WRITE:/ 'Flat file not deleted sucessfully' .

  • ENDIF.

*

  • BREAK-POINT.

PERFORM F4_HELP.

*INCLUDE BDCRECX1.

START-OF-SELECTION.

MOVE P_FILE TO X_FILE.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

FILENAME = X_FILE

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

TABLES

DATA_TAB = ITAB

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.

WRITE:/ 'internal table not populated ' .

ENDIF.

  • PERFORM OPEN_GROUP.

LOOP AT ITAB.

REFRESH BDCDATA.

CLEAR BDCDATA.

PERFORM BDC_DYNPRO USING 'SAPLMGMM' '0060'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'RMMG1-MTART'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=AUSW'.

PERFORM BDC_FIELD USING 'RMMG1-MATNR'

ITAB-MATNR.

PERFORM BDC_FIELD USING 'RMMG1-MBRSH'

ITAB-MBRSH.

PERFORM BDC_FIELD USING 'RMMG1-MTART'

ITAB-MTART.

PERFORM BDC_DYNPRO USING 'SAPLMGMM' '0070'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(16)'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=ENTR'.

PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(01)'

'X'.

PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(16)'

'X'.

PERFORM BDC_DYNPRO USING 'SAPLMGMM' '4004'.

PERFORM BDC_FIELD USING 'BDC_OKCODE'

'=BU'.

PERFORM BDC_FIELD USING 'BDC_CURSOR'

'MAKT-MAKTX'.

PERFORM BDC_FIELD USING 'MAKT-MAKTX'

ITAB-MAKTX.

PERFORM BDC_FIELD USING 'MARA-MEINS'

ITAB-MEINS.

PERFORM BDC_FIELD USING 'MARA-MTPOS_MARA'

'NORM'.

CALL TRANSACTION 'MM01' USING BDCDATA

MODE 'A'

UPDATE 'S'

MESSAGES INTO MESSTAB.

  • PERFORM BDC_TRANSACTION USING 'MM01'.

  • PERFORM CLOSE_GROUP.

ENDLOOP .

----


  • Start new screen *

----


FORM BDC_DYNPRO USING PROGRAM DYNPRO.

CLEAR BDCDATA.

BDCDATA-PROGRAM = PROGRAM.

BDCDATA-DYNPRO = DYNPRO.

BDCDATA-DYNBEGIN = 'X'.

APPEND BDCDATA.

ENDFORM. "BDC_DYNPRO

----


  • Insert field *

----


FORM BDC_FIELD USING FNAM FVAL.

  • IF FVAL <> NODATA.

CLEAR BDCDATA.

BDCDATA-FNAM = FNAM.

BDCDATA-FVAL = FVAL.

APPEND BDCDATA.

  • ENDIF.

ENDFORM. "BDC_FIELD

&----


*& Form F4_HELP

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM F4_HELP .

CALL FUNCTION 'KD_GET_FILENAME_ON_F4'

CHANGING

FILE_NAME = P_FILE

EXCEPTIONS

MASK_TOO_LONG = 1

OTHERS = 2.

.

IF SY-SUBRC <> 0.

WRITE:/ 'FILE NAME NOT FOUND '.

ENDIF.

ENDFORM. " F4_HELP

Read only

0 Likes
539

As you want to delete file after all processing

you can write it after

CALL TRANSACTION 'MM01' USING BDCDATA

MODE 'A'

UPDATE 'S'

MESSAGES INTO MESSTAB.

  • PERFORM BDC_TRANSACTION USING 'MM01'.

  • PERFORM CLOSE_GROUP.

ENDLOOP .

Regards,

Atish