cancel
Showing results for 
Search instead for 
Did you mean: 

printing error

Former Member
0 Kudos

Hi gurus,

i have doveluped smartform and print program and assign to one output type , the tcode vl74 (Handling Units) when we assing the output type to this t-code its exicuted sucessfully,

it have displayed the input values, when i sellects the input values and exicute its comes to the message selected data is sucessfully processed but its not comes to the output in printer and print privew.

plea suggest me whete its containes the mistics, urgent.

regards,

suresh.

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

Please look this program for your refernce, may be help to you

***starting of the Routine ENTRY**

FORM entry USING return_code LIKE sy-subrc

us_screen TYPE c.

return_code = 1.

PERFORM data_init USING us_screen.

PERFORM get_data_from_runtime. "TO GET RUNTIME DATA.

CHECK retcode EQ 0.

PERFORM get_data_from_sf. "TO POPULTING DATA INTO SMART FORM.

CHECK retcode EQ 0.

return_code = 0.

PERFORM get_sf. "CALLING THE SMART FORM.

CHECK retcode EQ 0.

ENDFORM. "ENTRY

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

  • FORM data_init *

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

FORM data_init USING value(us_screen) TYPE c.

xscreen = us_screen.

CLEAR:

retcode.

ENDFORM. "DATA_INIT

&----


*& Form GET_DATA

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM get_data_from_runtime .

  • To fetch the runtime data that is entered by the user in the tcode: VL02N

IF nast-objky+10(6) NE space.

it_vbco3-vbeln = nast-objky+16(10).

ELSE.

it_vbco3-vbeln = nast-objky.

ENDIF.

it_vbco3-mandt = sy-mandt.

it_vbco3-spras = nast-spras.

it_vbco3-kunde = nast-parnr.

it_vbco3-parvw = nast-parvw.

APPEND it_vbco3.

CALL FUNCTION 'RV_DELIVERY_PRINT_VIEW'

EXPORTING

comwa = it_vbco3

TABLES

pos = it_vbdpl.

ENDFORM. " GET_DATA

&----


*& Form get_data_from_sf

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM get_data_from_sf .

*To fetch the Delivery Date, Shipement No from LIKP table

SELECT vbeln

lfart

ablad

kunnr

lfdat

FROM likp

INTO CORRESPONDING FIELDS OF TABLE it_likp

WHERE vbeln = it_vbdpl-vbeln.

*To fetch the Destination Storage Location from Table EKPO

SELECT ebeln

ebelp

emlif

werks

lgort

FROM ekpo

INTO CORRESPONDING FIELDS OF TABLE it_ekpo

WHERE ebeln = it_vbdpl-vgbel.

  • Check for triangular invoice

READ TABLE it_likp INTO wa_likp INDEX 1.

IF wa_likp-lfart = 'ZTG1'.

  • to fetch the delivery type description

SELECT SINGLE vtext

INTO vtext

FROM tvlkt

WHERE spras = nast-spras

AND lfart = wa_likp-lfart.

  • Fetching the Ship-To Customer Address and Country from LFA1 table

IF it_ekpo[] IS NOT INITIAL.

SELECT name1

stras

pstlz

regio

ort01

FROM lfa1

INTO CORRESPONDING FIELDS OF TABLE it_kna1

FOR ALL ENTRIES

IN it_ekpo

WHERE lifnr = it_ekpo-emlif.

ENDIF.

ELSE.

  • Fetching the Ship-To Customer Address and Country from T005 table

IF NOT it_likp[] IS INITIAL.

  • to fetch the delivery type description

SELECT SINGLE vtext

INTO vtext

FROM tvlkt

WHERE spras = nast-spras

AND lfart = wa_likp-lfart.

SELECT name1

stras

pstlz

ort01

regio

land1

FROM kna1

INTO CORRESPONDING FIELDS OF TABLE it_kna1

FOR ALL ENTRIES IN it_likp

WHERE kunnr = it_likp-kunnr.

ENDIF.

READ TABLE it_kna1 INTO wa_kna1 INDEX 1.

IF wa_kna1 IS NOT INITIAL.

SELECT land1

landx

FROM t005t

INTO CORRESPONDING FIELDS OF TABLE it_t005t

WHERE land1 = wa_kna1-land1

AND spras = nast-spras.

ENDIF.

ENDIF.

  • To fetch Item Data into Smartform

IF NOT it_vbdpl[] IS INITIAL.

SELECT posnr

werks

matnr

vgbel

charg

lfimg

lgort

vbeln

meins

FROM lips

INTO CORRESPONDING FIELDS OF TABLE it_lips

FOR ALL ENTRIES IN it_vbdpl

WHERE vbeln = it_vbdpl-vbeln

AND matnr = it_vbdpl-matnr.

ENDIF.

SORT it_lips BY posnr.

IF it_lips[] IS NOT INITIAL.

SELECT werks

lgort

lgobe

FROM t001l

INTO CORRESPONDING FIELDS OF TABLE it_t001l

FOR ALL ENTRIES IN it_lips

WHERE werks = it_lips-werks

AND lgort = it_lips-lgort.

ENDIF.

