Você está na página 1de 32

printing support for native languages

1. You want to print in


Any non Latin 1 language, for instance Japanese, Korean,
Simplified Chinese, Taiwanese ( Traditional Chinese),
Russian, Greek, Turkish or Thai.
2. and
. You
have either a local printer or a network printer
connected to your PC
. Your
printer might not have built-in special national
fonts
. Your
printer might support PostScript level 2 printing

Other terms
printing, Postscript, Saplpd, SAPWIN, Latin-2, Latin-5,
ISO8859-2, ISO8859-5, ISO8859-7, ISO8859-9, Double Byte

Solution
TABLE OF CONTENTS:
0. Special notes
0.1 LatinX printing
0.2 General information
1. Introduction
1.1 Preparation
o For system configuration
o For sapscript
1.2 Printing Methods to be recommended
a) Method 'SAPWIN'
b) Method 'SPOST'
1.3 Restrictions for Method 'SPOST'
2. Procedures using method 'SAPWIN'
2.1 'SAPWIN' for R/3 release 30E, 30F and 31G
2.2 'SAPWIN' for R/3 release 31H
2.3 'SAPWIN' for R/3 release 31I
2.4 'SAPWIN' for R/3 release 40A and 40B
2.5 'SAPWIN' for as of R/3 release 45A
3. Procedures using method 'SPOST'
3.1 'SPOST' for release 30F or older
3.2 'SPOST' for release 31G
3.3 'SPOST' for releases 31H
3.4 'SPOST' for releases 31I
3.5 'SPOST' for releases 40A and 40B
3.6 'SPOST' for as of R/3 release 45A
4. Restrictions in Thai Printing
5. Known problems and solutions

0. Special Notes
 LatinX printing
Detailed device type list and related information for LatinX languages, please refer to note 8928.

 General Information

Please be aware that there are other printing methods besides what depicted here for printing non latin
language texts. Please consult SAP consultants or read printing online document thoroughly to set up your
appropriate printing landscape.

1. Introduction

1.1 Preparation
 For system configuration

We suppose that you have configured your R/3 system properly to be able to print the text in the
language you wish. If not, please refer to the related notes about the proper configuration.

 For SapScript

If you want to print a SapScript standard text, please make the following checks:

 Go to transaction SO10 to check if the language key of the SapScript text is the language you need, e.g. 2 for Thai.

 Go to transaction SE71 to check if the language key of the layout set is as the same as the language key of the standard
text to which the layout set is assigned. And please also check the fonts defined in the header part, paragraph and
character format. You always need to define special national fonts ( see table 1. font family as an example ) in those
sections in which you want to print national characters.

Table 1. Font Family


----------+--------------+-------------
Language | language key | font family
----------+--------------+-------------
Thai | 2 | THANGSAN
----------+--------------+-------------
Chinese | 1 | CNSONG
----------+--------------+-------------
Taiwanese | M | TWSONG
----------+--------------+-------------
Korean | 3 | KPSAMMUL
----------+--------------+-------------
Japanese | J | DBMINCHO
----------+--------------+-------------
Greek | G | COUR_I7
----------+--------------+-------------
Russian | R | COURCYR
----------+--------------+-------------

 Go to transaction SE72 to check if the language key of the style is as the same as the language key of standard text to
which the style is assigned. And please also check the font definition. You need to follow the same rule as for defining
fonts in layout sets.

1.2 Printing Methods to be recommended


The following two methods can be recommended:
a) Method 'SAPWIN':
Printing via Saplpd using device types xxSAPWIN like THSAPWIN or xxSWIN like I5SWIN. For the releases older
than 31I and 45A, the device types names begin with Z(see the following topic 2).
In this note you can find the printing support using this method for Thai, simplified Chinese, traditional
Chinese(Taiwanese) and Korean. For Japanese please refer to note 62178, and for the languages of Latin1,
Latin2, Latin5, Greek and Turkish please refer to note 8928.
a) Method 'SPOST':
Postscript host printing with downloadable fonts using device types ZxxSPOS1 like ZTHSPOS1 (for releases 30F
or older) or ZxxSPOS2 like ZTHSPOS2(for release 31G or 31H).
From release 31I on xxSPOST like THSPOST will be released as standard device types in R/3.

1.3 Restrictions to method 'SPOST'


There are some restrictions on using method 'SPOST':

 about fonts:

So far as only fixed middle size fonts are supported, no bold, italic or any proportional fonts, you can not print
texts in bold or italic or texts with proportional fonts.

 About framing drawing for list printing:

The signs '+', '-' and '|' are used.

 About Thai

For Thai list printing, you may have problems with framing compensation.

 Access Method:

In realease 30F, you can only use the access method 'L' (Print locally via LP/LPR) to define your output device
and print in this way. You also need a dedicated spool work process for each of the device types you want to
use.

 About performance:

Because of the downloadable fonts, printing may be slower than using hard-coded fonts.

2. Procedures using method 'SAPWIN'


For detailed information of 'SAPWIN' printing, please read online
document. For general concept of 'SAPWIN', please read note 21738.

2.1 'SAPWIN' for R/3 release 30E, 30F and 31G


Please refer to note 54059, 45463, 47408 or 47036 about the MS-Windows Front End for your system.
In order to avoid Thai printing problems you'd better use Thai Windows 95 or Thai Windows NT.
Please take the following steps:

 You need to copy some files from sapservX via ftp in binary mode:

 codepages and device types:

There are transport files under


.../general/R3server/abap/note.0083502/SAPWIN/30E_31G
This transport contains SAP character set, that is table TCP01, Sapscript codepage 4000 and the
following device types, system and printer codepages.
----------+------------+--------------
Language | codepage | device type
----------+------------+--------------
Thai | 8600, 8634 | ZTHSWIN
----------+------------+--------------
Chinese | 8400, 8434 | ZCNSWIN2
----------+------------+--------------
Taiwanese | 8300, 8334 | ZTWSWIN2
----------+------------+--------------
Korean | 8500, 8534 | ZKPSWIN2
----------+------------+--------------
Please login to R/3 host as user <sid>adm.
Use ftp and copy
D031252.B30 and R031252.B30 to /usr/sap/trans/data
K031252.B30 to /usr/sap/trans/cofiles
PLEASE SEE NOTE 13719 TO MAKE THE IMPORT(<tansport req> = B30K031252).
Please restart R3 system after import.

 Saplpd for Windows NT or 95.

Please use Saplpd version 408 or newer. To get Saplpd version 408, you can copy (using ftp in
binary mode) lpd408nt.exe on sapservX under
.../general/frontend/saplpd/NT/rel40B
into the directory on your PC, under which Saplpd.exe should exist. Run lpd408nt.exe and you'll get Saplpd.exe
and other necessary files under this directory.

 Logon into your R/3 system, run transaction SPAD and define an output device e.g. MYSW as the following example shows:

---------------------------------------
Output device MYSW
Device type ZTHSWIN
Spooler server APPL_SYS_NO
Destination host MyPC
Host printer p001
Device class
Access method S
LPQ format B
---------------------------------------

 Install printer p001 on your Windows. The p001 can be both local or network printer.

 Run Saplpd on your Windows.

 Check the Font substitution

 Please check if the font substitution in Saplpd looks as follows (You can find this Font substitution if you choose Saplpd
menu: Options -> Font substitution).

----------+--------------+---------------------------------
Language | SAP fontname | Windows fontname
----------+--------------+---------------------------------
Thai | Angsana New | (Space)
----------+--------------+---------------------------------
Chinese | SimSun | SongTi(or other Chin. font name)
----------+--------------+---------------------------------
Taiwanese | MingLiU | XiMingTi(or other Taiw. font name)
----------+--------------+---------------------------------
Korean | Gulim | GulimChe(or other Kor. font name)
----------+--------------+---------------------------------
If not, please correct it.
Note: "SAP fontname" is the font name used in the device type
definition. "Windows fontname" is the font name on your
Windows, which will be used for printing the
corresponding SAP font. The column "Language" and the
texts "(....)" do not exist in the font substitution
window.
WARNING: you should not make other font substitution, because
this may make the output of a Sapscript text incorrect
(lines too long or too short). That means, you should
NOT make font substitution for THAI, and you can make
font substitution for Chinese, Taiwanese and Korean,
but do NOT change the SAP fontname (left column)!!!
Only in this way the Sapscritp printing will not be
influenced, and at the same time, you can get
different font of your special language (except Thai)
for your ABAP-list printing using the font
substitution showed above.

 For Sapscript printing, the following Windows fonts will be used for the font family used in Sapscript:

----------+---------------------------------+------------------
Language | Windows font name | font in Sapscript
----------+---------------------------------+------------------
Thai | Angsana New | THANGSAN
----------+---------------------------------+------------------
Chinese | SongTi (Chinese characters) | CNSONG
----------+---------------------------------+------------------
Taiwanese | XiMingTi (Taiwanese characters)| TWSONG
----------+---------------------------------+------------------
Korean | GulimChe (Korean characters) | KPSAMMUL
----------+---------------------------------+------------------
These Windows font names are used in the device type definitions and should NOT be changed without changing
the device type definitions.

 For ABAP-list printing, the font substitution showed above will be used.

 Now you can print ABAP lists or Sapscript texts in Thai on R/3 using output device MYPS via Saplpd.

