ALV Grid and Excel view
Hi,
I'm searching anywhere on this forum for a solution but up to now I did only partial progress.
I've already seen dozens of sap notes about this problem.
When I pressed "view in Microsoft Excel" (code &VEXCEL) on an ALV grid list, a popup appeared noticing that no template was found. Looking around on this forum I managed to discover how to load these templates from local (BC_ALVEXCEL_SAP_TEMPL, BCALV_BDS_MAINTENANCE) or from client 000 (BCALV_BDS_IMPORT_SAP_TEMPLATE).
Anyway, I managed to restore the templates on the system, but excel view still doesn't work:
wheh I press the button now I only see a blank screen in place of the excel; if excel was already open (not in sap), then an excel view is actually shown, but the sheet is empty, no data in it.
Any hints?
thank you
Hi,
Just open Excel, then Goto Menu -> Tools -> Options -> Security Tab -> Macro Security ->Set Medium and in Trusted publisher tab select the checkbox Trust Access to Visual Basic Project Now Press Ok.
This will solve your problem.
Regards
Karthik D
Similar Messages
-
Alv Grid to Excel Sheet Downloading problem for Bank account Number(CHAR18)
Hi every one,
I am downloading Alv grid to excel using local file---> spreadsheet
but, the bank account no is populating as like ''11+E213". When press F2 in that column then only its showing the correct value.
If i do download directly from ctrlshiftF7 , its down loading perfectly but my user Needs the Header of the ALV also, Buecause HEader Consists of Payment Date and all details.
I have checked the same from the Satandard table also its also populating in the same way as in the report,
So if any body have valueble suggestions, Please reply soon,
Thanks & Regards,
Raj SHi Lalit,
Thanks for Ur promt reply,
I ahve alraedy Changed the lenght to 25 but it doesnot effect,
But when i concatenate the same number with any one character in front of the A/C No. Its generating perfectly,
But i cant do so as its an account No.
Thanks,
Raj S -
Facing a Problem while downloading the data from ALV Grid to Excel Sheet
Hi Friends,
Iam facing a problem while downloading the data from ALV Grid to excel sheet. This is working fine in Development server , when comes to Quality and Production servers I have this trouble.
I have nearly 11 fields in ALV Grid and out of which one is PO number of length 10 , all the ten numbers are visible in the excel sheet if we download it from development server but when we download it from Quality or Production it is showing only 9 numbers.
Can any one help me out in this case.hi...
if this problems happens dont display the same internal as u finally got.
just create new internal table without calling any standard data elements and domains... but the new internal table s similar like ur final internal table and move all the values to new int table.
for eg.
ur final internal int table for disp,
data : begin of itab occur 0,
matnr like mara-matnr,
end of itab.
create new like this,
data : begin of itab occur 0,
matnr(12) type N,
end of itab. -
Total problem in Exporting ALV GRID to Excel
Hi all,
I have manipulated the Total of ALV Grid by using GET_SUBTOTALS and REFRESH method of CL_GUI_ALV_GRID. The ALV Output is also correct. When i export to Excel,only the Original total is displaying not the calculated one. How to download the exact output which is displaying in the ALV Grid to Excel.
Please help me out to solve this.
Thanks,
RameshDEAR,
AS U WANT UPLOAD WITH THE SUB TOTAL YOU TRY THIS.
FIRST to get subtotal in ALV output you select at least one column of total and then press ctrl + F6 . u will see the sub total .
and now how to download it so press ctrl + shift + F9 .
now screen appears and select second option ie spreadsheet and press enter
now a screen appear in wich u have to give file name.
so double click on search button of file name . click on desktop give ur file name as u want suppose zreport u have given.
and save type = excel file.
now save it and then generate it your output bytes will be transmitted .
now u can see in your desktop in your file name . ur output with subtotal.
regards
navin -
ALV grid to excel (.XLS) format issue
im trying to export an ALV grid to excel file using FM 'GUI_DOWNLOAD'.
the output is located at the link below:
http://img393.imageshack.us/my.php?image=excelproblemjt4.jpg
some how the fields arent inside the individual boxes..
can anyone provide me with the solution? thanks
below are the codes of how i implement the 'GUI DOWNLOAD' FM
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
filename = lv_file " C:\filename.xls
write_field_separator = 'X'
IMPORTING
filelength = lv_size
TABLES
data_tab = ltt_dataREPORT test0012 .
INCLUDE test_top.
INCLUDE test_f01.
INCLUDE test_alv.
START OF SELECTION
START-OF-SELECTION.
PERFORM get_data.
PERFORM process_data.
END-OF-SELECTION.
IF tt_output IS NOT INITIAL.
PERFORM prepare_excel_data.
Download CSV file to local
IF c_loc = 'X'.
PERFORM convert_to_xls.
PERFORM download_local.
ENDIF.
ELSE.
Show Message when no records selected
MESSAGE I016 WITH TEXT-005.
ENDIF.
PERFORM f_alv_disp.
*& Include test_TOP *
TABLES: vbrk, vbrp, vbak, vbap, kna1.
DATA: total_value TYPE p DECIMALS 2 LENGTH 15.
DATA: total TYPE c LENGTH 5 VALUE 'total'.
TYPE-POOLS
TYPE-POOLS: slis, truxs.
-ALV----
DATA:
wa_alv_layout TYPE slis_layout_alv,
tt_alv_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
tt_alv_sort TYPE slis_t_sortinfo_alv WITH HEADER LINE,
tt_alv_events TYPE slis_t_event WITH HEADER LINE,
wa_sort TYPE slis_sortinfo_alv,
tt_sort TYPE slis_t_sortinfo_alv,
v_pagno TYPE sy-pagno,
s_keyinfo TYPE slis_keyinfo_alv.
TYPES
TYPES: BEGIN OF vbrk,
vbeln TYPE vbrk-vbeln,
fkdat TYPE vbrk-fkdat,
vkorg TYPE vbrk-vkorg,
vtweg TYPE vbrk-vtweg,
spart TYPE vbrk-spart,
kunag TYPE vbrk-kunag,
END OF vbrk,
BEGIN OF vbrp,
vbeln TYPE vbrp-vbeln,
aubel TYPE vbrp-aubel,
vgbel TYPE vbrp-vgbel,
aupos TYPE vbrp-aupos,
END OF vbrp,
BEGIN OF vbak,
vbeln TYPE vbak-vbeln,
auart TYPE vbak-auart,
bstnk TYPE vbak-bstnk,
END OF vbak,
BEGIN OF vbap,
vbeln TYPE vbap-vbeln,
posnr TYPE vbap-posnr,
netwr TYPE vbap-netwr,
mwsbp TYPE vbap-mwsbp,
END OF vbap,
BEGIN OF kna1,
kunnr TYPE kna1-kunnr,
name1 TYPE kna1-name1,
END OF kna1,
BEGIN OF output,
fkdat TYPE vbrk-fkdat,
vkorg TYPE vbrk-vkorg,
vtweg TYPE vbrk-vtweg,
spart TYPE vbrk-spart,
kunag TYPE vbrk-kunag,
name1 TYPE kna1-name1,
auart TYPE vbak-auart,
bstnk TYPE vbak-bstnk,
aubel TYPE vbrp-aubel,
vgbel TYPE vbrp-vgbel,
total LIKE total_value,
END OF output.
Type for download to excel use.
TYPES: BEGIN OF ty_excel,
col1(20), sp01,
col2(25), sp02,
col3(23), sp03,
col4(14), sp04,
col5(15), sp05,
col6(23), sp06,
col7(13), sp07,
col8(25), sp08,
col9(20), sp09,
col10(30), sp10,
col11(13),
END OF ty_excel.
DATA: wa_vbrk TYPE vbrk,
wa_vbrp TYPE vbrp,
wa_vbak TYPE vbak,
wa_vbap TYPE vbap,
wa_kna1 TYPE kna1,
wa_output TYPE output,
tt_vbrk TYPE STANDARD TABLE OF vbrk,
tt_vbrp TYPE STANDARD TABLE OF vbrp,
tt_vbak TYPE STANDARD TABLE OF vbak,
tt_vbap TYPE STANDARD TABLE OF vbap,
tt_kna1 TYPE STANDARD TABLE OF kna1,
tt_output TYPE STANDARD TABLE OF output.
Table for download to excel use.
DATA: tt_excel TYPE STANDARD TABLE OF ty_excel,
wa_excel LIKE LINE OF tt_excel,
tt_excel_output TYPE truxs_t_text_data.
wa_excel type ty_excel.
Data Declaration for CSV file use
CONSTANTS : c_comma TYPE c VALUE ','.
Selection-Screen
SELECTION-SCREEN BEGIN OF BLOCK b01 WITH FRAME TITLE text-b01.
SELECT-OPTIONS: s_fkdat FOR vbrk-fkdat OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b01.
SELECTION-SCREEN BEGIN OF BLOCK b02 WITH FRAME TITLE text-b02.
PARAMETERS: p_vkorg TYPE vbrk-vkorg OBLIGATORY.
SELECT-OPTIONS: s_vtweg FOR vbrk-vtweg,
s_spart FOR vbrk-spart.
SELECTION-SCREEN END OF BLOCK b02.
SELECTION-SCREEN BEGIN OF BLOCK b03 WITH FRAME TITLE text-b03.
SELECT-OPTIONS: s_kunag FOR vbrk-kunag.
SELECTION-SCREEN END OF BLOCK b03.
SELECTION-SCREEN BEGIN OF BLOCK b04 WITH FRAME TITLE text-b04.
PARAMETERS: c_loc AS CHECKBOX,
p_file LIKE rlgrap-filename DEFAULT 'C:\filename.txt'.
SELECTION-SCREEN END OF BLOCK b04.
*& Include test_F01 *
FORM get_data
FORM get_data.
DATA: lt_vbrk TYPE STANDARD TABLE OF vbrk,
lt_vbrp TYPE STANDARD TABLE OF vbrp.
SELECT vbeln fkdat vkorg vtweg spart kunag
FROM vbrk
INTO TABLE tt_vbrk
WHERE fkdat IN s_fkdat
AND vkorg = p_vkorg
AND vtweg IN s_vtweg
AND spart IN s_spart
AND kunag IN s_kunag.
lt_vbrk[] = tt_vbrk[].
SORT lt_vbrk BY vbeln.
IF lt_vbrk[] IS NOT INITIAL.
SELECT vbeln aubel vgbel aupos
FROM vbrp
INTO TABLE tt_vbrp
FOR ALL ENTRIES IN lt_vbrk
WHERE vbeln = lt_vbrk-vbeln.
ENDIF.
lt_vbrp[] = tt_vbrp[].
SORT lt_vbrp BY aubel.
IF lt_vbrp[] IS NOT INITIAL.
SELECT vbeln auart bstnk
FROM vbak
INTO TABLE tt_vbak
FOR ALL ENTRIES IN lt_vbrp
WHERE vbeln = lt_vbrp-aubel.
ENDIF.
lt_vbrp[] = tt_vbrp[].
SORT lt_vbrp BY aubel aupos.
IF lt_vbrp[] IS NOT INITIAL.
SELECT vbeln posnr netwr mwsbp
FROM vbap
INTO TABLE tt_vbap
FOR ALL ENTRIES IN lt_vbrp
WHERE vbeln = lt_vbrp-aubel
AND posnr = lt_vbrp-aupos.
ENDIF.
lt_vbrk[] = tt_vbrk[].
SORT lt_vbrk BY kunag.
IF lt_vbrk[] IS NOT INITIAL.
SELECT kunnr name1
FROM kna1
INTO TABLE tt_kna1
FOR ALL ENTRIES IN lt_vbrk
WHERE kunnr = lt_vbrk-kunag.
ENDIF.
ENDFORM. "get_data
*& Form process_data
FORM process_data.
LOOP AT tt_vbrk INTO wa_vbrk.
wa_output-fkdat = wa_vbrk-fkdat.
wa_output-vkorg = wa_vbrk-vkorg.
wa_output-vtweg = wa_vbrk-vtweg.
wa_output-spart = wa_vbrk-spart.
wa_output-kunag = wa_vbrk-kunag.
read table tt_vbrp into wa_vbrp with key vbeln = wa_vbrk-vbeln.
if sy-subrc = 0.
wa_output-aubel = wa_vbrp-aubel.
wa_output-vgbel = wa_vbrp-vgbel.
endif.
READ TABLE tt_kna1 INTO wa_kna1 WITH KEY kunnr = wa_vbrk-kunag BINARY SEARCH.
IF sy-subrc = 0.
wa_output-name1 = wa_kna1-name1.
ENDIF.
LOOP AT tt_vbrp INTO wa_vbrp WHERE vbeln = wa_vbrk-vbeln.
wa_output-aubel = wa_vbrp-aubel.
wa_output-vgbel = wa_vbrp-vgbel.
READ TABLE tt_vbak INTO wa_vbak WITH KEY vbeln = wa_vbrp-aubel BINARY SEARCH.
IF sy-subrc = 0.
wa_output-auart = wa_vbak-auart.
wa_output-bstnk = wa_vbak-bstnk.
ENDIF.
READ TABLE tt_vbap INTO wa_vbap WITH KEY vbeln = wa_vbrp-aubel
posnr = wa_vbrp-aupos BINARY SEARCH.
wa_output-total = wa_vbap-netwr + wa_vbap-mwsbp.
APPEND wa_output TO tt_output.
ENDLOOP. "endloop tt_vbrp
wa_output-total = wa_vbap-netwr + wa_vbap-mwsbp.
append wa_output to tt_output.
CLEAR wa_output.
ENDLOOP. "endloop vbrk
ENDFORM. "process_data
*& Form APPEND_EXCEL
FORM append_excel .
wa_excel-sp01 = wa_excel-sp02 = wa_excel-sp03 =
wa_excel-sp04 = wa_excel-sp05 = wa_excel-sp06 =
wa_excel-sp07 = wa_excel-sp08 = wa_excel-sp09 =
wa_excel-sp10.
APPEND wa_excel TO tt_excel. CLEAR wa_excel.
ENDFORM. " APPEND_EXCEL
*& Form PREPARE_EXCEL_DATA
FORM prepare_excel_data .
List's Header for excel file
WRITE 'Billing Date' TO wa_excel-col1.
WRITE 'Sales Organization' TO wa_excel-col2.
WRITE 'Distribution Channel' TO wa_excel-col3.
WRITE 'Division' TO wa_excel-col4.
WRITE 'Sold-to Party' TO wa_excel-col5.
WRITE 'Name of Sold-to Party' TO wa_excel-col6.
WRITE 'Order Type' TO wa_excel-col7.
WRITE 'Customer PO Number' TO wa_excel-col8.
WRITE 'Sales Order Number' TO wa_excel-col9.
WRITE 'Delivery Order Number' TO wa_excel-col10.
WRITE 'Total Value' TO wa_excel-col11.
PERFORM append_excel.
Item data for excel file.
LOOP AT tt_output INTO wa_output.
WRITE wa_output-fkdat TO wa_excel-col1.
WRITE wa_output-vkorg TO wa_excel-col2.
WRITE wa_output-vtweg TO wa_excel-col3.
WRITE wa_output-spart TO wa_excel-col4.
WRITE wa_output-kunag TO wa_excel-col5.
WRITE wa_output-name1 TO wa_excel-col6.
WRITE wa_output-auart TO wa_excel-col7.
WRITE wa_output-bstnk TO wa_excel-col8.
WRITE wa_output-aubel TO wa_excel-col9.
WRITE wa_output-vgbel TO wa_excel-col10.
WRITE wa_output-total TO wa_excel-col11.
PERFORM append_excel.
ENDLOOP.
List's Header for excel file
CONCATENATE '"' 'Billing Date' '"' INTO WA_EXCEL-COL1.
CONCATENATE '"' 'Sales Organization' '"' INTO WA_EXCEL-COL2.
CONCATENATE '"' 'Distribution Channel' '"' INTO WA_EXCEL-COL3.
CONCATENATE '"' 'Division' '"' INTO WA_EXCEL-COL4.
CONCATENATE '"' 'Sold-to Party' '"' INTO WA_EXCEL-COL5.
CONCATENATE '"' 'Name of Sold-to Party' '"' INTO WA_EXCEL-COL6.
CONCATENATE '"' 'Order Type' '"' INTO WA_EXCEL-COL7.
CONCATENATE '"' 'Customer PO Number' '"' INTO WA_EXCEL-COL8.
CONCATENATE '"' 'Sales Order Number' '"' INTO WA_EXCEL-COL9.
CONCATENATE '"' 'Delivery Order Number' '"' INTO WA_EXCEL-COL10.
CONCATENATE '"' 'Total Value' '"' INTO WA_EXCEL-COL11.
PERFORM APPEND_EXCEL.
Item data for excel file.
LOOP AT TT_output INTO WA_output.
CONCATENATE '"' WA_OUTPUT-FKDAT '"' INTO WA_EXCEL-COL1.
CONCATENATE '"' WA_OUTPUT-VKORG '"' INTO WA_EXCEL-COL2.
CONCATENATE '"' WA_OUTPUT-VTWEG '"' INTO WA_EXCEL-COL3.
CONCATENATE '"' WA_OUTPUT-SPART '"' INTO WA_EXCEL-COL4.
CONCATENATE '"' WA_OUTPUT-KUNAG '"' INTO WA_EXCEL-COL5.
CONCATENATE '"' WA_OUTPUT-NAME1 '"' INTO WA_EXCEL-COL6.
CONCATENATE '"' WA_OUTPUT-AUART '"' INTO WA_EXCEL-COL7.
CONCATENATE '"' WA_OUTPUT-BSTNK '"' INTO WA_EXCEL-COL8.
CONCATENATE '"' WA_OUTPUT-AUBEL '"' INTO WA_EXCEL-COL9.
CONCATENATE '"' WA_OUTPUT-VGBEL '"' INTO WA_EXCEL-COL10.
CONCATENATE '"' total '"' INTO WA_EXCEL-COL11.
PERFORM APPEND_EXCEL.
ENDLOOP.
ENDFORM. " PREPARE_EXCEL_DATA
*& Form Convert_to_xls
*form Convert_to_xls.
LOOP AT TT_EXCEL INTO WA_EXCEL.
MOVE WA_EXCEL TO LTT_DATA-TEXT.
APPEND LTT_DATA. CLEAR LTT_DATA.
ENDLOOP.
LV_FILE = P_FILE.
CALL FUNCTION 'SAP_CONVERT_TO_XLS_FORMAT'
EXPORTING
I_FIELD_SEPERATOR = ';'
I_LINE_HEADER =
i_filename = lv_file
I_APPL_KEEP = ' '
tables
i_tab_sap_data = LTT_DATA
CHANGING
I_TAB_CONVERTED_DATA = tt_excel_output
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.
*& Form DOWNLOAD_LOCAL
FORM download_local .
TYPES:
BEGIN OF lty_data,
text(800),
END OF lty_data.
DATA:
lv_file TYPE string,
lv_size TYPE i,
lv_msg TYPE bapi_msg,
ltt_data TYPE STANDARD TABLE OF lty_data WITH HEADER LINE.
LOOP AT tt_excel INTO wa_excel.
MOVE wa_excel TO ltt_data-text.
APPEND ltt_data. CLEAR ltt_data.
ENDLOOP.
lv_file = p_file.
CONCATENATE LV_FILE 'file.csv' INTO LV_FILE.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
filename = lv_file
write_field_separator = 'X'
FILETYPE = 'ASC'
IMPORTING
filelength = lv_size
TABLES
data_tab = ltt_data
EXCEPTIONS
OTHERS = 1.
IF sy-subrc EQ 0.
"File &1 downloaded successfully - &2 bytes transferred
MESSAGE e419(3e) WITH lv_file lv_size INTO lv_msg. "#EC *
ELSE.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 INTO lv_msg.
ENDIF.
WRITE LV_MSG.
ENDFORM. " DOWNLOAD_LOCAL
*ENDIF.
*& Include test_ALV *
FORM build_layout .
wa_alv_layout-zebra = 'X'.
wa_alv_layout-colwidth_optimize = 'X'.
wa_alv_layout-window_titlebar = sy-title.
ENDFORM. " build_layout
*& Form f_build_event
text
--> p1 text
<-- p2 text
FORM f_build_event .
REFRESH tt_alv_events.
tt_alv_events-name = slis_ev_top_of_page.
tt_alv_events-form = slis_ev_top_of_page.
APPEND tt_alv_events.
CLEAR tt_alv_events.
tt_alv_events-name = slis_ev_top_of_list.
tt_alv_events-form = slis_ev_top_of_list.
APPEND tt_alv_events.
CLEAR tt_alv_events.
ENDFORM. " f_build_event
*& Form f_alv_disp
text
--> p1 text
<-- p2 text
FORM f_alv_disp.
DATA lv_repid TYPE sy-repid.
REFRESH: tt_alv_fieldcat, tt_alv_events.
PERFORM build_layout.
PERFORM f_build_event.
lv_repid = sy-repid.
PERFORM f_build_fieldcat_summary.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = lv_repid
is_layout = wa_alv_layout
it_fieldcat = tt_alv_fieldcat[]
I_GRID_TITLE = 'Billing Due List Report'
it_sort = tt_sort
i_save = 'A'
it_events = tt_alv_events[]
TABLES
t_outtab = tt_output
EXCEPTIONS
program_error = 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. " f_alv_disp
*& Form f_build_fieldcat_SUMMARY
text
--> p1 text
<-- p2 text
FORM f_build_fieldcat_summary .
do_sum no_out outputlen
PERFORM f_fieldcat USING:
'tt_output' 'FKDAT' text-c01 ' ' ' ' '10' ,
'tt_output' 'VKORG' text-c02 ' ' ' ' '10',
'tt_output' 'VTWEG' text-c03 ' ' ' ' '10' ,
'tt_output' 'SPART' text-c04 ' ' ' ' '10' ,
'tt_output' 'KUNAG' text-c05 ' ' ' ' '10' ,
'tt_output' 'NAME1' text-c06 ' ' ' ' '10' ,
'tt_output' 'AUART' text-c07 ' ' ' ' '10' ,
'tt_output' 'BSTNK' text-c08 ' ' ' ' '10' ,
'tt_output' 'AUBEL' text-c09 ' ' ' ' '10' ,
'tt_output' 'VGBEL' text-c10 ' ' ' ' '10' ,
'tt_output' 'TOTAL' text-c11 ' ' ' ' '15' .
ENDFORM. "
*& Form f_fieldcat
FORM f_fieldcat USING pv_a TYPE any
pv_b TYPE any
pv_c TYPE any
pv_d TYPE any
pv_e TYPE any
pv_f TYPE any.
tt_alv_fieldcat-tabname = pv_a.
tt_alv_fieldcat-fieldname = pv_b.
tt_alv_fieldcat-reptext_ddic = pv_c.
tt_alv_fieldcat-do_sum = pv_d.
tt_alv_fieldcat-no_out = pv_e.
tt_alv_fieldcat-outputlen = pv_f.
APPEND tt_alv_fieldcat.
CLEAR tt_alv_fieldcat.
ENDFORM. " f_fieldcat -
Report with two ALV grids and a header
Hi experts,
I have a report with two ALV grids in the same screen, each one in a separated container. The information displays it correctly. The report has been implemented by using OO Programming.
My real trouble is in the header. It must have a logo, a title with a specific font and other information.
I'll attach a capture of my need:
[Report with two ALV grids and a header|http://picasaweb.google.com/lh/photo/AcQD49QPmm-0L_jL2iMedA?feat=directlink]
Then, I want to set up the header you can see, with logo, a font with specific features. Obviously, the header you see has taken from another report. But is the same idea.
I've tried with a third container, using the CL_GUI_CONTAINER and CL_GUI_CONTAINER classes, but it doesn't work.
Any idea? Would welcome any help you can provide.
Thanks in advance,
Jorge RojasHi, Jorge.
Should the header be a"attached" to any of the ALV? Or it should be carried alone?
If first applies, you've given the solution yourself: put the info & logo in first ALV's header and invoke it from the proper method.
You could use CL_GUI_DOCKING_CONTAINER CLASS to divide screen in several containers and then, in the upper one, I would create another one docking container to divide the screen into two: the written info could be performed with an HTML viewer class and the logo with a CL_GUI_PICTURE element.
Cheers. -
HI all,
Diff between ALV GRID and ALV LIST?
sachin.Hi,
ckeck these differences.
first one is for list display and second one is for grid display.
For all practical purposes, they are the same.
2. Some differences:
a) from abap coding point of view,
alv list is done with Function modules,
alv gris can also be done with FM,
but can also be done using OO concepts.
b) Alv grid (using oo concept) requires
designing the screen layout .
Hence, in one screen, we can show more
then one alv grid
(we cannot show more than
one alv list on one screen)
c) ALV grid uses ActiveX controls
present on the Presentation Server.
Hence, it consumes More Memory
on the presentation server.
d) ALV LIST is Display Only.
Whereas
ALV Grid Can Be made EDITABLE for entry purpose.
e) In alv grid, these options are possible,
but not in alv list.
without horizontal lines
without vertical lines
without cell merging during sorts
display total lines above the entries
ALV LIST Can be coded using only FMs
ALV GRID Can be coded using FMs and object oriented concepts
ALV LIST Can be displayed hieraicharlly
ALV GRID cannot be displayed hierarichally.
reward points if hlpful. -
ALV Grid and return to selection screen
Hello
I have an ALV Grid and when I push a buttom that I program appears another ALV Grid. In this second ALV I try to program different buttoms. When I program the BACK buttom I want to go to selection screen.
I try with CALL SELECTION SCREEN but when I stay in selection screen and push the execute buttom the ALV that I see is the second, not the first. It seems that we don't catch the news selections.
I put rs_selfied-refresh = 'X' after the CALL SELECTION SCREEN but is wrong again.
What can I do????Hello Silvia
There is a simple trick to return from the second ALV list directly back to the selection screen:
*& Report ZUS_SDN_REUSE_ALV_GRID_DISPLAY
REPORT zus_sdn_reuse_alv_grid_display.
TYPE-POOLS: slis.
DATA:
gt_t001 TYPE STANDARD TABLE OF t001,
gt_knb1 TYPE STANDARD TABLE OF knb1.
DATA:
gs_fcat TYPE slis_fieldcat_alv,
gt_fcat_t001 TYPE slis_t_fieldcat_alv,
gt_fcat_knb1 TYPE slis_t_fieldcat_alv.
PARAMETERS:
p_bukrs TYPE bukrs DEFAULT '1000'.
START-OF-SELECTION.
SELECT * FROM t001 INTO TABLE gt_t001.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
* I_PROGRAM_NAME =
* I_INTERNAL_TABNAME =
i_structure_name = 'T001'
* I_CLIENT_NEVER_DISPLAY = 'X'
* I_INCLNAME =
* I_BYPASSING_BUFFER =
* I_BUFFER_ACTIVE =
CHANGING
ct_fieldcat = gt_fcat_t001
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
* I_BUFFER_ACTIVE = ' '
i_callback_program = syst-cprog
i_callback_pf_status_set = 'ALV_SET_PF_STATUS'
i_callback_user_command = 'ALV_USER_COMMAND'
* I_CALLBACK_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME = ' '
* I_BACKGROUND_ID = ' '
* I_GRID_TITLE =
* I_GRID_SETTINGS =
* IS_LAYOUT =
it_fieldcat = gt_fcat_t001
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = gt_t001
* EXCEPTIONS
* PROGRAM_ERROR = 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.
END-OF-SELECTION.
*& Form set_pf_status
* text
* -->RT_EXTAB text
FORM alv_set_pf_status USING rt_extab TYPE slis_t_extab.
* NOTE: identical to STANDARD_FULLSCREEN with additional button
* for detail list ('DETAILLIST')
SET PF-STATUS 'STANDARD_FULLSCREEN'.
ENDFORM. "set_pf_status
*& Form alv_user_command
* text
* -->R_UCOMM text
* -->RS_SELFIELDtext
FORM alv_user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield.
CASE r_ucomm.
* Display detail list: all customers for selected company code
WHEN 'DETAILLIST'.
IF ( rs_selfield-fieldname = 'BUKRS' ).
SELECT * FROM knb1 INTO TABLE gt_knb1
WHERE bukrs = rs_selfield-value.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
* I_BUFFER_ACTIVE = ' '
i_callback_program = syst-cprog
i_callback_pf_status_set = 'ALV_SET_PF_STATUS'
i_callback_user_command = 'ALV_USER_COMMAND'
* I_CALLBACK_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
i_structure_name = 'KNB1'
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = gt_knb1
EXCEPTIONS
program_error = 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.
<b>* NOTE: when the program logic returns from the 2nd ALV list
* and exit = 'X' then the program leaves the
* 1st ALV list, too, and returns to the selection screen.</b>
rs_selfield-exit = 'X'.
ENDIF.
WHEN OTHERS.
ENDCASE.
ENDFORM. "alv_user_command
Regards
Uwe -
Hello, I have a report with an selection screen with a few input parameters. This results in an alv grid being displayed. The users downloads the alv grid to excel. This works fine.
I'd like to include the input parameters as the top row in the downloaded excel, on top of the result set. Is this possible? How do you do it?
Best regards /OttoThis data would have to be included in the ALV grid itself(assuming that you are using the standard excel functionality embedded into the ALV grid).
There are others ways to get around this. You could add a new button to the applicatoin toolbar, where then you would handle the building of the excel file in your custom code.
REgards,
Rich Heilman -
ALV GRID and Integrated ITS 7 (SAP GUI for HTML) - dissapears on reload
Hi All,
We have a custom report that uses an ALV grid to display information to the user. Within this grid, there are fields that are display only and fields that are editable. Also, the grid is wider than the screen's width. It works fine in ECC. It also worked fine when we were using ITS 6.4.
We have recently upgraded to ITS 7. Now when we run the report using a Transaction iView (in EP 7) or the Webgui service (SAP GUI for HTML), if a field that is editable has focus when an event is triggered that reloads the grid, the screen becomes blank. So, you can click the Save button and the screen goes blank, also, there are date fields in the grid and if you choose a new date, the grid reloads and the screen becomes blank.
We have found that when the screen is blank, you can use the "Page Up" button on your keyboard and the last few columns of the grid will appear. As if the entire grid has moved off-screen to the left.
If you click onto a non-editable field and refresh or save, the grid returns to its normal state.
We are on Basis Patch level 15.
Does anyone have any ideas on how to fix this?
Also, does anyone know of a standard SAP transaction we can call from the Webgui that would have a similar setup...with an ALV grid containing editable and non-editable fields? We would like to rule out any errors in the report itself. Since it worked before we upgraded and it works fine in ECC. This would be a really big help too.
Thank you so much!
-KevinHi,
Thanks Raymond, I have seen Note 314568. I could not get the second link to work but I have looked at just about every Note in reference to Integrated ITS 7 and Tables or ALV Grids and there are very many, so it would appear that SAP has had a hard time with implementing this control, but I have not seen any instance that matches the problem we are having.
Unfortunately, SAP will not investigate this unless we can provide a standard Transaction that exhibits the same behavior.
If anyone knows of a standard SAP Transaction that displays an ALV Grid that is wider than the screen (requiring a horizontal scroll bar) and with editable and non-editable fields, that would be fantastic. If we can test against that, then we would know for sure if this is a problem with ITS / SAP GUI for HTML, or if there is an issue with this specific report.
Thanks!
-Kevin -
Help me in alv grid and form printing
hi experts,
my requirement is
i have a check box in the selection screen for batch processing.
if i tick the check box, the data which is in the t_output table should be displayed in alv grid and
in turn if i select one row in alv o/p and double click on it the entire data shold be displayed in the form.
if 2 rows are selected in alv and double clicked on it then data in the two rows is dispalyed in the form.
points are rewarded .
thanks in advance.Hi,
Check the following link:
http://sapdev.co.uk/reporting/alv/alvgrid_rowsel.htm
Regards,
bhaskar -
ALV REPORT: read selected checkbox in alv grid and process the pushbutton
my requirement is to check some rows from alv grid and the press the pushbutton. Thereby following things should process:
select all checked rows into an itab and call the transaction code CJ01 for all
entries......
I am finding the problem that when I select the checkbox....the internal table doesnt recognize the boxes as checked ones......
thanks in advance...
Kartikey Singh,Data: ref1 type ref to cl_gui_alv_grid.
CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
IMPORTING
E_GRID = ref1.
call method ref1->check_changed_data.
loop at t_output where Flag = 'X'.
if t_output-VKUEGRU is initial.
message e000 with text-110.
endif.
endloop. -
ALV-Grid and update dynpro fields
Hi!
I've created a dynpro with an ALV-Grid for Data-Overview and fields on the dynpro to change additional data.
My ALV has one editable column, when this value change I calculate other value for a field dynrpo, but I canu2019t see this change in my field dynpro.
How can I update my data filed dynpro when changing the selected row at the ALV.
I use the method handle_data_changed to obtain changes in ALV-Grid and it works fine, but I canu2019t update my fileds on the dynpro, when changing value in ALV.
Thanks for any hints!
Lili.This error occurs becuase when you change anything on the ALV, control is not triggering the PAI and PBO of your dynpro. Hence your values are not getting updated in the dynpro field.
You should call the CL_GUI_CFW=>DISPATCH in PAI module to trigger the PAI also after the event has been triggered in the ALV.
CALL METHOD CL_GUI_CFW=>DISPATCH
importing return_code = return_code.
* a control event occured => exit PAI
if return_code <> cl_gui_cfw=>rc_noevent.
clear g_ok_code.
exit.
endif.
Regards,
Naimesh Patel -
ALV Grid and ALV List difference?
Hello,
Can you help me differentiate ALV List and ALV grid and the low-level definition or context of each?
Also, can you give me a transaction code that outputs an ALV list as well as a tcode for ALV grid?
Thanks,
JennahHi Kirtish,
Thanks but I havent done any function module stuff as I am not an ABAPer but anyway can you guide me through thios?
"I hope this might slove your query. For more please refer to documentation on ALV and also implement the ALV LIST and GRID reports. By using class Class CL_GUI_ALV_GRID, Function module REUSE_ALV_LIST_DISPLAY , REUSE_ALV_GRID_DISPLAY and some more functions like that only."
I will give you some tcode can you please try tcode FBL1n? then execute the report. What is the output is it an ALV list?
I wish to see an ALV list also an ALV grid to see difference.
Tjhakns,
Jennah -
ALV Grid and Icon : Printing Problem
Hi, i develop some reports using ALV Grid and Icon and i'm facing printing problem, all report that using ALV grid with the option icon = 'X' cannot print properly, all the character field showing improper icon instead of the text. While all the ALV grid report with the option icon = ' ' can print normally.
Thanks.Hi,
Check the Demo Program <b>BCALV_DEMO_TOOLTIP</b>, Here i am able to see the Output Properly, and also able to Print them.
Regards
vijay
Maybe you are looking for
-
How to add a disc drive so i can burn cds
itunes doesnt show i have a disc drive to burn my discs how can i change this
-
Where is Adobe Media Encoder?
I have a Creative Cloud subscription but I can't see Adobe Media Encoder in the list of available apps. What am I missing?
-
TDS annual returns in version 6.0 is drawn through j1inqefile. all th edata is not picking up in report. please suggest me any clue or SAP note for this.
-
The following fields of segment E1FIKPF of IDoc FIDCCP01 is not present in BKPF table AWREF AWORG BUKRS_SND KURS2_M XBLNR_LONG Wht are these fields represents exactly...how should I map these fields
-
All of my "Your Music" information is gone
I use Spotify on my phone. Yesterday I had to do a hard reset on my phone. When I redownloaded Spotify and logged in I found that all of my Songs and followed Playlists were missing. I didn't think wiping my phone would wipe my spotify information...