IF it_ekpo[] IS NOT INITIAL.

SELECT werks

lgort

lgobe

FROM t001l

APPENDING CORRESPONDING FIELDS OF TABLE it_t001l

FOR ALL ENTRIES IN it_ekpo

WHERE werks = it_ekpo-werks

AND lgort = it_ekpo-lgort.

ENDIF.

*search term is stored as zlog_plant_addr_<palnt> to get the company address

SELECT werks

bwkey

FROM t001w

INTO CORRESPONDING FIELDS OF TABLE it_t001w

WHERE werks = it_vbdpl-werks.

READ TABLE it_t001w INTO wa_t001w INDEX 1.

CONCATENATE text-001 wa_t001w-werks INTO v_sort1.

IF NOT v_sort1 IS INITIAL.

SELECT name1

city1

post_code1

street

house_num1

country

region

addrnumber

taxjurcode

sort1 FROM adrc

INTO CORRESPONDING FIELDS OF TABLE it_adrc

WHERE sort1 = v_sort1.

ENDIF.

READ TABLE it_adrc INTO wa_adrc INDEX 1.

SELECT land1

landx FROM t005t

INTO CORRESPONDING FIELDS OF wa_t005t

WHERE land1 = wa_adrc-country

AND spras = nast-spras .

APPEND wa_t005t TO it_t005t.

ENDSELECT.

  • Fetch the TOHOKU Logo from the table T001K

READ TABLE it_t001w INTO wa_t001w INDEX 1.

SELECT bukrs

FROM t001k

INTO CORRESPONDING FIELDS OF TABLE it_t001k

WHERE bwkey = wa_t001w-bwkey.

IF it_t001k[] IS NOT INITIAL.

SELECT bukrs

stceg FROM t001

INTO CORRESPONDING FIELDS OF TABLE it_t001

FOR ALL ENTRIES IN it_t001k

WHERE bukrs = it_t001k-bukrs.

SELECT zlong_desc

bukrs FROM zgltentitycode

INTO CORRESPONDING FIELDS OF TABLE it_zgltentitycode

FOR ALL ENTRIES IN it_t001k

WHERE bukrs = it_t001k-bukrs.

ENDIF.

*Fetch the Material Description from ZMFG_PKG for the materials

SELECT matnr

zprod_ln_id

FROM mara

INTO CORRESPONDING FIELDS OF TABLE it_mara

WHERE matnr = it_vbdpl-matnr.

IF it_mara[] IS NOT INITIAL.

SELECT zprod_ln_id

zmfg_pkg_cd

FROM zprod_ln

INTO CORRESPONDING FIELDS OF TABLE it_zprod_ln

FOR ALL ENTRIES

IN it_mara

WHERE zprod_ln_id = it_mara-zprod_ln_id.

ENDIF.

IF it_zprod_ln[] IS NOT INITIAL.

SELECT zmfg_pkg_cd

zcustoms_desc

FROM zmfg_pkg

INTO CORRESPONDING FIELDS OF TABLE it_zmfg_pkg

FOR ALL ENTRIES

IN it_zprod_ln

WHERE zmfg_pkg_cd = it_zprod_ln-zmfg_pkg_cd.

ENDIF.

*To fetch the E-Mail address from the table ADR6

READ TABLE it_adrc INTO wa_adrc INDEX 1.

SELECT smtp_addr

FROM adr6

INTO CORRESPONDING FIELDS OF TABLE it_adr6

WHERE addrnumber = wa_adrc-addrnumber.

ENDFORM. " form1

&----


*& Form get_sf

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM get_sf .

  • To fetch the smartform functional module name and it holds in field FNAM

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'

EXPORTING

formname = dn_form

IMPORTING

fm_name = fnam

EXCEPTIONS

no_form = 1

no_function_module = 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.

  • Checking for output type

CASE nast-nacha.

  • Smartform to printer

WHEN '1'.

w_compop-tdcopies = nast-anzal. "No. of Copies

w_ctrlop-device = 'PRINTER'.

w_compop-tddest = nast-ldest. "Output device

w_compop-tdimmed = nast-dimme. "Print Immediately

w_ctrlop-no_dialog = 'X'. "No dialog

w_ctrlop-preview = xscreen.

CALL FUNCTION fnam

EXPORTING

control_parameters = w_ctrlop

output_options = w_compop

user_settings = ' '

vtext = vtext

IMPORTING

job_output_info = w_return

TABLES

it_likp = it_likp[]

it_t001k = it_t001k[]

it_kna1 = it_kna1[]

it_ekpo = it_ekpo[]

it_adrc = it_adrc[]

it_lips = it_lips[]

it_t005 = it_t005[]

it_t001 = it_t001[]

it_t005t = it_t005t[]

it_mara = it_mara[]

it_zmfg_pkg = it_zmfg_pkg[]

it_vbdpl = it_vbdpl[]

it_zgltentitycode = it_zgltentitycode[]

it_t001l = it_t001l

EXCEPTIONS

formatting_error = 1

internal_error = 2

send_error = 3

user_canceled = 4

OTHERS = 5.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

Please close the query if sloved your issue.

Reward

Thanks,

Aditya