2.2 'SAPWIN' for R/3 release 31H


Please refer to note 54059, 45463, 47408 or 47036 about the MS-Windows Front End for your system.
In order to avoid Thai printing problems you'd better use Thai Windows 95 or Thai Windows NT.
Please take the following steps:

 You need to copy some files from sapservX via ftp in binary mode:

 codepages and device types:


There are transport files under
.../general/R3server/abap/note.0083502/SAPWIN/31H
This transport contains SAP character set, that is table TCP01, Sapscript codepage 4000 and the
following device types, system and printer codepages.
----------+------------+--------------
Language | codepage | device type
----------+------------+--------------
Thai | 8600, 8634 | ZTHSWIN
----------+------------+--------------
Chinese | 8400, 8434 | ZCNSWIN3
----------+------------+--------------
Taiwanese | 8300, 8334 | ZTWSWIN2
----------+------------+--------------
Korean | 8500, 8534 | ZKPSWIN2
----------+------------+--------------
Please login to R/3 host as user <sid>adm.
Use ftp and copy
D029870.B30 and R029870.B30 to /usr/sap/trans/data
K029870.B30 to /usr/sap/trans/cofiles
PLEASE SEE NOTE 13719 TO MAKE THE IMPORT(<tansport req> = B30K029870).
Please restart R3 system after import.

 Saplpd for Windows NT or 95.

Please use Saplpd version 408 or newer. To get Saplpd version 408, you can copy (using ftp in
binary mode) lpd408nt.exe on sapservX under
.../general/frontend/saplpd/NT/rel40B
into the directory on your PC, under which Saplpd.exe should exist. Run lpd408nt.exe and you'll get Saplpd.exe
and other necessary files under this directory.

 Logon into your R/3 system, run transaction SPAD and define an output device e.g. MYSW as the following example shows:

---------------------------------------
Output device MYSW
Device type ZTHSWIN
Spooler server APPL_SYS_NO
Destination host MyPC
Host printer p001
Device class
Access method S
LPQ format B
---------------------------------------

 Install printer p001 on your Windows. The p001 can be both local or network printer.

 Run Saplpd on your Windows.

 Check the Font substitution

 Please check if the font substitution in Saplpd looks as follows (You can find this Font substitution if you choose Saplpd
menu: Options -> Font substitution).

----------+--------------+---------------------------------
Language | SAP fontname | Windows fontname
----------+--------------+---------------------------------
Thai | Angsana New | (Space)
----------+--------------+---------------------------------
Chinese | SimSun | SongTi(or other Chin. font name)
----------+--------------+---------------------------------
Taiwanese | MingLiU | XiMingTi(or other Taiw. font name)
----------+--------------+---------------------------------
Korean | Gulim | GulimChe(or other Kor. font name)
----------+--------------+---------------------------------
If not, please correct it.
Note: "SAP fontname" is the font name used in the device type
definition. "Windows fontname" is the font name on your
Windows, which will be used for printing the
corresponding SAP font. The column "Language" and the
texts "(....)" do not exist in the font substitution
window.
WARNING: you should not make other font substitution, because
this may make the output of a Sapscript text incorrect
(lines too long or too short). That means, you should
NOT make font substitution for THAI, and you can make
font substitution for Chinese, Taiwanese and Korean,
but do NOT change the SAP fontname (left column)!!!
Only in this way the Sapscritp printing will not be
influenced, and at the same time, you can get
different font of your special language (except Thai)
for your ABAP-list printing using the font
substitution showed above.

 For Sapscript printing, the following Windows fonts will be used for the font family used in Sapscript:

----------+---------------------------------+------------------
Language | font name | font in Sapscript
----------+---------------------------------+------------------
Thai | Angsana New | THANGSAN
----------+---------------------------------+------------------
Chinese | SongTi (Chinese characters) | CNSONG
| HeiTi (Chinese characters) | CNHEI
----------+---------------------------------+------------------
Taiwanese | XiMingTi (Taiwanese characters)| TWSONG
----------+---------------------------------+------------------
Korean | GulimChe (Korean characters) | KPSAMMUL
----------+---------------------------------+------------------
These Windows font names are used in the device type definitions and should NOT be changed without changing
the device type definitions.

 For ABAP-list printing, the font substitution showed above will be used.

 Now you can print ABAP lists or Sapscript texts in Thai on R/3 using output device MYPS via Saplpd.

2.3 'SAPWIN' for R/3 release 31I


The following additional support will exist in the standard release:
----------+------------------+--------------------
Language | codepage | device type
----------+------------------+--------------------
Thai | 8600, 8634, 8617 | THSAPWIN, THSPOST
----------+------------------+--------------------
Chinese | 8400, 8434, 8417 | CNSAPWIN, CNSPOST
----------+------------------+--------------------
Taiwanese | 8300, 8334, 8317 | TWSAPWIN, TWSPOST
----------+------------------+--------------------
Korean | 8500, 8534, 8517 | KPSAPWIN, KPSPOST
----------+------------------+--------------------
Japanese | | JPSPOST
----------+------------------+--------------------
please refer to topic "2. 2 'SAPWIN' for R/3 release 31H" about how to

 fetch Saplpd from sapservX,

 define output device,

 check the font substitution in Saplpd,

 printing via Saplpd. If you do not have the printer device types in your R/3 31I system you can import those SAPWIN device types
from R/3 31H (see above section 2.2).

2.4 'SAPWIN' for R/3 release 40A and 40B


Please refer to note 54059, 45463, 47408 or 47036 about the MS-Windows Front End for your system.
In order to avoid Thai printing problems you'd better use Thai Windows 95 or Thai Windows NT.
Please take the following steps:

 You need to copy some files from sapservX via ftp in binary mode:

 codepages and device types:

There are transport files under


.../general/R3server/abap/note.0083502/40A_B
This transport contains the following device types, system and printer codepages (Because
Japanese codepages 8000, 8017, 8034 and device type JPSAPWIN exist in standard R/3, they are not included in
this transport ).
----------+------------------+--------------------
Language | codepage | device type
----------+------------------+--------------------
Thai | 8600, 8634, 8617 | ZTHSWIN, ZTHSPOST
----------+------------------+--------------------
Chinese | 8400, 8434, 8417 | ZCNSWIN, ZCNSPOST
----------+------------------+--------------------
Taiwanese | 8300, 8334, 8317 | ZTWSWIN, ZTWSPOST
----------+------------------+--------------------
Korean | 8500, 8534, 8517 | ZKPSWIN, ZKPSPOST
----------+------------------+--------------------
Japanese | | ZJPSPOST
----------+------------------+--------------------
Please login to R/3 host as user <sid>adm.
Use ftp and copy
R133874.BIN to /usr/sap/trans/data
K133874.BIN to /usr/sap/trans/cofiles
PLEASE SEE NOTE 13719 TO MAKE THE IMPORT(<tansport req> = BINK133874).
Please restart R3 system after import.

 Saplpd for Windows NT or 95.

Please use Saplpd version 408 or newer. To get Saplpd version 408, you can copy (using ftp in
binary mode) lpd408nt.exe on sapservX under
.../general/frontend/saplpd/NT/rel40B
into the directory on your PC, under which Saplpd.exe should exist. Run lpd408nt.exe and you'll get Saplpd.exe
and other necessary files under this directory.

 Logon into your R/3 system, run transaction SPAD and define an output device e.g. MYSW as the following example shows:

---------------------------------------
Output device MYSW
Device type ZTHSWIN
Spooler server APPL_SYS_NO
Destination host MyPC
Host printer p001
Device class
Access method S
LPQ format B
---------------------------------------

 Install printer p001 on your Windows. The p001 can be both local or network printer.

 Run Saplpd on your Windows.

 Check the Font substitution

 Please check if the font substitution in Saplpd looks as follows (You can find this Font substitution if you choose Saplpd
menu: Options -> Font substitution).

----------+--------------+---------------------------------
Language | SAP fontname | Windows fontname
----------+--------------+---------------------------------
Thai | Angsana New | (Space)
----------+--------------+---------------------------------
Chinese | SimSun | SongTi(or other Chin. font name)
----------+--------------+---------------------------------
Taiwanese | MingLiU | XiMingTi(or other Taiw. font name)
----------+--------------+---------------------------------
Korean | Gulim | GulimChe(or other Kor. font name)
----------+--------------+---------------------------------
If not, please correct it.
Note: "SAP fontname" is the font name used in the device type
definition. "Windows fontname" is the font name on your
Windows, which will be used for printing the
corresponding SAP font. The column "Language" and the
texts "(....)" do not exist in the font substitution
window.
WARNING: you should not make other font substitution, because
this may make the output of a Sapscript text incorrect
(lines too long or too short). That means, you should
NOT make font substitution for THAI, and you can make
font substitution for Chinese, Taiwanese and Korean,
but do NOT change the SAP fontname (left column)!!!
Only in this way the Sapscritp printing will not be
influenced, and at the same time, you can get
different font of your special language (except Thai)
for your ABAP-list printing using the font
substitution showed above.

 For Sapscript printing, the following Windows fonts will be used for the font family used in Sapscript:

