2009 Sep 25 7:17 AM
hello, i need to print data on alv by sending it to transaction SP02! Anyone can guide me with the pseudo code below?
CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING
destination = printer
list_text = Daily Stock Report
mode = X
no_dialog = X
user = sy-uname
IMPORTING
out_parameters = printer_params
EXCEPTIONS
archive_info_not_found = 1
invalid_print_params = 2
invalid_archive_params = 3
OTHERS = 4.
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 the following FM to get the printing parameters:
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program = Report-id
is_layout = layout
it_fieldcat = GT_FIELDCAT
i_default = X
i_save = A
is_print = printer_params
i_suppress_empty_data = abap_false
TABLES
t_outtab = GT_FINAL
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.
Hi,
You Can Do Like This
Execute the TCode
At selection Screen
Choose Program Execute in BackGround
Choose Output Device Then Enter
Choose Immediate & Save
Job Will Be Scheduled
Then Go To SP02
There you can See The spool No created for you Program
also check in SM35
Hope This helps
With Regards,
Vinu.R
2009 Sep 25 7:26 AM
Hi,
You need to pass print related structure to REUSE_ALV_LIST_DISPLAY function module like below.
Thanks
Venkat.O
REPORT ztest_notepad.
DATA:
i_t001 TYPE t001 OCCURS 0,
pdf LIKE tline OCCURS 0.
DATA:
g_spool TYPE tsp01-rqident,
g_program TYPE sy-repid VALUE sy-repid.
TYPE-POOLS:slis.
DATA: w_print TYPE slis_print_alv,
w_print_ctrl TYPE alv_s_pctl.
START-OF-SELECTION.
SELECT * FROM t001 INTO TABLE i_t001 UP TO 100 ROWS.
w_print-print = 'X'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = g_program
i_structure_name = 'T001'
is_print = w_print
TABLES
t_outtab = i_t001.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
2009 Sep 25 7:53 AM
I dont want to print it directly but send it for spool print and the print the alv from transaction SP02
2009 Sep 25 8:00 AM
Hi, <li> When you execute the ALV report , Dialog box for print parameters will be appeared.->Click on properties button->Under General properties node, you will see Print out immediately ->Double click on Print out immediately ->you will see Time of print listbox ->click on that, Select Send to SAP spool only now.->click on continue button to come back ->now print Thanks Venkat.O
2009 Sep 25 8:04 AM
Hmm, ok, now i want to do that without having to navigate through the menus. i want to send the data for spool print using a function module.
2009 Sep 25 8:13 AM
2009 Sep 25 8:35 AM
Write the following code after creating ur ALV fm and then calling FM for get print parameters .........
Here ZALV_DEL is the name of the report program in which u have written ur ALV program it can be same program in which u r writing submit or can b different program.
SUBMIT ZALV_DEL TO SAP-SPOOL
SPOOL PARAMETERS LS_PRI_PARAM
WITHOUT SPOOL DYNPRO
AND RETURN.
2009 Sep 25 8:30 AM
Hi,
You Can Do Like This
Execute the TCode
At selection Screen
Choose Program Execute in BackGround
Choose Output Device Then Enter
Choose Immediate & Save
Job Will Be Scheduled
Then Go To SP02
There you can See The spool No created for you Program
also check in SM35
Hope This helps
With Regards,
Vinu.R
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |