Escolar Documentos
Profissional Documentos
Cultura Documentos
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.
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.
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 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.
You need to copy some files from sapservX via ftp in binary mode:
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.
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.
You need to copy some files from sapservX via ftp in binary mode:
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.
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.
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).
You need to copy some files from sapservX via ftp in binary mode:
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.
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.
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.
You need to copy some files from sapservX via ftp in binary mode:
.../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.
.../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!
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:
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.
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.
You need to copy some files from sapservX via ftp in binary mode:
.../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.
.../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!
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:
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.
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.
You need to copy some files from sapservX via ftp in binary mode:
.../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.
.../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:
COPY the files like Dfntis which contain the downloadable fonts,
COPY the files like Dfntis which contain the downloadable fonts,
You need to copy some files from sapservX via ftp in binary mode:
.../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.
.../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:
COPY the files like Dfntis which contain the downloadable fonts,
COPY the files like Dfntis which contain the downloadable fonts,
RESTART the application server,
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'.
Other terms
Smart Forms, SAPscript, PDF, OTF, device type, language, code page
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.
Other terms
JPSAPWIN, CNSAPWIN, JPHPLJ4, CNSAPWIN, TWSAPWIN, THSAPWIN, SAPWIN5, I2SWIN, I7SWIN, I9SWIN
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
Other terms
Japan, Japanese, Korea, Korean,Traditional Chinese Taiwan Simplified
Chinese, China,frontend, GUI, SAPGUI, 6.20
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:
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
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.
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.
incorrect font
Solution
To avoid formatting errors with the SAPscript print, do not enter any replacement fonts in the SAPlpd menu "font
replacement"!
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
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.
Other terms
Local printing, DHCP, frontend printing, RFCIO_ERROR, CPIC, LPRINT, RFC_NO_AUTHORITY
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.
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.
Other terms
BSP BALANCED_SCORECARD LOCL
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).
Other terms
Trace lprint.exe lprint debugging
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.
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.
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).
Solution
Use Hot Packages from Note 114426.
Note 89905 also becomes obsolete upon implementation of this note.
Solution
Hot Packages are available for 4.5A, 4.0B, 4.0A, 3.1I, 3.1H, 3.0F and
3.0D.
(See Note 114426)