----------+---------------------------------+------------------
Language | font name | font in Sapscript
----------+---------------------------------+------------------
Thai | Angsana New | THANGSAN
----------+---------------------------------+------------------
Chinese | SongTi (Chinese characters) | CNSONG
| HeiTi (Chinese characters) | CNHEI
----------+---------------------------------+------------------
Taiwanese | XiMingTi (Taiwanese characters)| TWSONG
----------+---------------------------------+------------------
Korean | GulimChe (Korean characters) | KPSAMMUL
----------+---------------------------------+------------------
These Windows font names are used in the device type definitions and should NOT be changed without changing
the device type definitions.

 For ABAP-list printing, the font substitution showed above will be used.

 Now you can print ABAP lists or Sapscript texts in Thai on R/3 using output device MYPS via Saplpd.

2.5 'SAPWIN' for R/3 as of release 45A


The following additional support will exist in the standard release:
----------+------------------+--------------------
Language | codepage | device type
----------+------------------+--------------------
Thai | 8600, 8634, 8617 | THSAPWIN, THSPOST
----------+------------------+--------------------
Chinese | 8400, 8434, 8417 | CNSAPWIN, CNSPOST
----------+------------------+--------------------
Taiwanese | 8300, 8334, 8317 | TWSAPWIN, TWSPOST
----------+------------------+--------------------
Korean | 8500, 8534, 8517 | KPSAPWIN, KPSPOST
----------+------------------+--------------------
Japanese | | JPSPOST
----------+------------------+--------------------
please refer to topic "2. 4 'SAPWIN' for R/3 release 40A and 40B" about how to

 fetch Saplpd from sapservX,


 define output device,

 check the font substitution in Saplpd,

 printing via Saplpd.

3. Procedures using method 'SPOST'

Please note the kernel release of your system and refer to the following
corresponding topic. Please make sure to import the transport which
suits to the kernel release of your system.

3.1 'SPOST' for release 30F or older


please make the following steps:

 You need to copy some files from sapservX via ftp in binary mode:

 There are transport files under

.../general/R3server/abap/note.0083502/30F
This transport contains SAP character set, that is table TCP01, Sapscript codepage 4000 and the
following device types, system and printer codepages (Because Japanese codepages 8000 and 8017 exist in
Standard R/3 and do not need to be changed, they are not included in this transport).
----------+------------+--------------
Language | codepage | device types
----------+------------+--------------
Thai | 8600, 8617 | ZTHSPOS1
----------+------------+--------------
Chinese | 8400, 8417 | ZCNSPOS1
----------+------------+--------------
Taiwanese | 8300, 8317 | ZTWSPOS1
----------+------------+--------------
Korean | 8500, 8517 | ZKPSPOS1
----------+------------+--------------
Japanese | | ZJPSPOS1
----------+------------+--------------
Please login to R/3 host as user <sid>adm.
Use ftp and copy
D028666.B30 and R028666.B30 to /usr/sap/trans/data
K028666.B30 to /usr/sap/trans/cofiles
PLEASE SEE NOTE 13719 TO MAKE THE IMPORT(<tansport req> = B30K028666).
Please restart R3 system after import.

 There are files containing the downloadable fonts under

.../general/R3server/abap/note.0083502/
----------+-------------------------
Language | downloadable font file
----------+-------------------------
Thai | Dfntis
----------+-------------------------
Chinese | Dfngb
----------+-------------------------
Taiwanese | Dfnbig5
----------+-------------------------
Korean | Dfnksc
----------+-------------------------
Japanese | Dfnsjis
----------+-------------------------
please refer to the next topic about copying these files.
Do NOT forget to copy these files. Otherwise the printing will not work!

 You need to do some preparation at UNIX level:

Suppose ux0001 is the host name of the application server, on which the spool work process is running.
Please login on ux0001 and do the followings:

 CHANGE the profile parameter 'rspo/host_spool/print' like e.g.

old value:
rspo/host_spool/print = /usr/bin/lp -d&P -n&C -onb -or &F 2>&&1
new value:
rspo/host_spool/print =
/usr/bin/lp -d&P -n&C -onb -or $(DIR_DATA)/Dfntis &F 2>&&1
Note: DIR_DATA has the value like
/usr/sap/$(SAPSYSTEMNAME)/$(INSTANCE_NAME)/data
and "Dfntis" is the name of the file with the
downloadable fonts for the language you need
(Dfntis is for Thai).

 COPY the files like Dfntis which contain the downloadable fonts to the application server ux0001 under the directory
which DIR_DATA implies, e.g.

/usr/sap/$(SAPSYSTEMNAME)/$(INSTANCE_NAME)/data
The files like Dfntis can be fetched from sapservX via ftp under:
.../general/R3server/abap/note.0083502/
see also the topic above.

 DEFINE a host printer on ux0001 like ps01 which can be used as destination for lp command like 'lp -dps01 file' to print
Postscript.

Note: Because the setting of the profile parameter:


rspo/host_spool/print
affects all the host printers, also the non-Postscript
printer, you should not make a host printing of
non-Postscript printers using the same
spool work process.

 Restart the application server.

 Logon into your R/3 system, run transaction SPAD and define an output device you need. We take Thai as an example(your system
may be called TST and system number 00):

---------------------------------------
Output device MYPS
Device type ZTHSPOS1
Spooler server ux0001_TST_00
Host printer ps01
Device class
Access method L
LPQ format B
---------------------------------------

 Now you can print ABAP lists or Sapscript texts in e.g. Thai on R/3 using output device MYPS and any Postscript printer, which
needs neither hardware nor firmware support for Thai.

3.2 'SPOST' for release 31G


please make the following steps:

 You need to copy some files from sapservX via ftp in binary mode:

 There are transport files under

.../general/R3server/abap/note.0083502/31G
This transport contains SAP character set, that is table TCP01, Sapscript codepage 4000 and the
following device types, system and printer codepages (Because Japanese codepages 8000 and 8017 exist in
Standard R/3 and do not need to be changed, they are not included in this transport).
----------+------------+--------------
Language | codepage | device types
----------+------------+--------------
Thai | 8600, 8617 | ZTHSPOS2
----------+------------+--------------
Chinese | 8400, 8417 | ZCNSPOS2
----------+------------+--------------
Taiwanese | 8300, 8317 | ZTWSPOS2
----------+------------+--------------
Korean | 8500, 8517 | ZKPSPOS2
----------+------------+--------------
Japanese | | ZJPSPOS2
----------+------------+--------------
Please login to R/3 host as user <sid>adm.
Use ftp and copy
D028592.B30 and R028592.B30 to /usr/sap/trans/data
K028592.B30 to /usr/sap/trans/cofiles
PLEASE SEE NOTE 13719 TO MAKE THE IMPORT(<tansport req> = B30K028592).
Please restart R3 system after import.

 There are files containing the downloadable fonts under

.../general/R3server/abap/note.0083502/
----------+-------------------------
Language | downloadable font file
----------+-------------------------
Thai | Dfntis
----------+-------------------------
Chinese | Dfngb
----------+-------------------------
Taiwanese | Dfnbig5
----------+-------------------------
Korean | Dfnksc
----------+-------------------------
Japanese | Dfnsjis
----------+-------------------------
please refer to the next topic about copying these files.
Do NOT forget to copy these files. Otherwise the printing will not work!

 You need to do some preparation at UNIX level

Suppose ux0001 is the host name of the application server, on which the spool work process is running.
Please login on ux0001 and do the followings:

 SET the profile parameter 'rspo/devinit/datafile' to

rspo/devinit/datafile =
/usr/sap/$(SAPSYSTEMNAME)/$(INSTANCE_NAME)/data/D+++++++

 COPY the files like Dfntis which contain the downloadable fonts to the application server ux0001 under the directory:

/usr/sap/$(SAPSYSTEMNAME)/$(INSTANCE_NAME)/data
The files like Dfntis can be fetched from sapservX via ftp under:
.../general/R3server/abap/note.0083502/
see also the topic above.

 Restart the application server.

 Logon into your R/3 system, run transaction SPAD and define an output device you need. We take Thai as an example(your system
may be called TST and system number 00), you can use access method U as following:

---------------------------------------
Output device MYPS
Device type ZTHSPOS2
Spooler server ux0001_TST_00
Destination host ux0002
Host printer ps02
Device class
Access method U
LPQ format B
---------------------------------------
or you can also use other access methods like L as following:
---------------------------------------
Output device MYPS
Device type ZTHSPOS2
Spooler server ux0001_TST_00
Host printer ps01
Device class
Access method L
LPQ format B
---------------------------------------
 Now you can print ABAP lists or Sapscript texts in e.g. Thai on R/3 using output device MYPS and any Postscript printer, which
