on 05-21-2008 8:27 AM
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.
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
87 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.