10-04-2015 10:18 AM
hi all,
I am starting to use screen painter with my abap report. Everything is fine except i can't print it. I already active print button at menu painter (se41)
and assign function get_print_parameters to case condition sy-ucomm = '%PRI' but it's still not work.
The Print Screen List pop-up but nothing happens when i click "continue".
please help me out.
Thanks.
Jiranan
10-04-2015 5:28 PM
Hi,
please share the code which you have written in the PAI of MODAL DIALOG screen.. to avoid misconceptions.
thanks!!
10-05-2015 7:49 AM
hi Aditya Jangid,
This is my code.
REPORT ZJNNTEST6.
******************************************************************
* TABLE DECLARATIONS.
******************************************************************
TABLES: BKPF, BSEG, SKA1, KNA1, LFA1, T003T.
******************************************************************
* DATA DECLARATIONS.
*****************************************************************
DATA: BELNR LIKE BKPF-BELNR,
BUKRS LIKE BKPF-BUKRS,
GJAHR LIKE BKPF-GJAHR,
BLDAT LIKE BKPF-BLDAT,
BUDAT LIKE BKPF-BUDAT,
MONAT LIKE BKPF-MONAT,
XBLNR LIKE BKPF-XBLNR,
WAERS LIKE BKPF-WAERS,
BKTXT LIKE BKPF-BKTXT,
BLART LIKE BKPF-BLART,
XMWST LIKE BKPF-XMWST,
TCODE LIKE BKPF-TCODE,
USNAM LIKE BKPF-USNAM,
KURST LIKE BKPF-KURST,
AWKEY LIKE BKPF-AWKEY,
DISPLAY TYPE C,
PRINT TYPE C,
SAVE TYPE C,
DELETE TYPE C,
CLEAR TYPE C,
EXIT TYPE C,
OK_CODE LIKE SY-UCOMM,
HEADER(80) TYPE C,
ltext like t003t-ltext.
DATA: BEGIN OF gt_data occurs 0.
INCLUDE STRUCTURE zfb03.
DATA: END OF gt_data.
DATA: t_data LIKE STANDARD TABLE OF gt_data.
DATA: g_alv_grid TYPE REF TO cl_gui_alv_grid,
g_grid_container TYPE REF TO cl_gui_custom_container,
gs_layout TYPE lvc_s_layo,
it_fcat TYPE lvc_t_fcat. "Field catalogue
CALL SCREEN 1000.
*&---------------------------------------------------------------------*
*& Module STATUS_1000 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE STATUS_1000 OUTPUT.
SET PF-STATUS 'ZMENU'.
SET TITLEBAR 'ZMENUTITLE'.
CASE SY-UCOMM.
WHEN 'EXIT'.
LEAVE PROGRAM.
WHEN '%PRI'.
perform get_print.
WHEN 'DISPLAY'.
PERFORM GET_BKPF.
PERFORM GET_BSEG.
PERFORM ALV.
WHEN 'CLEAR'.
CLEAR: BKPF.
ENDCASE.
ENDMODULE. " STATUS_1000 OUTPUT
*&---------------------------------------------------------------------*
*& Form GET_BKPF
*&---------------------------------------------------------------------*
FORM GET_BKPF .
SELECT SINGLE BELNR BUKRS GJAHR BLDAT BUDAT MONAT XBLNR WAERS BKTXT BLART XMWST TCODE USNAM KURST AWKEY FROM BKPF
INTO (BKPF-BELNR, BKPF-BUKRS, BKPF-GJAHR, BKPF-BLDAT, BKPF-BUDAT, BKPF-MONAT, BKPF-XBLNR, BKPF-WAERS, BKPF-BKTXT, BKPF-BLART, BKPF-XMWST,
BKPF-TCODE, BKPF-USNAM, BKPF-KURST, BKPF-AWKEY)
WHERE BUKRS = BKPF-BUKRS AND
BELNR = BKPF-BELNR AND
GJAHR = BKPF-GJAHR.
select single ltext from t003t into ltext
where blart eq bkpf-blart and
spras eq 'EN'.
concatenate 'Doc.Type : ' bkpf-blart ' ( ' ltext ' ) Normal Document' into header.
ENDFORM. " GET_BKPF
*&---------------------------------------------------------------------*
*& Form GET_BSEG
*&---------------------------------------------------------------------*
FORM GET_BSEG .
select * from bseg
where bukrs eq bkpf-bukrs and
belnr eq bkpf-belnr and
gjahr eq bkpf-gjahr.
if sy-subrc = 0.
move-corresponding bseg to gt_data.
if bseg-koart = 'D'.
gt_data-hkont = bseg-kunnr.
select single name1 from kna1 into gt_data-acctxt
where kunnr eq bseg-kunnr.
elseif bseg-koart = 'K'.
gt_data-hkont = bseg-lifnr.
select single name1 from lfa1 into gt_data-acctxt
where lifnr eq bseg-lifnr.
elseif bseg-koart = 'S'.
select single txt20 from skat into gt_data-acctxt
where saknr eq bseg-hkont and
ktopl eq 'TUG' and
spras eq 'EN'.
endif.
append gt_data. clear gt_data.
endif.
endselect.
t_data[] = gt_data[].
ENDFORM. " GET_BSEG
*&---------------------------------------------------------------------*
*& Form ALV
*&---------------------------------------------------------------------*
FORM ALV .
PERFORM alv_build_fieldcat.
CREATE OBJECT g_grid_container
EXPORTING
container_name = 'GRID_CONTAINER'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5.
CREATE OBJECT g_alv_grid
EXPORTING
i_parent = g_grid_container.
gs_layout-edit = 'X'.
gs_layout-no_toolbar = 'X'.
gs_layout-CWIDTH_OPT = 'X'.
gs_layout-NO_ROWMARK = 'X'.
CALL METHOD g_alv_grid->set_table_for_first_display
EXPORTING
i_structure_name = 'ZFB03'
is_layout = gs_layout
CHANGING
it_outtab = t_data[]
it_fieldcatalog = it_fcat
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4.
CALL METHOD g_alv_grid->set_ready_for_input
EXPORTING
i_ready_for_input = 1.
ENDFORM. " ALV
*&---------------------------------------------------------------------*
*& Form GET_PRINT
*&---------------------------------------------------------------------*
FORM GET_PRINT .
DATA: days(1) TYPE n VALUE 2,
count(3) TYPE n VALUE 1,
valid TYPE c.
DATA: params LIKE pri_params.
days = 8.
count = 1.
CALL FUNCTION 'GET_PRINT_PARAMETERS'
EXPORTING
destination = 'LOCL'
copies = count
release = 'X'
immediately = 'X'
new_list_id = 'X'
expiration = days
line_size = 79
line_count = 23
sap_cover_page = 'X'
no_dialog = ' '
IMPORTING
out_parameters = params
valid = valid.
ENDFORM. " GET_PRINT
Below is my output.
Thanks.
Jiranan
10-05-2015 3:25 PM
Hi,
write your user-command codes in PAI which is related to print form.
in a more precise way you need to follow the concept of module pool programming even when you are using OOABAP for alv.
and do check the parameters of GET_PRINT_PARAMETERS.
thanks..