needs neither hardware nor firmware support for Thai.

3.3 'SPOST' for releases 31H


please make the following steps:

 You need to copy some files from sapservX via ftp in binary mode:

 There are transport files under

.../general/R3server/abap/note.0083502/31H
This transport contains SAP character set, that is table TCP01, Sapscript codepage 4000 and the
following device types, system and printer codepages (Because Japanese codepages 8000 and 8017 exist in
Standard R/3 and do not need to be changed, they are not included in this transport).
----------+------------+--------------
Language | codepage | device types
----------+------------+--------------
Thai | 8600, 8617 | ZTHSPOS2
----------+------------+--------------
Chinese | 8400, 8417 | ZCNSPOS2
----------+------------+--------------
Taiwanese | 8300, 8317 | ZTWSPOS2
----------+------------+--------------
Korean | 8500, 8517 | ZKPSPOS2
----------+------------+--------------
Japanese | | ZJPSPOS2
----------+------------+--------------
Please login to R/3 host as user <sid>adm.
Use ftp and copy
D028663.B30 and R028663.B30 to /usr/sap/trans/data
K028663.B30 to /usr/sap/trans/cofiles
PLEASE SEE NOTE 13719 TO MAKE THE IMPORT(<tansport req> = B30K028663).
Please restart R3 system after import.

 There are files containing the downloadable fonts under

.../general/R3server/abap/note.0083502/
----------+-------------------------
Language | downloadable font file
----------+-------------------------
Thai | Dfntis
----------+-------------------------
Chinese | Dfngb
----------+-------------------------
Taiwanese | Dfnbig5
----------+-------------------------
Korean | Dfnksc
----------+-------------------------
Japanese | Dfnsjis
----------+-------------------------
please refer to the next topic about copying these files.
Do NOT forget to copy these files. Otherwise the printing will not work!
 please refer to the description in the topic "3.2 'SPOST' for release 31G:" of point "3. Procedures using method 'SPOST'" for the
other steps like:

 SET the profile parameter 'rspo/devinit/datafile',

 COPY the files like Dfntis which contain the downloadable fonts,

 RESTART the application server,

 DEFINE an output device you need and

 PRINT from R/3.

3.4 'SPOST' for R/3 release 31I


The following additional support will exist in the standard release:
----------+------------------+--------------------
Language | codepage | device type
----------+------------------+--------------------
Thai | 8600, 8634, 8617 | THSAPWIN, THSPOST
----------+------------------+--------------------
Chinese | 8400, 8434, 8417 | CNSAPWIN, CNSPOST
----------+------------------+--------------------
Taiwanese | 8300, 8334, 8317 | TWSAPWIN, TWSPOST
----------+------------------+--------------------
Korean | 8500, 8534, 8517 | KPSAPWIN, KPSPOST
----------+------------------+--------------------
Japanese | | JPSPOST
----------+------------------+--------------------
please refer to topic "3. 3 'SPOST' For R/3 release 31H" about the following steps to be done:

 SET the profile parameter 'rspo/devinit/datafile',

 COPY the files like Dfntis which contain the downloadable fonts,

 RESTART the application server,

 DEFINE an output device you need and

 PRINT from R/3.

3.5 'SPOST' for releases 40A and 40B


please make the following steps:

 You need to copy some files from sapservX via ftp in binary mode:

 There are transport files under

.../general/R3server/abap/note.0083502/40A_B
This transport contains the following device types, system and printer codepages (Because
Japanese codepages 8000, 8017, 8034 and device type JPSAPWIN exist in standard R/3, they are not included in
this transport ).
----------+------------------+--------------------
Language | codepage | device type
----------+------------------+--------------------
Thai | 8600, 8634, 8617 | ZTHSWIN, ZTHSPOST
----------+------------------+--------------------
Chinese | 8400, 8434, 8417 | ZCNSWIN, ZCNSPOST
----------+------------------+--------------------
Taiwanese | 8300, 8334, 8317 | ZTWSWIN, ZTWSPOST
----------+------------------+--------------------
Korean | 8500, 8534, 8517 | ZKPSWIN, ZKPSPOST
----------+------------------+--------------------
Japanese | | ZJPSPOST
----------+------------------+--------------------
Please login to R/3 host as user <sid>adm.
Use ftp and copy
R133874.BIN to /usr/sap/trans/data
K133874.BIN to /usr/sap/trans/cofiles
PLEASE SEE NOTE 13719 TO MAKE THE IMPORT(<tansport req> = BINK133874).
Please restart R3 system after import.

 There are files containing the downloadable fonts under

.../general/R3server/abap/note.0083502/
----------+-------------------------
Language | downloadable font file
----------+-------------------------
Thai | Dfntis
----------+-------------------------
Chinese | Dfngb
----------+-------------------------
Taiwanese | Dfnbig5
----------+-------------------------
Korean | Dfnksc
----------+-------------------------
Japanese | Dfnsjis
----------+-------------------------
please refer to the next topic about copying these files.
Do NOT forget to copy these files. Otherwise the printing will not work!

 please refer to the description in the topic "3.2 'SPOST' for release 31G" of point "3. Procedures using method 'SPOST'" for the
other steps like:

 SET the profile parameter 'rspo/devinit/datafile',

 COPY the files like Dfntis which contain the downloadable fonts,

 RESTART the application server,

 DEFINE an output device you need and

 PRINT from R/3.


3.6 'SPOST' for as of R/3 release 45A
The following additional support will exist in the standard release:
----------+------------------+--------------------
Language | codepage | device type
----------+------------------+--------------------
Thai | 8600, 8634, 8617 | THSAPWIN, THSPOST
----------+------------------+--------------------
Chinese | 8400, 8434, 8417 | CNSAPWIN, CNSPOST
----------+------------------+--------------------
Taiwanese | 8300, 8334, 8317 | TWSAPWIN, TWSPOST
----------+------------------+--------------------
Korean | 8500, 8534, 8517 | KPSAPWIN, KPSPOST
----------+------------------+--------------------
Japanese | | JPSPOST
----------+------------------+--------------------
ISO8859-2 | 1417 | I2SPOST
----------+------------------+--------------------
ISO8859-5 | 1517 | I5SPOST
----------+------------------+--------------------
ISO8859-7 | 1717 | I7SPOST
----------+------------------+--------------------
ISO8859-9 | 1617 | I9SPOST
----------+------------------+--------------------
There are files containing the Postscript downloadable fonts under
.../general/R3server/abap/note.0083502/
----------+-------------------------
Language | downloadable font file
----------+-------------------------
Thai | Dfntis
----------+-------------------------
Chinese | Dfngb
----------+-------------------------
Taiwanese | Dfnbig5
----------+-------------------------
Korean | Dfnksc
----------+-------------------------
Japanese | Dfnsjis
----------+-------------------------
ISO8859-2 | Dfnlatin
----------+-------------------------
ISO8859-5 | Dfnlatin
----------+-------------------------
ISO8859-7 | Dfnlatin
----------+-------------------------
ISO8859-9 | Dfnlatin
----------+-------------------------
please refer to topic "3. 5 'SPOST' For R/3 release 40A and 40B" about the following steps to be done:

 SET the profile parameter 'rspo/devinit/datafile',

 COPY the files like Dfntis which contain the downloadable fonts,
 RESTART the application server,

 DEFINE an output device you need and

 PRINT from R/3.

4 Restrictions in Thai Printing


Due to the nature of Thai language two very inportant features are needed for Thai printing:
a) Thai character composition
b) Space compensation

4.1 Thai printing via ZTHSWIN or THSAPWIN - saplpd (see section 2) is


working for BOTH ABAP list printing and SAPSCRIPT by supporting
both features in Thai Windoqs (a) and saplpd (b)

4.2 CAUTION: Thai printing method SPOST using PostScript softfont


ONLY works correctly for SAPSCRIPT printing, NOT for ABAP list
printing (reports with Thai texts, tables, etc.) due to missing
feature b).
Only if your Thai printer has hardware fonts (font cartridges)
with integrated space compensation feature b) you can apply SPOST
in a modified form (i.e. using the hard- instead the softfont).
For details about the printer please contact your vendor.

5 Known problems and solutions


 THSAPWIN from release 3.1 to 640

Only 1st page is printed with overlapping the contents of following pages due to form feed commands
are missing on SAPscript print formats DINA3, INCH4C, INCH6, INCH7, INCH8, LEGAL, LETTER, LINE_21 and
LINE_22.

 Please import an attached file 'RSTXR3TR.THSAPWIN' (RSTXR3TR.zip) to fix this problem by the program
'RSTXR3TR'.

Determining the device type for a certain language


Example: an application wanted to return the OTF of Smart Forms or SAPscript to generate a PDF. A certain
device type is required depending on the language but how do you determine this device type?

Other terms
Smart Forms, SAPscript, PDF, OTF, device type, language, code page

Reason and Prerequisites


See solution.

