Application Development 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: 

how to get header when we use CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD

Former Member
0 Kudos

Hi SDN's,

Can u tell me how to get headers when we download data to excel with using (we are using DBF as file type in the following method )

CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD

(We can't use GUI_DOWNLOAD)

Thanks in advance..

BR

1 REPLY 1

Former Member
0 Kudos

Hi,

I m giving u a bdc code i hope ur prob ll be solved.

&----


*& Report ZDTK_BDC_LT01

*&

&----


*&

*& PROGRAME TITLE : LT01

*&

*& AUTHOR : D TARUN KUMAR

*&

*& MM CONSULTANT : Mr. MRINMOYE CHAKRABORTY

*&

*& REQUEST NO. : RD1K901995

*&

*& TRANSACTION ID : ZLT01

*&

*& PACKAGE : ZTARUN

*&

&----


*& DESCRIPTION : BDC REPORT TO UPLOAD INITIAL STOCK POSTING AND

*& STORAGE BINS THROUGH LT01.

&----


REPORT ZDTK_BDC_LT01

no standard page heading line-size 255.

TYPE-POOLS: TRUXS.

----


  • STRUCTURE DECLARATION

----


TYPES : BEGIN OF TY_UPLOAD,

LGNUM(3),

BETYP(1),

BENUM(10),

  • BWLVS(3),

MATNR(18),

  • BISMT(18),

ANFME(16),

  • WERKS(4),

  • LGORT(4),

CHARG(10),

  • LETYP(10),

  • VLTYP(3),

  • VLBER(3),

  • VLPLA(10),

  • VLQNR(10),

NLTYP(3),

  • NLBER(3),

NLPLA(10),

  • NLQNR(10),

END OF TY_UPLOAD.

----


  • INTERNALTABLE & WORKAREA DECLARATION

----


DATA : T_UPLOAD TYPE STANDARD TABLE OF TY_UPLOAD,

T_BDCDATA TYPE STANDARD TABLE OF BDCDATA,

T_BDCMSGCOLL TYPE STANDARD TABLE OF BDCMSGCOLL,

W_UPLOAD TYPE TY_UPLOAD,

W_BDCDATA TYPE BDCDATA,

W_BDCMSGCOLL TYPE BDCMSGCOLL,

----


  • GLOBLE DECLARATION

----


G_FLNAME TYPE STRING,

G_MESSAGE(70) TYPE C,

IT_RAW TYPE TRUXS_T_TEXT_DATA,

----


  • GLOBLE DECLARATION

----


WA_OPT TYPE CTU_PARAMS.

WA_OPT-UPDMODE = 'A'.

WA_OPT-DEFSIZE = 'X'.

WA_OPT-DISMODE = 'A'.

----


  • SLECTION SCREEN DECLARATION

----


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

SELECTION-SCREEN SKIP 2.

PARAMETER : P_FILE LIKE RLGRAP-FILENAME OBLIGATORY.

SELECTION-SCREEN SKIP 2.

SELECTION-SCREEN : END OF BLOCK B1.

----


AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.

----


PERFORM GET_FILENAME.

----


START-OF-SELECTION.

----


PERFORM UPLOAD_DATA.

*PERFORM GET_FINAL.

*PERFORM GET_MIGO.

PERFORM SESSION.

*PERFORM TEST.

----


  • Start new screen *

----


FORM BDC_DYNPRO USING PROGRAM DYNPRO.

CLEAR W_BDCDATA.

W_BDCDATA-PROGRAM = PROGRAM.

W_BDCDATA-DYNPRO = DYNPRO.

W_BDCDATA-DYNBEGIN = 'X'.

APPEND W_BDCDATA TO T_BDCDATA.

ENDFORM.

----


  • Insert field *

----


FORM BDC_FIELD USING FNAM FVAL.

  • IF FVAL <> NODATA.

CLEAR W_BDCDATA.

W_BDCDATA-FNAM = FNAM.

W_BDCDATA-FVAL = FVAL.

APPEND W_BDCDATA TO T_BDCDATA.

  • ENDIF.

ENDFORM.

&----


*& Form GET_FILENAME

&----


  • TEXT

----


FORM GET_FILENAME .

CALL FUNCTION 'F4_FILENAME'

EXPORTING

PROGRAM_NAME = SYST-CPROG

DYNPRO_NUMBER = SYST-DYNNR

FIELD_NAME = 'P_FILE'

IMPORTING

FILE_NAME = P_FILE

.

ENDFORM. " GET_FILENAME

&----


*& Form UPLOAD_DATA

&----


  • text

----


form UPLOAD_DATA .

CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'

EXPORTING

  • I_FIELD_SEPERATOR =

I_LINE_HEADER = 'X'

I_TAB_RAW_DATA = IT_RAW

I_FILENAME = P_FILE "WORK TABLE

TABLES

I_TAB_CONVERTED_DATA = T_UPLOAD[] "ACTUAL DATA

EXCEPTIONS

CONVERSION_FAILED = 1

OTHERS = 2

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

endform. " UPLOAD_DATA

&----


*& Form SESSION

&----


  • text

----


FORM SESSION .

*sort t_upload by bismt.

LOOP AT T_UPLOAD INTO W_UPLOAD.

REFRESH T_BDCDATA.

*CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

  • EXPORTING

  • input = W_UPLOAD-CHARG

  • IMPORTING

  • OUTPUT = W_UPLOAD-CHARG .

*

*

*CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

  • EXPORTING

  • input = W_UPLOAD-VLBER

  • IMPORTING

  • OUTPUT = W_UPLOAD-VLBER .

*

*CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

  • EXPORTING

  • input = W_UPLOAD-NLTYP

  • IMPORTING

  • OUTPUT = W_UPLOAD-NLTYP .

*

*CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

  • EXPORTING

  • input = W_UPLOAD-NLBER

  • IMPORTING

  • OUTPUT = W_UPLOAD-NLBER .

*

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = W_UPLOAD-CHARG

IMPORTING

OUTPUT = W_UPLOAD-CHARG .

DATA : BWLVS(3),

LGORT(4),

WERKS(4),

CHARG(10),

LETYP(10),

VLTYP(3),

VLBER(3),

VLPLA(10),

VLQNR(10),

NLTYP(3),

NLBER(3),

NLQNR(10).

  • DATA : W_MATNR(18).

*

*SELECT SINGLE MATNR FROM MARA INTO W_MATNR

  • WHERE BISMT = W_UPLOAD-BISMT.

BWLVS = '999'.

LGORT = '3500'.

WERKS = '1030'.

LETYP = 'E1'.

VLTYP = '998'.

VLBER = '001'.

VLPLA = 'AUFNAHME'.

NLTYP = '354'. "(packaging material)

*NLTYP = '353'. "(spareparts material)

NLBER = '001'.

*include bdcrecx1.

*

*start-of-selection.

*

*perform open_group.

perform bdc_dynpro using 'SAPML03T' '0101'.

perform bdc_field using 'BDC_CURSOR'

'LTAP-CHARG'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'LTAK-LGNUM'

W_UPLOAD-LGNUM. "'350'.

perform bdc_field using 'LTAK-BENUM'

W_UPLOAD-BENUM. "'1000000000'.

perform bdc_field using 'LTAK-BETYP'

W_UPLOAD-BETYP. "'P'.

perform bdc_field using 'LTAK-BWLVS' BWLVS. "'999'.

perform bdc_field using 'LTAP-MATNR'

W_upload-MATNR. "'40000009'.

perform bdc_field using 'RL03T-ANFME'

W_UPLOAD-ANFME. "'1,000'.

perform bdc_field using 'LTAP-WERKS' WERKS. "'1030'.

perform bdc_field using 'LTAP-CHARG'

w_upload-charg.

perform bdc_dynpro using 'SAPML03T' '0102'.

perform bdc_field using 'BDC_CURSOR'

'LTAP-NLPLA'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'RL03T-ANFME'

W_UPLOAD-ANFME. "'1,000'.

*perform bdc_field using 'LTAP-ALTME'

  • 'KG'.

perform bdc_field using 'LTAP-LETYP' LETYP. "'E1'.

*perform bdc_field using 'LTAP-CHARG' W_UPLOAD-CHARG. "'0000000101'.

perform bdc_field using 'LTAP-VLTYP' VLTYP. "'998'.

perform bdc_field using 'LTAP-VLBER' VLBER. "'001'.

perform bdc_field using 'LTAP-VLPLA' VLPLA. "'AUFNAHME'.

perform bdc_field using 'LTAP-NLTYP'

W_UPLOAD-NLTYP. "'351'.

perform bdc_field using 'LTAP-NLBER' NLBER. "'001'.

perform bdc_field using 'LTAP-NLPLA'

W_UPLOAD-NLPLA. "'01 00 01'.

*perform bdc_transaction using 'LT01'.

*

*perform close_group.

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

CALL TRANSACTION 'LT01' USING T_BDCDATA

  • MODE 'A'

  • UPDATE 'A'

OPTIONS FROM WA_OPT

MESSAGES INTO T_BDCMSGCOLL.

IF SY-SUBRC <> 0.

READ TABLE T_BDCMSGCOLL INTO W_BDCMSGCOLL INDEX 1.

CALL FUNCTION 'FORMAT_MESSAGE'

EXPORTING

ID = SY-MSGID

LANG = 'EN'

NO = SY-MSGNO

V1 = SY-MSGV1

V2 = SY-MSGV2

V3 = SY-MSGV3

V4 = SY-MSGV4

IMPORTING

MSG = G_MESSAGE

EXCEPTIONS

NOT_FOUND = 1

OTHERS = 2.

IF SY-SUBRC = 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

WRITE : / W_upload-matnr ,'-----' , G_MESSAGE.

REFRESH T_BDCMSGCOLL.

ENDIF.

ENDIF.

*clear : w_matnr, w_upload.

ENDLOOP.

ENDFORM. " SESSION