Itab formation for download to Excel
Hi Friends,
I need to create an excel file from an internal table (say itab) which contains header and lower portion data of excel.
I need to create excel like this:
<b>Vendor : itab-lifnr</b> -spaces- <b>Plant : itab-werks</b>
<b>User Name : itab-usr01</b> - spaces - <b>Date : itab-date</b>
Under above, the column headers for the line items
<b>Vendor</b> -space- <b>Name</b> -space- <b>Material</b> -space- <b>Mail ID</b> -space- <b>Delivery Status</b>
And here the line items (can be more than one)
<b>itab-lifnr</b> -space- <b>itab-name1</b> -space- <b>itab-matnr</b> -space- <b>itab-email</b> -space- <b>itab-stewn</b>
How to go about it:
- is using con_cret and con_tab the only option ? if so, how should the internal table to be sent to gui_download be declared ?
Advance Thanks
Aadarsh
data: imakt type table of makt.
start-of-selection.
select * into corresponding fields of table imakt
from makt up to 100 rows
where spras = sy-langu.
call method cl_gui_frontend_services=>gui_download
exporting
* BIN_FILESIZE =
filename = 'C:text.txt'
<b> FILETYPE = 'DAT'</b>
* APPEND = SPACE
<b> WRITE_FIELD_SEPARATOR = SPACE</b>
* HEADER = '00'
* TRUNC_TRAILING_BLANKS = SPACE
* WRITE_LF = 'X'
* COL_SELECT = SPACE
* COL_SELECT_MASK = SPACE
* IMPORTING
* FILELENGTH =
changing
data_tab = imakt
* EXCEPTIONS
* FILE_WRITE_ERROR = 1
* NO_BATCH = 2
* GUI_REFUSE_FILETRANSFER = 3
* INVALID_TYPE = 4
* NO_AUTHORITY = 5
* UNKNOWN_ERROR = 6
* HEADER_NOT_ALLOWED = 7
* SEPARATOR_NOT_ALLOWED = 8
* FILESIZE_NOT_ALLOWED = 9
* HEADER_TOO_LONG = 10
* DP_ERROR_CREATE = 11
* DP_ERROR_SEND = 12
* DP_ERROR_WRITE = 13
* UNKNOWN_DP_ERROR = 14
* ACCESS_DENIED = 15
* DP_OUT_OF_MEMORY = 16
* DISK_FULL = 17
* DP_TIMEOUT = 18
* FILE_NOT_FOUND = 19
* DATAPROVIDER_EXCEPTION = 20
* CONTROL_FLUSH_ERROR = 21
* others = 22
if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
Try this out.
Similar Messages
-
I need format for data in excel file load into info cube to planning area.
Hi gurus,
I need format for data in excel file load into info cube to planning area.
can you send me what should i maintain header
i have knowledge on like
plant,location,customer,product,history qty,calander
100,delhi,suresh,nokia,250,2011211
if it is right or wrong can u explain and send me about excel file format.
babuHi Babu,
The file format should be same as you want to upload. The sequence of File format should be same communication structure.
Like,
Initial columns with Characteristics (ex: plant,location,customer,product)
date column (check for data format) (ex: calander)
Last columsn with Key figures (history qty)
Hope this helps.
Regards,
Nawanit -
Excel version for download to Excel
Hi All,
Does anybody know how the Excel version for the download is deternined? I have Excel 2007 installed on my laptop, but the download happens in Excel 97-2003.
Thanks,
NathalieHi Nathalie,
Please check the question discussed in the forum:
Bw export to excel option downloads the report as .XLS
-Vikram -
Hi,
I have to download the file in the .csv format. What is the function module for it.
Regardssee this sample code
REPORT YSG_MATSTK_REPT LINE-SIZE 220
LINE-COUNT 50(5).
*& DATA DECLARATION *
TABLES: MARA, "GENERAL MASTER DATA
MARC, "PLANT DATA FOR MATERIAL
MARD, "STORAGE LOCATION DATA FOR MATERIAL
MVKE, "SALES DATA FOR MATERIAL
MAKT, "MATERIAL DESCRIPTION
EKKO, "PURCHASING DOCUMENT HEADER
EKPO, "PURCHASING DOCUMENT ITEM
VBAK, "SALES DOCUMENT HEADER DATA
VBAP. "SALES DOCUMENT ITEM DATA
TYPE-POOLS : SLIS.
DATA: VT_FIELDCAT1 TYPE SLIS_T_FIELDCAT_ALV,
V_FIELDCAT TYPE SLIS_FIELDCAT_ALV,
V_LAYOUT TYPE SLIS_LAYOUT_ALV,
BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
BEGIN OF I_MARA OCCURS 0,
MATNR LIKE MARA-MATNR, "MATERIAL NUMBER
MBRSH LIKE MARA-MBRSH, "INDUSTRY SECTOR
MEINS LIKE MARA-MEINS, "BASE UNIT OF MEASURE
MATKL LIKE MARA-MATKL, "MATERIAL GROUP
END OF I_MARA,
BEGIN OF I_MARC OCCURS 0,
MATNR LIKE MARC-MATNR, "MATERIAL NUMBER
WERKS LIKE MARC-WERKS, "PLANT
LVORM LIKE MARC-LVORM, "FLAG MATERIAL FOR DELETION AT PLANT
"LEVEL
DISPO LIKE MARC-DISPO, "MRP CONTROLLER
END OF I_MARC,
BEGIN OF I_MAKT OCCURS 0,
MATNR LIKE MAKT-MATNR, "MATERIAL NUMBER
MAKTX LIKE MAKT-MAKTX, "MATERIAL DESCRIPTION
SPRAS LIKE MAKT-SPRAS, "LANGUAGE KEY
END OF I_MAKT,
BEGIN OF I_MVKE OCCURS 0,
MATNR LIKE MVKE-MATNR, "MATERIAL NUMBER
VKORG LIKE MVKE-VKORG, "SALES ORGANIZATION
VTWEG LIKE MVKE-VTWEG, "DISTRIBUTION CHANNEL
END OF I_MVKE,
BEGIN OF I_MARD OCCURS 0,
MATNR LIKE MARD-MATNR, "MATERIAL NUMBER
LGORT LIKE MARD-LGORT, "STORAGE LOCATION
LABST LIKE MARD-LABST, "VALUATED STOCK WITH UNRESTRICTED USE
END OF I_MARD,
BEGIN OF I_EKPO OCCURS 0,
EBELN LIKE EKPO-EBELN, "PURCHASING DOCUMENT NUMBER
EBELP LIKE EKPO-EBELP, "ITEM NUMBER OF PURCHASING DOCUMENT
MATNR LIKE EKPO-MATNR, "MATERIAL NUMBER
END OF I_EKPO,
BEGIN OF I_VBAP OCCURS 0,
VBELN LIKE VBAP-VBELN, "SALES DOCUMENT
POSNR LIKE VBAP-POSNR, "SALES DOCUMENT ITEM
MATNR LIKE VBAP-MATNR, "MATERIAL NUMBER
END OF I_VBAP,
BEGIN OF I_OUT OCCURS 0,
MATNR LIKE MARC-MATNR,
WERKS LIKE MARC-WERKS,
LVORM LIKE MARC-LVORM,
DISPO LIKE MARC-DISPO,
MBRSH LIKE MARA-MBRSH,
MEINS LIKE MARA-MEINS,
MATKL LIKE MARA-MATKL,
VKORG LIKE MVKE-VKORG,
VTWEG LIKE MVKE-VTWEG,
SPRAS LIKE MAKT-SPRAS,
MAKTX LIKE MAKT-MAKTX,
LGORT LIKE MARD-LGORT,
LABST LIKE MARD-LABST,
EBELN LIKE EKPO-EBELN,
EBELP LIKE EKPO-EBELP,
VBELN LIKE VBAP-VBELN,
POSNR LIKE VBAP-POSNR,
END OF I_OUT,
BEGIN OF I_HEADING OCCURS 0,
TEXT1(20),
TEXT2(20),
TEXT3(20),
TEXT4(20),
TEXT5(20),
TEXT6(20),
TEXT7(20),
TEXT8(20),
TEXT9(20),
TEXT10(20),
TEXT11(40),
TEXT12(20),
TEXT13(20),
TEXT14(20),
TEXT15(20),
TEXT16(20),
TEXT17(20),
END OF I_HEADING.
*& S E L E C T I O N - S C R E E N *
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-100.
SELECT-OPTIONS: S_MATNR FOR MARA-MATNR. "OBLIGATORY.
PARAMETERS: P_WERKS LIKE MARC-WERKS. "OBLIGATORY.
SELECT-OPTIONS: S_LGORT FOR MARD-LGORT,
S_DISPO FOR MARC-DISPO,
S_EBELN FOR EKPO-EBELN .
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-101.
PARAMETERS : RB1 RADIOBUTTON GROUP G1,
RB2 RADIOBUTTON GROUP G1,
RB3 RADIOBUTTON GROUP G1.
SELECTION-SCREEN END OF BLOCK B2.
*& I N I T I A L I Z A T I O N *
*INITIALIZATION.
*& S T A R T - O F - S E L E C T I O N *
START-OF-SELECTION.
SELECT MATNR WERKS LVORM DISPO FROM MARC
INTO CORRESPONDING FIELDS OF TABLE I_MARC
WHERE MATNR IN S_MATNR
AND DISPO IN S_DISPO
AND WERKS = P_WERKS.
IF I_MARC[] IS INITIAL.
WRITE:/ 'NO MATCHING DATA AVAILABLE FROM MARC'.
EXIT.
ENDIF.
PERFORM PURCHASEDATA_VALIDATION.
PERFORM SALESDATA_VALIDATION.
SELECT MATNR LGORT LABST FROM MARD INTO TABLE I_MARD
FOR ALL ENTRIES IN I_MARC
WHERE MATNR = I_MARC-MATNR
AND WERKS EQ P_WERKS
AND LGORT IN S_LGORT.
IF I_MARD[] IS INITIAL.
WRITE:/ 'NO MATCHING DATA AVAILABLE FROM MARD'.
EXIT.
ENDIF.
SELECT MATNR VKORG VTWEG FROM MVKE INTO TABLE I_MVKE
FOR ALL ENTRIES IN I_MARC
WHERE MATNR = I_MARC-MATNR.
IF I_MVKE[] IS INITIAL.
WRITE:/ 'NO MATCHING DATA AVAILABLE FROM MVKE'.
EXIT.
ENDIF.
LOOP AT I_MARC.
MOVE-CORRESPONDING I_MARC TO I_OUT.
CLEAR MARC.
SELECT SINGLE MATNR MBRSH MEINS MATKL FROM MARA
INTO CORRESPONDING FIELDS OF MARA
WHERE MATNR = I_OUT-MATNR.
IF SY-SUBRC = 0.
MOVE: MARA-MBRSH TO I_OUT-MBRSH,
MARA-MEINS TO I_OUT-MEINS,
MARA-MATKL TO I_OUT-MATKL.
ELSE.
CONTINUE.
ENDIF.
SELECT SINGLE MATNR MAKTX SPRAS FROM MAKT
INTO CORRESPONDING FIELDS OF MAKT
WHERE MATNR = I_OUT-MATNR.
IF SY-SUBRC = 0.
MOVE: MAKT-MAKTX TO I_OUT-MAKTX,
MAKT-SPRAS TO I_OUT-SPRAS.
ELSE.
CONTINUE.
ENDIF.
LOOP AT I_EKPO WHERE MATNR = I_MARC-MATNR.
MOVE: I_EKPO-EBELN TO I_OUT-EBELN,
I_EKPO-EBELP TO I_OUT-EBELP.
ENDLOOP.
LOOP AT I_VBAP WHERE MATNR = I_MARC-MATNR.
MOVE: I_VBAP-VBELN TO I_OUT-VBELN,
I_VBAP-POSNR TO I_OUT-POSNR.
ENDLOOP.
LOOP AT I_MARD WHERE MATNR = I_MARC-MATNR.
MOVE: I_MARD-LABST TO I_OUT-LABST,
I_MARD-LGORT TO I_OUT-LGORT.
ENDLOOP.
LOOP AT I_MVKE WHERE MATNR = I_MARC-MATNR.
MOVE: I_MVKE-VKORG TO I_OUT-VKORG,
I_MVKE-VTWEG TO I_OUT-VTWEG.
ENDLOOP.
APPEND I_OUT.
CLEAR I_OUT.
ENDLOOP.
PERFORM OPTIONS.
FORM OPTIONS *
FORM OPTIONS.
IF RB2 = 'X'.
PERFORM FIELDCAT.
PERFORM OUTPUT.
ELSE.
IF RB1 = 'X'.
PERFORM HEADINGS.
PERFORM DLOAD.
ELSE.
IF RB3 = 'X'.
PERFORM HEADINGS.
PERFORM DLOAD.
PERFORM FIELDCAT.
PERFORM OUTPUT.
ENDIF.
ENDIF.
ENDIF.
ENDFORM. "OPTIONS
FORM HEADINGS *
FORM HEADINGS.
I_HEADING-TEXT1 = 'MATNR'.
I_HEADING-TEXT2 = 'WERKS'.
I_HEADING-TEXT3 = 'LVORM'.
I_HEADING-TEXT4 = 'DISPO'.
I_HEADING-TEXT5 = 'MBRSH'.
I_HEADING-TEXT6 = 'MEINS'.
I_HEADING-TEXT7 = 'MATKL'.
I_HEADING-TEXT8 = 'VKORG'.
I_HEADING-TEXT9 = 'VTWEG'.
I_HEADING-TEXT10 = 'SPRAS'.
I_HEADING-TEXT11 = 'MAKTX'.
I_HEADING-TEXT12 = 'LGORT'.
I_HEADING-TEXT13 = 'LABST'.
I_HEADING-TEXT14 = 'EBELN'.
I_HEADING-TEXT15 = 'EBELP'.
I_HEADING-TEXT16 = 'VBELN'.
I_HEADING-TEXT17 = 'POSNR'.
APPEND I_HEADING.
ENDFORM. "HEADINGS
FORM DLOAD *
FORM DLOAD.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME = 'C:\MATSTK.csv'
FILETYPE = 'DAT'
WRITE_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB = I_HEADING
EXCEPTIONS
FILE_WRITE_ERROR = 1.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME = 'C:\MATSTK.csv'
FILETYPE = 'DAT'
APPEND = 'X'
WRITE_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB = I_OUT.
ENDFORM. "DLOAD
FORM FIELDCAT *
FORM FIELDCAT.
V_FIELDCAT-COL_POS = '1'.
V_FIELDCAT-FIELDNAME = 'MATNR'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-HOTSPOT = 'X'.
V_FIELDCAT-REF_FIELDNAME = 'MATNR'.
V_FIELDCAT-REF_TABNAME = 'MARC'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '2'.
V_FIELDCAT-FIELDNAME = 'WERKS'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'WERKS'.
V_FIELDCAT-REF_TABNAME = 'MARC'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '3'.
V_FIELDCAT-FIELDNAME = 'LVORM'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'LVORM'.
V_FIELDCAT-REF_TABNAME = 'MARC'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '4'.
V_FIELDCAT-FIELDNAME = 'DISPO'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'DISPO'.
V_FIELDCAT-REF_TABNAME = 'MARC'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '5'.
V_FIELDCAT-FIELDNAME = 'MBRSH'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'MBRSH'.
V_FIELDCAT-REF_TABNAME = 'MARA'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '6'.
V_FIELDCAT-FIELDNAME = 'MEINS'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'MEINS'.
V_FIELDCAT-REF_TABNAME = 'MARA'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '7'.
V_FIELDCAT-FIELDNAME = 'MATKL'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'MATKL'.
V_FIELDCAT-REF_TABNAME = 'MARA'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '8'.
V_FIELDCAT-FIELDNAME = 'VKORG'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'VKORG'.
V_FIELDCAT-REF_TABNAME = 'MVKE'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '9'.
V_FIELDCAT-FIELDNAME = 'VTWEG'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'VTWEG'.
V_FIELDCAT-REF_TABNAME = 'MVKE'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '10'.
V_FIELDCAT-FIELDNAME = 'SPRAS'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'SPRAS'.
V_FIELDCAT-REF_TABNAME = 'MAKT'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '11'.
V_FIELDCAT-FIELDNAME = 'MAKTX'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'MAKTX'.
V_FIELDCAT-REF_TABNAME = 'MAKT'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '12'.
V_FIELDCAT-FIELDNAME = 'LGORT'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'LGORT'.
V_FIELDCAT-REF_TABNAME = 'MARD'.
V_FIELDCAT-SELTEXT_L = 'STRG LOCT'.
V_FIELDCAT-OUTPUTLEN = 10.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '13'.
V_FIELDCAT-FIELDNAME = 'LABST'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-SELTEXT_M = 'STOCK'.
V_FIELDCAT-OUTPUTLEN = 15.
V_FIELDCAT-REF_FIELDNAME = 'LABST'.
V_FIELDCAT-REF_TABNAME = 'MARD'.
V_FIELDCAT-DO_SUM = 'X'.
V_LAYOUT-TOTALS_TEXT = 'TOTAL STOCK:'.
V_FIELDCAT-HOTSPOT = 'X'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '14'.
V_FIELDCAT-FIELDNAME = 'EBELN'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-HOTSPOT = 'X'.
V_FIELDCAT-REF_FIELDNAME = 'EBELN'.
V_FIELDCAT-REF_TABNAME = 'EKPO'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '15'.
V_FIELDCAT-FIELDNAME = 'EBELP'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'EBELP'.
V_FIELDCAT-REF_TABNAME = 'EKPO'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '16'.
V_FIELDCAT-FIELDNAME = 'VBELN'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-HOTSPOT = 'X'.
V_FIELDCAT-REF_FIELDNAME = 'VBELN'.
V_FIELDCAT-REF_TABNAME = 'VBAP'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
V_FIELDCAT-COL_POS = '17'.
V_FIELDCAT-FIELDNAME = 'POSNR'.
V_FIELDCAT-TABNAME = 'I_OUT'.
V_FIELDCAT-REF_FIELDNAME = 'POSNR'.
V_FIELDCAT-REF_TABNAME = 'VBAP'.
APPEND V_FIELDCAT TO VT_FIELDCAT1.
CLEAR V_FIELDCAT.
ENDFORM. "FIELDCAT
FORM OUTPUT *
FORM OUTPUT.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-REPID
I_CALLBACK_TOP_OF_PAGE = 'TOP-OF-PAGE'
I_GRID_TITLE = 'CLICK ON MATERIAL/PURDOC/SALESDOC FOR DETAILS'
I_CALLBACK_USER_COMMAND = 'DISPLAYDETAILS'
IS_LAYOUT = V_LAYOUT
IT_FIELDCAT = VT_FIELDCAT1
TABLES
T_OUTTAB = I_OUT.
IF SY-SUBRC 0.
ENDIF.
ENDFORM. "OUTPUT
FORM TOP-OF-PAGE *
FORM TOP-OF-PAGE.
DATA: T_HEADER TYPE SLIS_T_LISTHEADER,
WA_HEADER TYPE SLIS_LISTHEADER.
WA_HEADER-TYP = 'H'.
WA_HEADER-INFO = 'REPORT FOR : '.
APPEND WA_HEADER TO T_HEADER.
CLEAR WA_HEADER.
WA_HEADER-TYP = 'S'.
WA_HEADER-INFO = 'MATERIAL DETAILS'.
APPEND WA_HEADER TO T_HEADER.
CLEAR WA_HEADER.
WA_HEADER-TYP = 'S'.
WA_HEADER-INFO = 'PURCHASE ORDER DETAILS'.
APPEND WA_HEADER TO T_HEADER.
CLEAR WA_HEADER.
WA_HEADER-TYP = 'S'.
WA_HEADER-INFO = 'SALES ORDER DETAILS'.
APPEND WA_HEADER TO T_HEADER.
CLEAR WA_HEADER.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
I_LOGO = 'GEAR'
IT_LIST_COMMENTARY = T_HEADER.
ENDFORM. "TOP-OF-PAGE
*& FORM DISPLAYDETAILS *
FORM DISPLAYDETAILS USING UCOMM LIKE SY-UCOMM
SELFIELD TYPE SLIS_SELFIELD.
IF SELFIELD-FIELDNAME = 'EBELN'.
IF UCOMM = '&IC1'.
READ TABLE I_OUT INDEX SELFIELD-TABINDEX.
PERFORM PORECDNG.
CLEAR BDCDATA[].
ENDIF.
ELSE.
IF SELFIELD-FIELDNAME = 'MATNR'.
IF UCOMM = '&IC1'.
READ TABLE I_OUT INDEX SELFIELD-TABINDEX.
PERFORM MMRECDNG.
CLEAR BDCDATA[].
ENDIF.
ELSE.
IF SELFIELD-FIELDNAME = 'VBELN'.
IF UCOMM = '&IC1'.
READ TABLE I_OUT INDEX SELFIELD-TABINDEX.
PERFORM SALESRECDNG.
CLEAR BDCDATA[].
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDFORM. "DISPLAYDETAILS
FORM PORECDNG *
FORM PORECDNG.
PERFORM BDC_DYNPRO USING 'SAPMM06E' '0105'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'RM06E-BSTNR'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'/00'.
PERFORM BDC_FIELD USING 'RM06E-BSTNR'
I_OUT-EBELN.
PERFORM BDC_DYNPRO USING 'SAPMM06E' '0120'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'RM06E-BSTPO(01)'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=AH'.
PERFORM BDC_FIELD USING 'RM06E-EBELP'
I_OUT-EBELP.
PERFORM BDC_FIELD USING 'RM06E-TCSELFLAG(01)'
'X'.
PERFORM BDC_TRANSACTION USING 'ME23'.
ENDFORM. "PORECDNG
FORM MMRECDNG *
FORM MMRECDNG.
PERFORM BDC_DYNPRO USING 'SAPLMGMM' '0060'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'RMMG1-MATNR'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'/00'.
PERFORM BDC_FIELD USING 'RMMG1-MATNR'
I_OUT-MATNR.
PERFORM BDC_DYNPRO USING 'SAPLMGMM' '0070'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(01)'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=ENTR'.
PERFORM BDC_FIELD USING 'MSICHTAUSW-KZSEL(01)'
'X'.
PERFORM BDC_TRANSACTION USING 'MM03'.
ENDFORM. "MMRECDNG
FORM SALESRECDNG *
FORM SALESRECDNG.
PERFORM BDC_DYNPRO USING 'SAPMV45A' '0102'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'VBAK-VBELN'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'/00'.
PERFORM BDC_FIELD USING 'VBAK-VBELN'
I_OUT-VBELN.
PERFORM BDC_TRANSACTION USING 'VA03'.
ENDFORM. "SALESRECDNG
FORM BDC_TRANSACTION *
FORM BDC_TRANSACTION USING TCODE.
CALL TRANSACTION TCODE USING BDCDATA MODE 'E'.
ENDFORM. "BDC_TRANSACTION
FORM BDC_DYNPRO *
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.
CLEAR BDCDATA.
BDCDATA-FNAM = FNAM.
BDCDATA-FVAL = FVAL.
APPEND BDCDATA.
ENDFORM. "BDC_FIELD
*& FORM PURCHASEDATA_VALIDATION *
FORM PURCHASEDATA_VALIDATION.
SELECT EBELN EBELP MATNR
FROM EKPO
INTO TABLE I_EKPO
FOR ALL ENTRIES IN I_MARC
WHERE MATNR = I_MARC-MATNR
AND EBELN IN S_EBELN
AND WERKS EQ P_WERKS.
IF I_EKPO[] IS INITIAL.
WRITE:/ 'NO MATCHING DATA AVAILABLE FROM TABLE EKPO'.
EXIT.
ENDIF.
DATA: T_EKPO LIKE I_EKPO OCCURS 0 WITH HEADER LINE.
T_EKPO] = I_EKPO[.
REFRESH I_EKPO.
FREE I_EKPO.
LOOP AT T_EKPO.
SELECT SINGLE EBELN FROM EKKO INTO EKPO-EBELN
WHERE EBELN = T_EKPO-EBELN.
IF SY-SUBRC = 0.
MOVE-CORRESPONDING T_EKPO TO I_EKPO.
APPEND I_EKPO.
CLEAR I_EKPO.
ELSE.
CONTINUE.
ENDIF.
ENDLOOP.
SORT I_EKPO.
ENDFORM. "PURCHASEDATA_VALIDATION
*& FORM SALESDATA_VALIDATION *
FORM SALESDATA_VALIDATION.
SELECT VBELN POSNR MATNR
FROM VBAP
INTO CORRESPONDING FIELDS OF TABLE
I_VBAP FOR ALL ENTRIES IN I_MARC
WHERE MATNR = I_MARC-MATNR.
IF I_VBAP[] IS INITIAL.
WRITE:/ 'NO MATCHING DATA AVAILABLE FROM TABLE VBAP'.
EXIT.
ENDIF.
DATA: T_VBAP LIKE I_VBAP OCCURS 0 WITH HEADER LINE.
T_VBAP] = I_VBAP[.
REFRESH I_VBAP.
FREE I_VBAP.
LOOP AT T_VBAP.
SELECT SINGLE VBELN FROM VBAK INTO VBAK-VBELN
WHERE VBELN = T_VBAP-VBELN.
IF SY-SUBRC = 0.
MOVE-CORRESPONDING T_VBAP TO I_VBAP.
APPEND I_VBAP.
CLEAR I_VBAP.
ELSE.
CONTINUE.
ENDIF.
ENDLOOP.
SORT I_VBAP.
ENDFORM. "SALESDATA_VALIDATION
https://forums.sdn.sap.com/click.jspa?searchID=4274284&messageID=1658915
Re: How to download a report into CSV file format?.
*reward for useful answers* -
Event Handler for Download to Excel Button
Hi Experts,
I have been trying to debug and find some clue about the Export to Spreadsheet Button present normally in a table view. My requirement is to modify the records before they are downloaded to an excel sheet.
Any quick clues will be highly appreciated.
Thanks
VishalHi, Vishal.
One more input regarding your question (may be it will be usefull) is that the service UIF_EXPORT_TAB (in tx. SICF) is responsible for this button. Its handler class CL_CHTMLB_CONFIG_TAB_EXCEL_EXP handles requests from this button. And also it works with template (method gDo) and actual data (method gDa) from the table. It calls mentioned GET_TABLE_COMPONENTS, GET_TEMPLATE_XML, GET_DATA_XML, GET_CSB methods from your table context node class. -
Wht are the function modules for download upload excel files in bdc.
hi all,
this question seems to be silly but i had open office excel files i am getting problems to upload or down loading. can you tell which function modules can upload or down load open office excel files.
another dought this is not need full but i need to get some of graphics which are in se78 .
how can we dowload them from sap.
thanq,
rajesh.kHi,
use : CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
REPORT YKC_XL_UPLOAD.
TYPE-POOLS TRUXS.
TABLES : ZMARA.
* Selection screen
PARAMETER P_FILE TYPE RLGRAP-FILENAME DEFAULT
'C:\Kris\TEST_UPLOAD.xls'.
TYPES: BEGIN OF T_TAB,
MATNR LIKE ZMARA-MATNR,
ERSDA LIKE ZMARA-ERSDA,
ERNAM LIKE ZMARA-ERNAM,
END OF T_TAB.
DATA : T_UPLOAD TYPE STANDARD TABLE OF T_TAB WITH HEADER LINE ,
WA_UPLOAD TYPE T_TAB,
IT_RAW TYPE TRUXS_T_TEXT_DATA. "work table internal table
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.
* Uploading the data in the file into internal table
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
TABLES
I_TAB_CONVERTED_DATA = T_UPLOAD[]
EXCEPTIONS
CONVERSION_FAILED = 1
OTHERS = 2.
IF SY-SUBRC NE 0.
MESSAGE ID SY-MSGID
TYPE SY-MSGTY
NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
END-OF-SELECTION.
* Uploading the data into the database table
LOOP AT T_UPLOAD INTO T_UPLOAD.
ZMARA-MATNR = T_UPLOAD-MATNR.
ZMARA-ERSDA = T_UPLOAD-ERSDA.
ZMARA-ERNAM = T_UPLOAD-ERNAM.
INSERT ZMARA.
Endloop.
Tks,
Krishna -
Customizing Excel File format for "Export to Excel" command
HI All,
we are developing a classic planning application using Hyperion 11.1.2.2
There is a option in Hyperion web through which user can Export data to Excel from Data from; via following procedure:
Open Data Form which you want to Export
Once data form go to Tool -> Export to Excel; this will open up an excel with with that dataform loaded in it.
I am wondering is there any way to customize that excel file ; like changing font color, font size etc in excel fileHi,
The one which you are going to get from the export would be a static file and you cant get POV as a drop down even to select , for color you can validations which will give you color based on some condition etc.
Thanks
Amith -
Page Formatting for downloaded pdf version
the document is not formatting the pages correctly - any suggestions how to control the page formatting?
Its been almost 3 years, has there been any update on this issue? We are experiencing the same issue. Our numerous customers are thinking about just using a different pdf reader that supports this standard. All workarounds we have encountered are hacks around the URL and are unacceptable for our customers.
Please respond, we would hate for Adobe to lose all of the users that our customers have. -
For Download to excel...
In my jsp i have set the response.setContentType... and when I launch that jsp page.. it doesn't ask me whether you want to Open or Save,,, what should i do for it..
Thanks
RameshI assume your doing something like:
response.setHeader("Content-Disposition","attachment;filename=Test.xls");
Right?
What browser are you using? I've only gotten this to work in IE, not Netscape. -
Hi all,
i am facing one problem in downloading...
in my report output the
netwr is showing output like: 123,345 i have used Currency while display i report...
but when i am passing the same internal table for download in excel it downloads like 12334.5.
plz suggest what should i do for this...
its urgent for me...
regards
parulHi,
I think you are facing problem for curriencies like JPY, KOR...
For JPY and KOR there will be no decimals.they should be display with out decimals.
If it is your currency......
In the output you are getting values without decimals is it ok for you or......
In the same way you want to download the same thing in Excel without decimals.
Here is the example code.... follow this you will get.
Use this while moving your values into Excel ITAB.
Instead of move use write ....in the loop.
write: sum_it-cwrbtr to excel_sum_it-cwrbtr currency
bkpf_it-waers.
write: sum_it-dwrbtr to excel_sum_it-dwrbtr currency
bkpf_it-waers.
append excel_sum_it.
Here sum_it is my internal table which i am moving the values into Excel_sum_it is my Excel download internal table.
while downloading refer the currency field to it.
Thanks.
If this solve your problem award points and close the thread.
Message was edited by: Deepak333 k -
Download to Excel not working in Transaction iview in Quality
Dear All,
I have a transaction iview in EP Quality Server which is transported from the development Server.This iview represents a transaction which displays some data (report output) and has an button for download to excel. The problem is that the ALV download functionality is working fine in the EP development Server's iview but I am not able to download from EP Quality though the output of the report is coming fine.
Awaiting for the reply.
Regards,
SamirHi,
Try it once in laptop instead of desktop.
May be the screen resolution or some thing is causing this,because I have encountered the issue previously.
Create new iview in quality and try.Do you activate the transaction in SICF if it is custom one.
Thanks and Regards,
gopal.sattiraju -
ALV Report Error while downloading to Excel
Hi All,
when i downloading to Excel from a alv grid following message has been displayed.
Template not found in BDS - Layout: Template-
Guid:
please give me any solution to download the report to excel
Thanks & Regards
Ramu GHi,
Standard Function code for Download to Excel Icon used '&VEXCEL'(Microsoft Excel) instead of '&XXL'(Spreadsheet...) it solved my problem.
Thanks & Regards
Ramu Ganji -
Hi,
I have to download data into excel .
Now this data is not predefined .. as in its picked up from custom table . If no of records selected from custom table is 6 then 6 columns in final_itab. If 10 records selcted then 10 columns .
Now I have managed to create two internal tables
1. itab1
this contains header texts
row column text
1 1 Name
1 2 Quantity
1 3 Price
2, itab2 contains - values
row column value
1 1 'ABC'
1 2 '33'
1 3 '34.56'
2 1 'CDF'
2 2 '66'
2 3 '234'
How do I make it into one internal table for download to excel.
If I think of the option of printing it as a report so that the user will save file as spread sheet .. this is also not possible as the text size for each is 70 and it will exceed the maximum permissible which is 1023.
Culd Anyoen suggest something in this regard please .Hi neelim,
first declare your internal table that will contains the headre of the colomn
DATA: BEGIN OF gt_header OCCURS 1,
ZONE(60) TYPE C,
END OF gt_header.
then the table that will contains the values.
DATA: BEGIN OF gt_val OCCURS 0,
matnr(18),
werks(4),
end of gt_val.
after updating your table with value and header text
call function:
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME = P_file
FILETYPE = 'DAT'
TABLES
DATA_TAB = gt_val
FIELDNAMES = gt_header
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_WRITE_ERROR = 2
INVALID_FILESIZE = 3
INVALID_TABLE_WIDTH = 4
INVALID_TYPE = 5
NO_BATCH = 6
UNKNOWN_ERROR = 7
OTHERS = 8.
it should works.
joseph -
Download To Excel in PL/SQL
Hi,
Through my PL/SQL code for Download To Excel functionality, If fetch record count is more than 2k then sometime I get below mentioned error:
ORA-22288: file or LOB operation FILEOPEN failed
No such file or directory ORA-06512: at "SYS.DBMS_LOB", line 805
ORA-06512: at "NCPCORE.NCP_BRANCH_CAMPUS_REC_PKG", line 1799
What could be the reason for the same?82MT wrote:
Hi,
Through my PL/SQL code for Download To Excel functionality, If fetch record count is more than 2k then sometime I get below mentioned error:
ORA-22288: file or LOB operation FILEOPEN failed
No such file or directory ORA-06512: at "SYS.DBMS_LOB", line 805
ORA-06512: at "NCPCORE.NCP_BRANCH_CAMPUS_REC_PKG", line 1799
What could be the reason for the same?
bug in the code
How do I ask a question on the forums?
https://forums.oracle.com/message/9362002#9362002 -
Best Way to Capture Streaming mp3 for Download and Burn?
Anyone have any suggestions on capturing streaming audio in mp3 format for download and burning to a CD-R disc for private listening away from the computer (Intel Duo2Core)?
What I want to capture is definately legal download but it only seems to want to download into Quicktime, and I can't figure how to get that into a format so I can import to iTunes and burn to a CD so I can listen in my car when I drive.If you save the quicktime audio as a self cotained .mov format, it can be imported into itunes. It can then be converted to an mp3 by using the "covert selection to mp3" under the advanced menu if needed.
Hope this helps
iMac G5 Mac OS X (10.4.8) 1 Gb RAM
iMac G5 Mac OS X (10.4.1)
iMac G5 Mac OS X (10.4.8)
Maybe you are looking for
-
Home Sharing Browsing Speed?
I regularly use Home Sharing on many of my Apple devices (Apple TVs, iPhones, iPads, etc.) to browse content stored on my iMac. The iTunes collection on my iMac is very large (terrabytes of movies and TV shows). Whenever I browse to it, via the Video
-
i want to get the wral-tv weather app on my iphone. i downloaded it from apple app store onto my laptop, but how do i get it on my phone. i don't have an app on my phone for downloading apps from my iphone, or i don't see it.
-
Hi, I have created an ALV with abap objects, and I am interested in sow or hide his buttons depending of other funcionality. Is this possible? How can i do it? Thanx!
-
Ending session when user closes window w/o logging out
Hi, I tried looking everywhere for a solution to this problem and was unable to do so. I'm running tomcat 4.0.5 on win2k and am trying to prevent multiple user logging capability, but the listeners that I implemented for the session can only detect t
-
HP Photosmart scanning on Mac 10.7.4 - Crashes Preview app
I have been using the scanner function on the Photosmart with my Mac for 2-3 years and suddenly I cannot scan more than one page. Preview crashes each time I try to scan multiple pages and sends off an error report. Why has this suddenly started happ