Solution
The SSF_GET_DEVICE_TYPE function module exists as of Basis Release 6.20. This function module determines
the relevant device type for a language. For previous releases, you can use the attached routine form. The
correction instructions are valid for all releases from Release 4.0B to 6.10.

Printers and Asian/East European typeface/languages


Why is printing documents in Asian (for example, Chinese, Japanese, Korean, Thai) or East European languages
(for example, Greek, Russian) from an SAP system more difficult than printing languages such as German,
English, French, Spanish?

Other terms
JPSAPWIN, CNSAPWIN, JPHPLJ4, CNSAPWIN, TWSAPWIN, THSAPWIN, SAPWIN5, I2SWIN, I7SWIN, I9SWIN

Reason and Prerequisites


Information purposes

Solution
You can print texts in Asian or East European languages using the Windows printer driver with SAPlpd using the
device types CNSAPWIN, JPSAPWIN, KPSAPWIN, THSAPWIN, TWSAPWIN, SAPWIN5, I2SWIN, I7SWIN, and I9SWIN.
Windows and the Windows printer driver generate the fonts when printing. See the corresponding notes for the
particular device class. The Windows PC on which SAPlpd runs must, however, support the required language
(e.g. Japanese) and the required font (e.g. MS Mincho). So, for example, the standard German version of
Windows95 cannot print a Chinese document using SAPlpd and CNSAPWIN. The details regarding language
support assistance depend on the Windows version used and the language packs installed.
All other SAP device classes which are not used in connection with Windows print using SAPlpd require a suitable
font ("printer- resident font") that is available in the printer and can be chosen using printing commands, in
order to print in a specific language. Most commercial printers (e.g. HP LaserJet series, Lexmark Optra, EPSON
ESC/P, line printers, all post-script printers) only support Western European / American fonts (so-called Latin-1
character set, ISO 8859-1).
Reason:
Printer manufacturers do not support the above-mentioned languages for cost reasons, as they require further
memory space in the printer (and possibly mean that additional license fees must be paid to the font
manufacturers). It would not be economically viable for printers to have other character sets as most printouts
are now generated via the Windows OS, whose printer drivers do not require "printer resident fonts" but can
"synthesize" desired fonts if required (for example, by printing as a graphic).
For this reason, only Latin-1 languages can be printed from most of these SAP device types (z.B.HPLJ4, HPLJ5,
HPLJ4000, POSTSCPT, POST2, KYOFS170).
Adobe PostScript is an exception as its standard fonts only support Latin-1 characters, but PostScript contains a
method to generate any font. However, the SAP postscript printer driver can only download TrueType fonts as of
Release 4.6C (Note 201307), and only for SAPscript/SmartForm outputs and not for ABAP print lists.
Problem solution:
For the reasons mentioned above,a firmware enhancement using SIMM/DIMM/flash memory is required for the
printer, with the required font (e.g. Japanese Mincho Font) being made resident in the printer. The following SAP
device classes are based on such a solution:
CNHPLJ4, CNLX522
HKHPLJ4
JPHPLJ4, JPLX522
KPHPLJ4, KPLX522
TWHPLJ4, TWLX522

SAP Frontend 6.20 information for Asia


Errors and notes related to SAP frontend software on Asian platforms

Other terms
Japan, Japanese, Korea, Korean,Traditional Chinese Taiwan Simplified
Chinese, China,frontend, GUI, SAPGUI, 6.20

Reason and Prerequisites


Customer is using R/3 and SAP frontend software on Asian platforms

