Kbase 20855: Error 6063 and Native 4GL compile with ibm273 AS/400
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/16/2008 |
|
SUMMARY:
This solution provides a possible workaround for compilation errors that can occur with the Progress Native 4GL client after an upgrade of the Progress/400 DataServer to Version 9.1 from Version 9.0A or an earlier version.
EXPLANATION:
In versions prior to 9.1, Native 4GL code page conversions are handled by the AS/400. Starting with Version 9.1, code page conversions are implemented on the AS/400 by a convmap.cp file that resides in the AS/400 DataServer installation directory.
Currently, the convmap.cp file does not allow for all possible EBCDIC conversions. Consequently, if you have an AS/400 that uses the German/Austrian code page ibm273, you might encounter the following errors when you try to compile a native 4GL program:
Code page conversion table for IBM037 to ibm273 was
not found in convmap.cp. (6063)
You are using -cpinternal IBM037 and -cpstream ibm273.
(1535)
The table to convert -cpinternal to -cpstream was not
found in convmap.cp. (1546)
SOLUTION:
In order to resolve the problem, perform the following steps:
1) For recovery, save the current convmap.cp in the DataServer
installation directory.
2) Also save the convmap.dat and convmap.cp in the Windows
installation.
3) Create a new .dat file called EBCAS400.dat in the
prolang/convmap directory on the Windows installation, and add
the following conversion table and character attribute table:
#---------------------------------------------------------------------
------
# This contains the data needed to convert from
# ibm037 to ibm273
CONVERT
SOURCE-NAME "IBM037"
TARGET-NAME "IBM273"
TYPE "1"
/*000-015*/ 000 001 002 003 004 005 006 007 008 009 010 011 012 013
014 015
/*016-031*/ 016 017 018 019 020 021 022 023 024 025 026 027 028 029
030 031
/*032-047*/ 032 033 034 035 036 037 038 039 040 041 042 043 044 045
046 047
/*048-063*/ 048 049 050 051 052 053 054 055 056 057 058 059 060 061
062 063
/*064-079*/ 064 065 066 192 068 069 070 071 072 073 099 075 076 077
078 090
/*080-095*/ 080 081 082 083 084 085 086 087 088 161 252 091 092 093
094 176
/*096-111*/ 096 097 098 186 100 101 102 103 104 105 204 107 108 109
110 111
/*112-127*/ 112 113 114 115 116 117 118 119 120 121 122 123 181 125
126 127
/*128-143*/ 128 129 130 131 132 133 134 135 136 137 138 139 140 141
142 143
/*144-159*/ 144 145 146 147 148 149 150 151 152 153 154 155 156 157
158 159
/*160-175*/ 160 089 162 163 164 165 166 167 168 169 170 171 172 173
174 175
/*176-191*/ 074 177 178 179 180 124 182 183 184 185 095 079 188 189
190 191
/*192-207*/ 067 193 194 195 196 197 198 199 200 201 202 203 106 205
206 207
/*208-223*/ 220 209 210 211 212 213 214 215 216 217 218 219 208 221
222 223
/*224-239*/ 236 225 226 227 228 229 230 231 232 233 234 235 224 237
238 239
/*240-255*/ 240 241 242 243 244 245 246 247 248 249 250 251 187 253
254 255
ENDTABLE
ENDCONVERT
4) Add the EBCAS400.dat to the end of convmap.dat as:
# AS/400 EBCDIC conversions
INCLUDE
INCLUDE-FILE EBCAS400.dat
5) Recompile the convmap.dat file with PROUTIL, for example:
proutil -C codepage-compiler convmap.dat convmap.cp
6) When the convmap.cp file has compiled successfully, binary FTP
it to the AS/400 installation directory.
The native 4GL compilation should work now.
Reference to Written Documentation:
Progress/400 DataServer Guide.
Internationalization Guide.
Progress Knowledge Base Solution 16242, "How CONVMAP relates to code page and collation set".