Solution
=== THIS IS UPDATED FREQUENTLY. PLEASE CHECK BEFORE INSTALLATION. ===
This note describes the known problems and possible solutions specific
to Asian double-byte environment. For the general information of SAP
GUI 6.20, please refer to R/3 note 402189 and SAP Service Marketplace
(http://service.sap.com/sapgui).

= News =
- Please be sure to check the platforms supported for SAP Frontend in
SAP Note 147519.
- As of Netweaver 04, we start delivering as DVD. The media contains
various SAP Frontend components. SAP Note 710716 informs the detail.
Please check the following notes for component specific information:

COMPONENT Note no.


=================================================================
APO Frontend 3.X 510093
BW Frontend 3.X 480443
BW Frontend 2.X 355530
KW Frontend 5.X 508144
SEM Frontend 3.X 383681

TOPICS LAST UPDATE


=================================================================
A. SAPGUI FOR WINDOWS 29/JUN/2004
B. SAPGUI FOR JAVA 29/JUN/2004
C. SAPGUI FOR HTML 28/JUN/2004
D. OTHERS 19/JUN/2002

A. SAPGUI FOR WINDOWS


= News =
[2004/06/29] DVD50069107 has been released. It includes both SAPGUI
for Windows 6.20 and 6.40. SAP Note 710720 describes which version
is proper on your environment.

SAPSetup and SAPAdmin


It enables to use MBCS in folder names, files names and package names
in SAPsetup and SAPAdmin 6.20 Patch 15 upwards.

Adjust font to SAP code-page at Logon(SAPGUI for Windows 6.10 upwards)


When you work with GUI and start up another GUI in EN or any other
language the font setting may automatically be changed.
You can disable this option by;
1. Click the option button (Alt+F12).
2. Select Option (I18N) and click on Code tab.
3. Disable the option for "Adjust font to SAP code-page at Logon".
4. Select the proper font and character set.
5. Close all the GUI and SAP Logon.
6. Start up SAP Logon.

i18n Mode
SAP Note 316903 mentions its usage.

Unicode
SAPGUI for Windows 6.40 is improved for several non Latin codepage
support. We strongly recommend to use SAPGUI for Windows 6.40,
especially in Asian platforms. Please refer to the following SAP
Notes.
508854 SAPGUI: How to use Unicode
710720 SAP GUI for Windows 6.40: Delivery and new function

Screen Capture on Thai platforms


'Generate Graphic' under local layout option can not be used in
Thai environment. It is why Thai always uses proportional fonts,
though it is required to use a fixed bitmap font to calculate the
positioning of the texts.

B. SAPGUI FOR JAVA


Please refer to R/3 Note 146505 for the general information and 509733
for release 6.20.

Platform support
- Windows 95 is not supported as of SAPGUI for Java 6.10.
- Windows XP is supported since SAPGUI for Java 6.10 revision 2.
- MacOS X 10.1 is supported since SAPGUI for Java 6.20.
SAP recommends the use of 6.20 for MacOS X instead of 6.10 in
classic environement.
- MacOS X 10.2 is supported since SAPGUI for Java 6.20 revision 6.
- Windows 98 and NT4.0 are not supported as of SAPGUI for Java 6.30.
- MacOS 9 is not supported as of SAPGUI for Java 6.30.

Java Runtime Environment support


- Java Runtime Environment 1.4.1 upward is supported for most platforms
since SAPGUI for Java 6.30. For details, please refer to 'System
Requirement' section of the manual.

C. SAPGUI FOR HTML


Please refer to R/3 Note 314568 and 178788 for the general information
and 369586 for ITS use on Asian environment.

D. OTHERS
Frontend Installation Guide for each language is not planned.

[GuiXT]
GuiXT in SAPGUI for HTML
To use GuiXT in SAPGUI for HTML, ITS 6.10 Patch 14 and GuiXT 2002 Q2
09 upwards are required.

Font replacement" in SAPlpd and SAPscript print


When printing SAPscript documents with Microsoft Windows using device types SAPWIN, SWIN, JPSAPWIN,
TWSWIN and so on, the following symptoms occur in the printout:

 incorrect line break

 too short lines (spacing too large)

 too long lines (overlapping texts, truncated text at page margin)

 incorrect font

 no asiatic database characters are printed

Additional key words


SAPWIN, SWIN, SAPlpd, SAPscript, font replacement

Cause and prerequisites


SAPlpd offers the user the option via the menu "font replacement" to replace the typeface used in the standard
SAP System (for example Courier New for COURIER, Arial for HELVE, Times New Roman for TIMES) with any other
Windows typeface when you print using the above-mentioned device types.
However replacing the font is only useful for printing ABAP lists and not for printing SAPscript documents. When
printing SAPscript documents, the metric of the used typeface (especially the widths of the individual characters
in this case) plays a key role during formatting. It determines the line and page break.
The line and page break of an SAPscript document is calculated on the basis of the font metrics of the MS
Windows typefaces used in the SAP Standard System (Courier New, Arial, Times New Roman, MS Mincho, and so
on). If you use the menu font replacement to choose another typeface for printing, the widths of words
calculated by SAPscript no longer matches the actual printout. The result is described above: formatting error.

Solution
To avoid formatting errors with the SAPscript print, do not enter any replacement fonts in the SAPlpd menu "font
replacement"!

Frontend printing not possible

Frontend printing according to Note 114426 does not work, and output requests are given the status 'Frontend
cannot be accessed'.
The trace of the work process contains the following entry:
S no gui for frontend connection available
However, a connection test from SM59 to the SAPGUI destination does work.

Other terms
F access method, RFC_PING

Reason and Prerequisites


Up to release 4.6B, the communication code page is determined using the profile parameter
install/codepage/appl_server. In the error case described in this note, an incorrect value is entered for the profile
parameter.
As of release 4.6C, the logon language is used to determine the communication code page.

Solution
Set the profile parameter install/codepage/appl_server to the correct value. For example, the correct value is
1100 in the Latin-1 environment.
In releases later than 4.6B, the problem no longer occurs.

Frontend printing (collective note)


This note describes the general mode of operation of frontend printing and all related problems known to date.
The preliminary transports which were previously available should NOT be used any longer because they are not
suitable for all releases and can cause syntax errors. Instead, we recommend you use the most recent Support
Packages (and kernel patches) (see section 'Prerequisites' subsection 'Required components').

Other terms
Local printing, DHCP, frontend printing, RFCIO_ERROR, CPIC, LPRINT, RFC_NO_AUTHORITY

Reason and Prerequisites


1. Names & availability
As of kernel Release 3.1G, a new type of printing exists which is called 'frontend printing'. As of Release 4.0A,
this printing method completely replaces 'local printing' from Transaction SP01 which was available in Release
3.X (the corresponding button is no longer displayed in Transaction SP01). In older kernel releases, frontend
printing cannot be used.
The name 'local printing' should no longer be used because it could be confused with the access method 'L'
which is also referred to as 'local'.
Frontend printing is only supported on Windows platforms.
2. Purpose of 'frontend printing'
Frontend printing means that the print data is sent to the computer on which the user has started his SAPGUI.
The data should be output on the default printer of the user, if possible (as of Release 4.6A the list output of the
frontend printer can be selected in the printing dialog box,for SAPScript only as of Release 4.6. The name of the
frontend printer is restricted to 40 characters).
As of Release 5.0, the list for selecting the frontend printer can be hidden for the corresponding printer, using
Transaction SPAD.
In Release 4.6, Report RSPO0052, which allows you to switch off a printer in the selection list, is available as of
the following Support Packages: 4.6B: SP21, 4.6C: SP11, 4.6D: SP04. For Release 4.6B, an advance correction is
also available. In Report RSPO0052, specify the printer and mark the 'Default' field. This deactivates the
selection list for this printer. If you do not mark 'Default', the list becomes active again.
If dynamic IP addresses are used for the frontend (DHCP protocol), this printing method is the only way of
outputting the data on a frontend printer.
3. Restrictions
Owing to its mode of operation, frontend printing is subject to the following restrictions:
a) Frontend printing does not replace other access methods. It is suitable for the output of a small number of documents.
In particular, this restriction may occur with a slow GUI connection.
b) Background use is not possible. Since there is no connection to a frontend in background processing, frontend printing
is not possible here either. In some releases, when you define print parameters for a background job, the entry of a
frontend printer can be prevented or it can be permitted, but no output results from the batch.
Using the latest Support Packages:
3.0D: SAPKH30D64
3.0F: SAPKH30F52
3.1H: SAPKH31H35
3.1I: SAPKH31I12
4.0A: SAPKH40A21
4.0B: SAPKH40B09
4.5A: SAPKH45A03
and Patch Kernels
3.1I Patch level 142
4.0B Patch level 195
4.5A Patch level 58
the following behavior occurs in background processing:
If you use a frontend printer in the background with print immediately, the corresponding output
request is assigned the status "postponed" (on hold) or "Waiting for output formatter". As of Release 4.5A, you
can reprocess these requests online with function "Restart frontend printing" in Transaction SP01. Despite this,
the entry of a frontend printer may not be authorized by the batch scheduling transaction
As of Release 4.6, suche "waiting" requests are output as soon as an additional front end output
request is created for the same user.
In earlier releases, you can execute Function RSPO_PROCESS_FRONTEND_JOBS in Transaction
SE37 (Single test) and leave the terminal name empty. You can also generate a second output request in SP01.
The first then remains until you trigger frontend printing as described above.
a) Printing from within the update is only possible as of kernel Release 4.5A, provided that the user is still logged on
when the print request is sent off in the update. Frontend printing from within the update was not possible before because
there was no connection to the frontend. Printing works only via destinations SAPGUI and LOCAL_PRINT.
DOWNLOAD does not work from the update task (for description of destinations see below).
It is often difficult for the user to recognize whether the application is printing in the dialog or
from within the update; therefore (unwarranted) this lead to problem messages in the past.
a) Free session required. In order to be able to use frontend printing, you must have at least one free session in the R/3
System in question (you must not be using all (currently 6) sessions permitted).
If the Support Packages mentioned in the subsection 'Required components' and kernel patches
are in use, frontend prints are not lost due to a lack of sessions but they are buffered in the database. If another
print is carried out on a frontend printer from the same frontend with sufficient free sessions, all the user's
previous frontend prints for that terminal are executed. Frontend print jobs from other terminals are not
redirected.
As of Release 4.5A you can execute this frontend print in Transaction SP01 with the menu option
'Restart frontend printing' in the online operation (no further session is needed). As of Release 4.6A ALL all
frontend print jobs will be redirected to the current terminal even if the user has changed the terminal in the
meantime. (With the latest Support Packages, ALL requests are printed later even in older systems).
a) Formatting in dialog processes. The print formatting for frontend printing is carried out in a dialog process. This
formatting is subject to the normal timeout of the dialog. Large print documents can therefore not be printed this way. (As
of Release 4.6A the printing requests are processed in the spool work process, so no more timeouts will occur )
Furthermore, you must consider that the system load can increase considerably in the dialog
mode if many users use frontend printing at the same time. In older releases (before the updates mentioned
under the section 'Required components') even a single user could occupy more than one dialog process by fast
printing (he then needed several free sessions). Now, only one dialog process/session is used for print formatting
for each user/frontend. (As of Release 4.6A processing is performed in the spool work process, so a high dialog
load will no longer occur.)
a) For a short time, 2 dialog processes might be needed in new releases ( 3 in older releases ).This means that on each
server on which frontend printing is to be used, at least 2 or 3 dialogs must be configured.
b) Printing several copies. To print several copies with the frontend print you used to have to activate the flag 'Each copy
as a separate request'. As a result, for n copies up to n sessions and 2*n dialog processes were required. Therefore, in
newer kernels this flag is ignored for access method 'F'. In order to be able to print several copies, you have to apply the
Support Packages mentioned below. (With older Support Package statuses in conjunction with newer kernels you can no
longer print copies!)
1. Required components
a) Release 4.5B or the corresponding Support Packages, to upgrade older systems (as of Release 3.0D).
3.0D SAPKH30D58
3.0F SAPKH30F46
3.1H SAPKH31H29
3.1I SAPKH31I06 (if access method 'F' cannot be entered in
Transaction SPAD, use SAPKH31I07)
4.0A SAPKH40A16
4.0B SAPKH40B04 (SAPKH40B05 for blanks in printer destinations)
4.5A SAPKH45A01
a) A 3.1G kernel (or rather, a 3.1I patch level 249, 4.0B patch level 359, 4.5A patch level 58 kernel, printing in the update
requires 4.5A kernel). If older cores are used, Table TSP02F is not used (see subsection 'Mode of operation') but every
request is processed separately (high use of resources!).
b) The current version of the Program LPRINT (to import an LPRINT program see Note 328252). LPRINT must be
copied into the SAPGUI directory.
c) The current version of SAPlpd. (To import SAPLPD see Note 328252). SAPLPD must be installed in the Subdirectory
SAPLPD of the SAPGUI (unpack there).
1. Definition of a frontend printer
You create a frontend printer with access method 'F' in Transaction SPAD. You do not have to enter a formatting
server or a destination host.
In Release 3.X, you should fill these fields with invalid values, or use Transaction SPAT to define the frontend
printers in Release 3.1X. Do not set the indicator 'Do not request output status from host system', which appears
on the second page of the printer definition.
SPAT no longer displays these fields and ensures that these fields are set correctly. As of Release 4.0A, these
functions are integrated into SPAD.
Caution!!! If the printer is initially created with a different access method and the flag is set, in older releases the
flag remains set even if the access method is changed to 'F'. This results in termination of frontend printing. In
this case, change the access method to 'L' for example, delete the flag, and reset the access method to 'F'.
If no language is entered on the front page of the frontend printer, then as of Rel. 4.5B (or Patch Kernel, which
contains Spool Patch Collection 14 (see Note 92482)) the logon language used, is the languageset in user default
values of the user who is currently printing.
The easiest way to define the frontend printer is with the Device type SAPWIN (or SWIN as of Release 4.0) and
the host printer name __DEFAULT ( put 2 underscores before DEFAULT ). However, this is only possible if the
Program SAPLPD (in the subdirectory SAPLPD of the SAPGUI) is installed on the frontends and no other LPD (for
example TCP/IP Print service) is running at the same time on port 515.
(The port for frontend printing can be redefined by setting the environment variable LPRINT_PORT to 516 for
example. This automatically starts the SAPLPD on the new port during first printing. )
SAPLPD should be used for frontend printing for the following reasons:
a) The Device type SAPWIN/SWIN can be used for all printers.
b) The Printer name __DEFAULT automatically uses the default printer.
c) SAPLPD is started automatically if no LPD is running on the computer.
you do not want to use an SAPLPD, you must note the following:
2. Required configurations for frontend printing
In order for frontend printing to function, you must adjust certain settings in the system:
a) The host name of the frontend must be maintained according to Note 52967. (Call SAPLPD manually as a test and
check whether the host name appears in the window). Otherwise, SAPLPD will report an error at every start, and the
connection will probably not be set up. It may be helpful to start the SAPLPD manually beforehand.
b) If you print via an SAProuter you must enable the connection from the frontend to the gateway on this SAProuter. To
do this you must enter the line (see also Note 30289)
P * <Gateway_computer> sapgw<Instance number>
After you enter the line saprouter -n, the changes become effective.
a) Even without SAProuter the entry sapgw<instance number> must be contained in the /etc/services (UNIX) or
\WINNT\system32\drivers\etc\services.
b) Another setting which must be checked is the profile parameter abap/no_sapgui_rfc. This must not be set to 1.
c) In Release 3.X, the users of frontend printing need even more authorizations in order to be able to access the print data:
All users get authorizations to the object S_DATASET for
program 'SAPLLPRF' ['SAPLSPOO' for older releases]
Activity '06', '33-34'
File name '*'
Note: This authorization is also required for frontend printing
in the Web (see Note 351230).
In addition, an authorization for Object S_PATH is required.
Activity '*'
authorization group. 'SPOF'
To do this, define the Group 'SPOF' with Transaction SM30 in view V_SPT
and enter the path '/usr/sap/<DB-Name>/<SID>/data' for the
Authorization group 'SPOF' in Table SPTH.
Otherwise, a termination occurs with OPEN_DATASET_NO_AUTHORITY. In Release 4.X, these
authorizations are no longer needed.
a) Apart from the authorization for the respective R/3 printer every user must also have the Authorization '%LOC' in the
Authorization object 'S_SPO_DEV' Authorization field 'SPODEVICE', so that he/she can operate the frontend print.
b) The Profile parameter rspo/local_print/method should not be set to 0 if you want to be able to print in the update. It is
best not to set the parameter at all.
c) As of Release 4.0 users require the following values in Authorization object S_RFC (refer to Note 93254):
RFC_TYPE 'FUGR'
RFC_NAME 'LPRF'
ACTVT 16
d) If a firewall is used, the only port that should be enabled for printing is Port 32<SID> which is already used for the
Gui. If you use LPRINT, Port 33 <SID> should also be enabled for the RFC.
1. Use
The use of a frontend printer defined this way for a user is quite simple. The printers, like all other printers, can
be used with (and without) the option 'immediate printing' (taking the requirements mentioned in the subsection
'restrictions' ) into account. This was not possible with the old 'local printing' from SP01. A reprint on the
frontend printer can be carried out - as with any other printer - by an additional output to the printer in
Transaction SP01.
2. Mode of operation
a) Release 3.0D to 4.5B
This section explains how frontend printing is technically implemented (in the newest version;
that means after importing the Support Packages and patch kernels) and clarifies the causes of the restrictions
and problems.

Creating an output request is carried out in the C kernel of the R/3 System. As no connection to
the frontend can be carried out from the C core, an asynchronous ABAP function module must be called up which
is processed in dialog. This asynchronous call requires a new dialog process.
In older releases, this asychronous function module directly processed the output request. This
function module was called in asynchronous mode for every print request. Therefore, many resources were
required (one session and one dialog each).
With the update described above, the core writes an entry to the new Table TSP02F (if the
conditions for WEB printing have already been met, Table TSP02FX now enhanced by a sessionID is used) before
calling
the ABAP function module. In this entry all frontend prints to be processed are listed. The ABAP function module
now processes all entries for the user at the respective frontend. If an additional print request should follow in
this time, the ABAP function module is called up. However, it exits immediately because the print requests of
table TSP02F (TSP02FX) are already being processed. In this case, an ABAP enqueue is set and it is not cleared if
serious errors occur. The user cannot use the frontend printing function until this lock is eliminated. If the user
calls up the "Utilities->Restart frontend print" function in SP01, he gets the message "Reactivation has already
been implemented" in the status line. Using Transaction SM12, the administrator can then delete the lock on
Table TSP02F for the user in question.
a) As of Release 4.6A
As of Release 4.6, frontend print requests are processed in the spoolwork process. In the dialog or
update step, a message is simply sent to the spool process stating that the print request should be processed.
This no longer differentiates this type of print from the traditional type. In particular, the restrictions, due to
dialog timeouts in the format of the print request cease to apply. An ABAP formroutine is called up to send the
completed data. This form routine then sends the data to the frontend by RFC. This RFC requires a dialog
process at short notice for its work. However, the dialog resources are used a lot less than before.
If locks remain on TSP02F in this version, reactivating old requests will no longer work. However,
printing new requests is not affected.
In addition, remember that only one spoolwork process per spool server is used for frontend
printing in the standard system, even when several spool processes are defined on an instance. The
rdisp/wp_no_spo_Fro_max and rdisp/wp_no_spo_Fro_min parameters control the reservation of spool processes
for frontend printing. Refer to the documentation to see exactly how the parameters work.

All Releases (additional processing is release-independent!)


The ABAP function module then attempts to set up a connection to the frontend. To transfer data to the frontend
a new session is required. The following methods are tested one after the other:

 Printing in the running SAPGUI. This method is the safest method and should not cause any further connection problems. You
could possibly obtain one of the newer GUIs and then use it to log on to older R/3 Systems.

 Printing in the RFC server LPRINT. For this there is an RFC destination 'LOCAL_PRINT' in R/3 (Transaction SM59 TCP/IP
connections). This destination is defined in such a way that the RFC server LPRINT is started at the frontend for every printout.
This causes problems if the SAProuter is configured with a one-time password. In this case no connections can be set up to R/3
from the frontend.

 Printing with WS_DOWNLOAD and WS_EXECUTE. In this case, the print data is first transferred to the frontend by means of
DOWNLOAD. Then Program LPRINT is started, which reads the data and forwards it. This method is used as a workaround
because it is not possible to confirm whether the data has arrived at the LPD. This method does not work in the update either.

All three methods then forward the print data to the (SAP)LPD which is then responsible for the printing.
1. Configuration options
In Table TSPOPTIONS, you can configure some (case-sensitive) parameters for frontend printing. In new releases
these parameters can also be accessed using Transaction SPAD Settings->Spool system.
(As of Release 4.6C you should only configure the settings using Transaction SPAD, as the entries will not have
an immediate effect otherwise (Cache))
In older releases, you must maintain the table directly, using Transaction SE16.
a) SAPLPD
determines the start command if no LPD is running. Default: SAPLPD\SAPLPD.EXE -I
a) LPRINT_DEST
determines the start destination for the frontend print. Default:
"SAPGUI", other options: "LOCAL_PRINT", "DOWNLOAD".
a) LPRINT_NUM
specifies the total number of all frontend prints carried out in the system. It should not be
changed manually.
a) FRONT_TRACE
activates the trace for frontend printing (in the dialog process). Default: 0, other options 1.
Caution: This flag may only be set in a 3.X system if the 3.1I patch kernel referred to above is being used.
Otherwise, this will cause a RABAX. No restriction exists under Release 4.X.
a) LPRINT_EXEC (as of Release 4.6A)
Sets the program to be called with the DOWNLOAD method. Default: "lprint".
1. Problems in older releases (occurred before use of the updates listed under 'Required components').
a) Code page <> 1100 or code page of application server <> Frontend. Various problems occurred here, all of which
should now be solved. Possible error messages in the SAPLPD are:
Error: Controlfile is missing (protocol or network problem)!
Error: Controlfile missing !?!
Error: Format error in 'receive control file'
a) Temporary file not deleted. If an error occurred, the temporary file created in the data directory was not deleted
afterwards.
b) Blanks in the user ID or host printer name. If the data transmission method 'DOWNLOAD' was used, blanks caused
errors. (With the Support Packages user names may contain 1 blank; if a user name does not have a blank, an _ will be
added. Release 4.6A allows for multiple blanks and avoids using an _).
c) Printing via SAProuter. This might not be possible with the destination LOCAL_PRINT. Therefore the other methods
were developed.
d) SAPLPD is not started automatically. This error was observed under WIN3.X in earlier versions of the LPRINT.
e) S_DATASET authorizations for users. These became unnecessary as of Release 4.X
f) If you use the method 'SAPGUI' to transfer the data, the network load is twice as high as with the 'LOCAL_PRINT'
method. This was corrected as of SAPGUI 4.5B/4.6A (in the lprintg.log you should find version number 20.12c or 21.02).
1. Known problems with the current solution
a) Novell TCP/IP. Printing is not possible with Novell 16-bit client. Use the 32-bit version (Note 79353).
2. Debugging
A trace of the frontend RFC server is created if you set the Variable DPTRACE on the frontend to the value 3
(when using the LPRINT version 20.38 or for the 4.6A GUI). You can make this setting in newer SAPlogon versions
by going to 'Settings->SAPGui Trace' (to do this, left-click with the mouse on the upper left-hand corner of the
window frame in the SAPlogon and set 'Options->Activate sapgui trace level' to 3) or by setting the variable
DPTRACE in the environment.
NT: ControlPanel->System->Environment create entry DPTRACE value 3.
restart system or stop all NTVDM processes.
WIN: Add line set DPTRACE=3 to your AUTOEXEC.BAT and reboot.
In older releases it is sufficient to set DPTRACE to 2. However, in addition you must set the trace flag for the RFC
destination (SAPGUI or LOCAL_PRINT under TCP/IP links with Transaction SM59). (With the destination SAPGUI, it
might not be possible to set the trace flag, therefore it was changed to DPTRACE=3 (as of 4.6A GUI)).
When printing in the GUI, a file 'lprintg.log' is generated. When printing in LPRINT, the file is called 'lprint.log'. If
several prints are in process at the same time, the files 'lprintg2.log' or 'lprint2.log' are also written.
You can also determine your current LPRINT version without printing, by setting the Variable DPTRACE to the
value 3 (see above).Then call LPRINT without parameters from the command line and open the file 'lprint.log'.
There you should find the line 'This is LPRINT version 20.XX' If this line is missing, the LPRINT is too old. As of
Version 20.39, the LPRINT delivers the version identification with each call up, even those made without a
parameter.

Solution
Use the Support Packages, patch kernels, LPRINT and SAPLPD versions mentioned in section 'Preconditions'
subpoint 'Required components'.
In addition, carry out the 'required configuration for frontend printing'.

To print with the Windows Terminal Server (WTS), see Note 150533.

Front-end printing in BSP applications


You call a Business Server Pages application with an URL in the Web browser.
When you try to print on a printer defined with access method 'F', there is no print output and the relevant spool
request remains in the 'Is waiting' status.

Other terms
BSP BALANCED_SCORECARD LOCL

Reason and Prerequisites


You need a GUI connection to the front end for front-end printing. This connection is not established if the
application is only called in the browser.

Solution
1. Use a printer that was defined with access methods S, U, L or C.
2. Create an output device with access method M (Mail) as described in note 311037.
The method described in note 351230 does not work with BSP applications because the HTML pages are
generated by the Web Application Server (Web AS) and not by the Internet Transaction Server (ITS).

Troubleshooting frontend printing


I have problems with frontend printing. How can I identify the cause?

Other terms
Trace lprint.exe lprint debugging

Reason and Prerequisites


Error analysis

Solution
As of 4.6A, frontend printing runs through the following steps
in the system (unless configured otherwise):
1. The print request is generated in the dialog or in the update.
2. Print data is generated in the spool work process.
3. In SWP, data is sent to the frontend RFC server in the SAPGUI.
4. Data is sent from the RFC server to the SAPLPD.
5. Data is processed in SAPLPD.
Unfortunately, problems can occur in each individual step.
First, switch on all traces in the SAP system:
In the SPAD enter Level 2 & function trace for the relevant printer and enter a 1 in the initial SPAD screen under
Settings->Spool System ->Frontend printing in the trace level field.
1. Has a message been sent to the SWP? Using 'print immediately', print, for example, the screen of the SM50 and then, in the trace,
search for the dialog process which processed the request. The following line must appear at the end of the processing:
S Send Message (P) to Spoolserver <servername>
If this line is missing, a print request is not even being generated, and it is very likely that normal
printing is also affected.
If only one user cannot print, there may still be a lock on Table TSP02F (or TSP02FX). Simply search for
locks on the table in lock management (SM12).
1. The server name which should have executed the print request appears in the above trace line. This name can also be found in
Support Package 01 with the output request under Order Information->Internal Information in the Servername field. The spool
request should be processed on this server. Look on this server in the relevant spool trace files. The following line should appear
there:
sending job ... to printer
1. To send the data to the RFC server, the following lines should follow:
S FRONTEND call LOCAL_TCP
S SAPLPD command is SAPLPD\SAPLPD.EXE -I
S trying method SAPGUI
This tells you that printing is carried out using the RFC server SAPGUI. You can also see this information
in the output request in the status under Events. The following line should appear here:
Frontend printing via destination SAPGUI.
If an LPD is already running on the frontend, only one line will appear in the trace file:
S < -- TCP_OPEN (msg = , ret = 00000, retcode = 0)
Retcode 0 means that an LPD has been found. If the SAPLPD has yet to be started, the following lines
will appear:
S < -- TCP_OPEN (msg = , ret = 00000, retcode = 2)
S --> TCP_START
S < -- TCP_START (msg = , retcode = 0)
S --> TCP_OPEN
S < -- TCP_OPEN (msg = , ret = 00000, retcode = 0)
The SAPLPD is started first with TCP_START, as shown in the command above. The following TCP_OPEN
then finds the newly started LPD as before, as if it had been running from the beginning.
The following lines should then appear:
S RSPO_LOCAL_TCP sending data file
S --> TCP_WRITE_BINARY ( <No. of bytes>)
S < -- TCP_WRITE_BINARY (msg = , retcode = 0)
[Potentially several times, depending on the size of the print file, and finally:]
S --> TCP_CLOSE
S < -- TCP_CLOSE (msg = , retcode = 0)
1. To see whether the data reaches the frontend and how exactly the SAPLPD is started, if appropriate, exit saplogon.exe and set the
DPTRACE environment variable to 3. Then start saplogon.exe again and repeat the print. In the SAPWorkDirectory you will now
find the file lprintg.log.
This file should appear as follows:
No port defined
Port is 515
This is LPRINTG version 21.02
NiRawConnect failed with code = -10 [If no LPD is running]
Trying to start SAPLPD\SAPLPD. EXE -I-r515
TCP_WRITE_BINARY called
TCP_READ_BINARY called
The last two commands will then appear repeatedly, until the following
finally appears at the end:
TCP_CLOSE called
1. To debug the SAPLPD during frontend printing, you can either start it before printing in Debugging, or modify the SAPLPD start
command in the SAP system in the SPAD under Settings->Frontend Printing and enter a -d9 or -g9 in the command. These
additional parameters may not, however, appear at the end, but should be added before the -I.

Spool work process hangs during front-end printing


CAUTION! The problem is solved with a SAPGUI patch, see Note 365939. The following note is only valid if you do
not use the GUI patch.
A frontend print request remains in the "in process" status, all additional print requests which are being
processed by the same server, hang in the "waiting" status.The work process has a "STOPPED CPIC" status in the
process overview.

Additional key words


LOCL, frontend printing, SAPLPD

Cause and prerequisites


This note is not a solution to the basic problem. It only offers instructions as to how you can eliminate the
symptom so that the system continues processing frontend print requests.You should nonetheless report this
problem to SAP because it is probably the result of a program error.

Solution
1. In the Process Overview (Transaction SM50), select the work process that has the "STOPPED CPIC" status.
2. Switch to the detail display, and click on the line where the "communication ID" is highlighted in green.
3. You then branch into the Gateway Monitor. Select the disrupted connection and select Edit -> Delete connection.
Then the system continues processing the frontend print requests.

Dynamic IP addresses and SAPLPD


You want to assign dynamic IP addresses to PCs, for example, via DHCP and still be able to print to an SAPLPD on
these PCs.

Other terms
Destination host

Solution
Unfortunately, this is not possible. The IP addresses are buffered in R/3 and it would be too costly to permanently
delete these buffers.
Front end printing via the SAPGUI link has been available since Release 3.1G. This also solves the problem of
dynamic IP addressing (note 114426).

Frontend printing in non-code page 1100 systems


On application servers which do not run on code page 1100, problems may develop with kernel Releases 3.1G,
3.1H and 4.0A.
These cause SAPLPD to report either formatting errors in the control file or missing control files. Furthermore,
characters may be printed incorrectly.
In addition there is an ABAP problem in Releases 3.1G, 3.1H, 3.1I, 4.0A, 4.0B which may cause this error if the
front end is not running on code page 1100 (see Note 107431).
Additional key words
LPRINT, code page conversions, local printing, SAP_CODEPAGE, PATH_TO_CODEPAGE

Cause and prerequisites


Data is transferred as text and is therefore converted when you transfer it by RFC. This is not carried out
correctly for all code page combinations.

Solution
Use Hot Packages from Note 114426.
Note 89905 also becomes obsolete upon implementation of this note.

Frontend printing code page <> 1100


Message from SAPLPD:
Error: Controlfile is missing (protocol or network problem)!
Frontend printing is not possible.

Additional key words


Local printing, PATH_TO_CODEPAGE, SAP_CODEPAGE

Cause and prerequisites


This is caused by an ABAP program error which occurs if the frontend is not running with code page 1100. Use
report RSCP0013 to determine the code page on which the frontend is running (SAPGUI character set).

Solution
Hot Packages are available for 4.5A, 4.0B, 4.0A, 3.1I, 3.1H, 3.0F and
3.0D.
(See Note 114426)

Você também pode gostar