.****************************************************************************** .* RXULS.IPF * .* Documentation for RxULS in OS/2 IPF format. * .* ¸ 2009 Alex Taylor * .* * .* LICENSE: * .* * .* Redistribution and use in source and binary forms, with or without * .* modification, are permitted provided that the following conditions are * .* met: * .* * .* 1. Redistributions of source code must retain the above copyright * .* notice, this list of conditions and the following disclaimer. * .* * .* 2. Redistributions in binary form must reproduce the above copyright * .* notice, this list of conditions and the following disclaimer in the * .* documentation and/or other materials provided with the distribution. * .* * .* 3. The name of the author may not be used to endorse or promote products * .* derived from this software without specific prior written permission. * .* * .* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR * .* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * .* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * .* DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, * .* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * .* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * .* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * .* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * .* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN * .* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * .* POSSIBILITY OF SUCH DAMAGE. * .****************************************************************************** :userdoc. :title.Soporte universal de idiomas de REXX .****************************************************************************** :h1 x=left y=bottom width=100% height=100% id=intro.Introducci¢n RxULS, el soporte universal de idiomas para REXX, proporciona una interfaz REXX a partes seleccionadas de la API de soporte universal de idiomas (ULS: Universal Language Support) de OS/2. :p.ULS se dise¤¢ para facilitar el desarrollo de aplicaciones internacionalizadas con el est ndar Unicode. Por este motivo, a veces ULS se denomina la ®API Unicode de OS/2¯. :p.Usando RxULS, ahora es posible&colon. :ul compact. :li.Buscar o transformar cadenas de texto de acuerdo con reglas espec¡ficas de perfiles nacionales. :li.Solicitar informaci¢n de perfiles nacionales. :li.Convertir cadenas de texto de una p gina de c¢digos a otra, incluidas codificaciones Unicode tales como UTF-8 y UCS-2. :li.Acceder a texto codificado en Unicode en el  rea com£n. :eul. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=unicode.¨Qu‚ es Unicode? Unicode es un est ndar de caracteres dise¤ado para permitir representar de forma interoperable en sistemas computacionales todos los caracteres posibles de todos los sistemas de escritura conocidos. :p.El est ndar Unicode cubre muchos aspectos diferentes de la codificaci¢n de texto. Uno de los m s importantes es su meta de asignar un valor num‚rico £nico a pr cticamente cada car cter en existencia. La parte del est ndar que define estas correspondencias tambi‚n se conoce como Conjunto Universal de Caracteres o UCS (Universal Character Set), y hace posible que se representen de forma consistente y sin ambig�edad un amplio abanico de caracteres £nicos de muchos idiomas diferentes. :p.El ULS de OS/2 s¢lo admite el Plano 1 de UCS (el Plano Multiling�e B sico), pero a pesar de ello cubre casi todos los idiomas usados actualmente en el mundo. :p.El est ndar Unicode es mantenido por el Consorcio Unicode (https&colon.//www.unicode.org/). .****************************************************************************** :h1 x=left y=bottom width=100% height=100% id=using.Usar el soporte universal de idiomas de REXX Como con todas las bibliotecas REXX, deben registrarse las funciones de RxULS antes de poder usarlas. Se puede utilizar la funci¢n :link reftype=hd refid=ulscontrol.ULSLoadFuncs:elink. para registrar todas las funciones de RxULS de una sola vez. :xmp. CALL RxFuncAdd 'ULSLoadFuncs', 'RXULS', 'ULSLoadFuncs' CALL ULSLoadFuncs :exmp. :p.De forma parecida, :link reftype=hd refid=ulscontrol.ULSDropFuncs:elink. desregistra todas las funciones de RxULS. :xmp. CALL ULSDropFuncs :exmp. :p. :p.El resto de este cap¡tulo contiene diversas notas sobre el uso de RxULS y trabajar con Unicode y p ginas de c¢digos. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=codepages.P ginas de c¢digos Internamente, los ordenadores representan todos los datos (ya sean texto, im genes, c¢digo ejecutable o cualquier otra cosa) como secuencias de n£meros binarios de 8 bits llamadas bytes. Una :hp2.p gina de c¢digos:ehp2. no es m s que una tabla de asignaciones utilizada para traducir bytes a texto legible por seres humanos. Cuando se intenta ver bytes como texto, el ordenador utiliza la p gina de c¢digos que est‚ activa actualmente para determinar qu‚ caracteres est n representados por los diversos valores de los bytes. :p.Por motivos principalmente hist¢ricos, la mayor¡a de p ginas de c¢digos s¢lo admiten uno o dos conjuntos de caracteres de idiomas espec¡ficos. Y, puesto que gente distinta tiene necesidades distintas, se han definido una inmensa cantidad de p ginas de c¢digos diferentes. :p.Cada sesi¢n de OS/2 tiene una p gina de c¢digos espec¡fica activa, conocida como la :hp2.p gina de c¢digos del proceso:ehp2.. Se puede utilizar el mandato :hp2.CHCP:ehp2. para cambiar la p gina c¢digos del proceso, pero s¢lo a una p gina de c¢digos especificada en la directiva :hp2.CODEPAGE:ehp2. del archivo CONFIG.SYS. Se puede utilizar un m ximo de dos p ginas de c¢digos a la vez de esta forma, y s¢lo se admiten ciertas p ginas de c¢digos. :p.Usando RxULS se puede convertir texto de una p gina de c¢digos a otra, o a y desde diversas codificaciones Unicode, sin necesidad de cambiar la p gina de c¢digos del proceso. :p.En el :link reftype=hd refid=appa.Ap‚ndice A:elink. hay una lista de las p ginas de c¢digos de OS/2. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=utf.Codificaciones de texto Unicode El texto Unicode se puede codificar de varias formas distintas. ULS, y por tanto RxULS, admiten tres de estas codificaciones. Como todas las dem s codificaciones nativas de OS/2, est n presentes como p ginas de c¢digos del sistema. :dl break=all. :dt.UCS-2 (p gina de c¢digos 1200) :dd.La codificaci¢n Unicode m s antigua y simple, en la que cada car cter es un valor entero de longitud fija de dos bytes correspondiente a su n£mero UCS asignado. OS/2 utiliza UCS-2 para procesamiento interno, pero no es adecuada como formato de salida, ya que ‚sta contendr  ceros intercalados. :dt.UTF-8 (p gina de c¢digos 1208) :dd.Una codificaci¢n de longitud variable, en la que cada car cter se representa mediante entre uno y cuatro bytes dependiendo de su valor UCS. UTF-8 tiene muchas propiedades dise¤adas para hacer ventajoso su uso para el intercambio de datos. Es compatible hacia atr s con el texto ASCII de byte simple (todo el texto ASCII es tambi‚n v lido como texto UTF-8); en promedio requiere un poco menos de espacio que UCS-2 y utiliza un algoritmo de codificaci¢n robusto que garantiza que un byte perdido o corrupto puede comprometer el car cter actual, pero no el resto de la secuencia de datos. :p.Por otra parte, el algoritmo UTF-8 es bastante complejo, lo cual puede ralentizar el resto del sistema en determinadas circunstancias. Por este motivo, generalmente se usa para el intercambio y como salida antes que para procesamiento interno. :dt.UPF-8 (p gina de c¢digos 1207) :dd.Es una codificaci¢n privada de longitud variable espec¡fica de OS/2, dise¤ada para su uso en Presentation Manager. UPF-8 necesita de uno a tres bytes para representar cada car cter, pero necesita menos potencia de c lculo que UTF-8. No deber¡a utilizarse para intercambio de datos. :edl. :p.Tanto UCS-2 como UPF-8 son de uso limitado en un entorno REXX. UCS-2 no se puede usar como salida de texto, y no se usa com£nmente para intercambio de datos. UPF-8 tampoco se puede usar para el intercambio, siendo un formato propio espec¡fico de OS/2, y s¢lo se puede usar eficazmente para salida de datos en Presentation Manager, cuando la p gina de c¢digos de la cola de mensajes puede modificarse en tiempo de ejecuci¢n (lo cual por lo general no es posible desde REXX). :p.Consecuentemente, probablemente UTF-8 sea la codificaci¢n Unicode m s £til desde el punto de vista de un programador de REXX. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ucs2.Trabajar con texto UCS-2 ULS codifica internamente todo el texto Unicode en formato UCS-2. Con toda probabilidad, por lo general vd. trabajar  con texto que se ha convertido a una p gina de c¢digos espec¡fica. Sin embargo, es posible devolver datos directamente en formato UCS-2 desde las funciones de RxULS especificando la 1200 como p gina de c¢digos de salida. :p.Mientras que la presencia de caracteres nulos (bytes cero) intercalados en los datos UCS-2 presenta problemas para lenguajes de programaci¢n como C, REXX no padece tales limitaciones. Por tanto, se puede utilizar funciones est ndar de REXX para trabajar con cadenas UCS-2. Sin embargo, es importante recordar que en UCS-2 cada car cter corresponde a dos bytes en vez de uno solo. Por este motivo, debe tenerse cuidado de mantener la integridad de los caracteres al usar funciones REXX ®normales¯ para manipular datos UCS-2. (La misma precauci¢n procede al trabajar con texto en p ginas de c¢digos DBCS o MBCS.) .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=parameters.Par metros comunes Diversas funciones RxULS deben manipular texto o convertirlo de una p gina de c¢digos a otra. Muchas de estas funciones admiten algunos o todos los par metros comunes que se listan debajo. En vez de repetirla en la descripci¢n de cada par metro, aqu¡ est  reunida toda la informaci¢n sobre los mismos. :ul compact. :li.:link reftype=hd res=2041.p gina de c¢digos:elink. :li.:link reftype=hd res=2042.reemplazo:elink. :li.:link reftype=hd res=2043.bytes de control:elink. :li.:link reftype=hd res=2044.v¡a de acceso:elink. :li.:link reftype=hd res=2045.perfil nacional:elink. :eul. .* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - :h3 x=left y=bottom width=100% height=100% res=2041 id=parm_codepage.p gina de c¢digos Este par metro especifica un n£mero de p gina de c¢digos de OS/2. Debe ser un valor entero positivo; actualmente no se admiten los alias de texto. No preceda el n£mero de la p gina de c¢digos con ®IBM-¯ o ning£n otro texto. :p.Se puede utilizar cualquier p gina de c¢digos soportada por OS/2 (en otras palabras, no se est  limitado a los valores de p gina de c¢digos de proceso definidas en el archivo CONFIG.SYS). En el :link reftype=hd refid=appa.Ap‚ndice A:elink. encontrar  una lista completa de las p ginas de c¢digos de OS/2. .* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - :h3 x=left y=bottom width=100% height=100% res=2042 id=parm_subchar.reemplazo Este par metro especifica el car cter que se utilizar  para sustituir los caracteres no admitidos cuando se convierta texto a la p gina de c¢digos destino. Es un valor hexadecimal de dos cifras entre 00 y FF correspondiente al car cter utilizado, en la p gina de c¢digos de destino, para representar los caracteres sustituidos (es decir, no admitidos). :p.El valor por omisi¢n depende de la p gina de c¢digos; para la mayor¡a de p ginas de c¢digos de PC de byte sencillo es 0x7F (&house.). :p.No se admite este valor cuando la p gina de c¢digos destino es de doble byte (DBCS), y el car cter de reemplazo por omisi¢n es tambi‚n de doble byte. En tal caso siempre se utilizar  el car cter por omisi¢n. .* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - :h3 x=left y=bottom width=100% height=100% res=2043 id=parm_controls.bytes de control Este par metro es el indicador de acci¢n de los bytes de control. :p.Los bytes con valores de 0x00 a 19 y 0x7F tienen funciones duales. En la especificaci¢n ASCII original, representan c¢digos de control que modifican una secuencia de datos (por ejemplo, 0x0D es el car cter ®fin de l¡nea¯). Sin embargo, en algunos contextos (especialmente entornos gr ficos tales como el Presentation Manager), en su lugar los bytes con estos valores a menudo se utilizan para representar ciertos caracteres. :p.El prop¢sito de este par metro es especificar c¢mo deber¡an interpretarse estos bytes durante la conversi¢n de una p gina de c¢digos a otra. S¢lo se tiene en cuenta el primer car cter del valor del par metro, que (si se especifica) debe ser uno de los siguientes&colon. :dl break=all. :dt.:hp2.D:ehp2.ATOS :dd.No convertir en absoluto los bytes con estos valores, sino dejarlos sin cambios en el texto de salida. Es la acci¢n por omisi¢n. :dt.:hp2.G:ehp2.LIFOS :dd.Suponer que estos bytes corresponden a caracteres representables, y convertirlos de acuerdo con la p gina de c¢digos como cualquier otro. :dt.:hp2.C:ehp2.ONTROL :dd.Suponer que estos bytes representan c¢digos de control, y convertirlos utilizando la correspondencia est ndar de bytes de control de IBM. :dt.:hp2.L:ehp2.ÖNEAS :dd.Tratar los bytes de ®divisi¢n de l¡nea¯ (0x0D/retorno de carro y 0x0A/nueva l¡nea) como c¢digos de control y todos los dem s como glifos. :edl. .* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - :h3 x=left y=bottom width=100% height=100% res=2044 id=parm_path.v¡a de acceso Este par metro es el indicador de conversi¢n de v¡as de acceso para DBCS. S¢lo es aplicable a las p ginas de c¢digos DBCS, e indica si deber¡a suponerse o no que el texto que se va a convertir contiene una especificaci¢n de v¡a de acceso. :p.Algunas p ginas de c¢digos DBCS asi ticas que por lo dem s son compatibles con ASCII sustituyen el car cter ASCII ®contrabarra¯ (®\¯, 0x5C) con un s¡mbolo monetario asi tico (Yen, Yuan, o Won) y el car cter ASCII ®tilde¯ (®~¯, 0x7E) con el de gui¢n alto. El prop¢sito de este par metro es especificar c¢mo deber¡an interpretarse estos caracteres al convertir desde o a una de estas p ginas de c¢digos. :p.S¢lo se tiene en cuenta el primer car cter del valor par metro, que (si se especifica) debe ser uno de los siguientes&colon. :dl break=fit. :dt.:hp2.Y:ehp2.ES (s¡) :dd.Suponer que el texto puede contener una v¡a de acceso; convertir 0x5C a la contrabarra ASCII, y 0x7E a la tilde ASCII. Es la acci¢n por omisi¢n. :dt.:hp2.N:ehp2.O :dd.Suponer que el texto no contiene una v¡a de acceso; convertir 0x5C al s¡mbolo monetario condensado, y 0x7E al gui¢n alto condensado. :edl. :p.Con este par metro en efecto, al especificar :hp1.v¡a de acceso:ehp1.=:hp2.Y:ehp2., los valores 0x5C y 0x7E se tratar n como contrabarra y tilde (respectivamente) al convertir :hp2.a:ehp2. otras p ginas de c¢digos. Al convertir :hp2.desde:ehp2. otras p ginas de c¢digos, tanto la contrabarra como el s¡mbolo monetario se convertir n en 0x5C y tanto la tilde como el gui¢n alto se convertir n en 0x7E. :p.A la inversa, al especificar :hp1.v¡a de acceso:ehp1.=:hp2.N:ehp2., 0x5C y 0x7E ser n tratados como el s¡mbolo monetario y el gui¢n alto (respectivamente) al convertir :hp2.a:ehp2. otras p ginas de c¢digos. Al convertir :hp2.desde:ehp2. otras p ginas de c¢digos, el s¡mbolo monetario se convertir  en 0x5C y el gui¢n alto en 0x7E; sin embargo, la contrabarra y la tilde se tratar n como caracteres no existentes y se sustituir n por s¡mbolos de reemplazo. :nt.Todos los valores de caracteres sem nticos afectados por esta opci¢n (contrabarra, tilde, gui¢n alto, y los diversos s¡mbolos monetarios) se refieren s¢lo a las formas de byte sencillo (condensadas o de media anchura, ®half-width¯). Las p ginas de c¢digos DBCS pueden contener formas de doble byte (de ancho completo, o ®full-width¯) de todos estos caracteres, que no se ven afectadas por el par metro :hp1.v¡a de acceso:ehp1..:ent. :p. :p.:hp7.Ejemplo:ehp7. :p.Puesto que las implicaciones de este par metro pueden ser confusas, se ilustran aqu¡ con algunos ejemplos. :p.Como ejemplo, se muestra en las siguientes tablas las posibles conversiones entre la p gina de c¢digos 932 (japon‚s) y tanto UCS-2 como p gina de c¢digos 850 (Lat¡n-1 para PC). :p. :p.:hp2.Cuando :ehp2.:hp3.v¡a de acceso:ehp3.:hp2.=Y:ehp2. :table cols='10 10 10 10 20' rules=vert. :row. :c.:hp5.De 932:ehp5. :c.:hp5.A/de UCS-2:ehp5. :c.:hp5.A 932:ehp5. :c.:hp5.A 850:ehp5. :c.:hp5.Tratar como car cter:ehp5. :row. :c.0x5C :c.U+005C :c.0x5C :c.0x5C :c.Contrabarra (\) :row. :c.0x7E :c.U+007E :c.0x7E :c.0x7E :c.Tilde (~) :row. :c.- :c.U+00A5 :c.0x5C :c.0xBE :c.Yen (¾) :row. :c.- :c.U+203E :c.0x7E :c.0xEE :c.Gui¢n alto (î) :etable. En este ejemplo, convertir 0x5C desde la p gina de c¢digos 932 lo har¡a convertirse en U+005C en UCS-2 (p gina de c¢digos 1200), o 0x5C (contrabarra) en p gina de c¢digos 850. Convertir U+005C de UCS-2 de nuevo a la p gina de c¢digos 932 lo volver¡a a convertir en 0x5C. :p.Sin embargo, convertir U+00A5 de UCS-2 a la p gina de c¢digos 932 tambi‚n producir¡a el valor 0x5C. Se convertir¡a en 0xBE (¾: yen) si se estuviera convirtiendo a la p gina de c¢digos 850. .* When PATH=YES .* From 932 Treat As UCS-2 To 932 To 850 .* 0x5C HW backslash U+005C 0x5C 0x5C .* 0x7E HW tilde U+007E 0x7E 0x7E .* - HW yen U+00A5 0x5C 0xBE .* - HW overline U+203E 0x7E 0xEE :p. :p.:hp2.Cuando :ehp2.:hp3.v¡a de acceso:ehp3.:hp2.=N:ehp2. :table cols='10 10 10 10 20' rules=vert. :row. :c.:hp5.De 932:ehp5. :c.:hp5.A/de UCS-2:ehp5. :c.:hp5.A 932:ehp5. :c.:hp5.A 850:ehp5. :c.:hp5.Tratar como car cter:ehp5. :row. :c.- :c.U+005C :c.- :c.0x5C :c.Contrabarra (\) :row. :c.- :c.U+007E :c.- :c.0x7E :c.Tilde (~) :row. :c.0x5C :c.U+00A5 :c.0x5C :c.0xBE :c.Yen (¾) :row. :c.0x7E :c.U+203E :c.0x7E :c.0xEE :c.Gui¢n alto (î) :etable. En este ejemplo, convertir 0x5C desde la p gina de c¢digos 932 lo har¡a convertirse en U+00A5 (0x00A5) en UCS-2, o 0xBE (yen) en p gina de c¢digos 850. Volver a convertir U+00A5 de UCS-2 a la p gina de c¢digos 932 lo convertir¡a otra vez en 0x5C. :p.Sin embargo, convertir U+005C de UCS-2 a la p gina de c¢digos 932 producir¡a un car cter de reemplazo (indicando un car cter no existente). Se convertir¡a en 0x5C (contrabarra) de estar convirtiendo a la p gina de c¢digos 850. .* When PATH=NO .* Treat As To UCS-2 To 932 To 850 .* - HW backslash U+005C - 0x5C .* - HW tilde U+007E - 0x7E .* 0x5C HW yen U+00A5 0x5C 0xBE .* 0x7E HW overline U+203E 0x7E 0xEE .* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - :h3 x=left y=bottom width=100% height=100% res=2045 id=parm_locale.perfil nacional Este par metro es el nombre del perfil nacional cuyos atributos se usan. Normalmente los nombres de los perfiles nacionales tienen la forma :hp3.xx_YY:ehp3., donde :hp3.xx:ehp3. representa un idioma e :hp3.YY:ehp3. un pa¡s (v.g. &osq.:hp2.en_US:ehp2.&csq., &osq.:hp2.zh_TW:ehp2.&csq., &osq.:hp2.it_IT:ehp2.&csq., etc.) .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% res=2090.Manejo de errores Todas las funciones de RxULS escriben informaci¢n de errores a una variable global de REXX en el programa que las invoca, llamada :hp2.ULSERR:ehp2.. Esta variable tendr  el valor ®0¯ si la £ltima funci¢n RxULS llamada termin¢ con ‚xito su ejecuci¢n. :p.Siempre que ocurra un error en una funci¢n RxULS, establecer  como valor de la variable :hp2.ULSERR:ehp2. una cadena de texto de la forma ®:hp3.x:ehp3.:hp2.&colon. :ehp2.:hp3.texto:ehp3.¯, donde :hp1.x:ehp1. es un valor entero y :hp1.texto:ehp1. es una cadena de texto que apunta al error espec¡fico que ha ocurrido. (En la mayor¡a de los casos, :hp1.texto:ehp1. ser  el nombre de la llamada a la funci¢n interna que fall¢ y :hp1.x:ehp1. ser  el valor devuelto desde la funci¢n.) .****************************************************************************** :h1 x=left y=bottom width=100% height=100% id=functions.Funciones de RxULS .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulscontrol.Funciones de control de la biblioteca :hp7.ULSLoadFuncs():ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSLoadFuncs()ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.ULSLoadFuncs registra todas las dem s funciones de RxULS. No acepta par metros y no devuelve ning£n valor. :p. :p.:hp7.ULSDropFuncs():ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSDropFuncs()ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.ULSDropFuncs desregistra todas las funciones de RxULS (incluida ella misma). No acepta par metros y no devuelve ning£n valor. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulsconvertcodepage.ULSConvertCodepage :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSConvertCodepage( cadena ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ p g.c¢d.origen ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³  ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ pg.c¢d.destino ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ reempl. ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄ ³ ³ ÀÄ acontrol ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄ)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ vacc ÄÙ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Convierte una cadena de texto de una p gina de texto de una p gina de c¢digos a otra. No hay l¡mite superior a la longitud de la cadena. :p.Si no se especifica la p gina de c¢digos de entrada o de salida, se asume la p gina de c¢digos del proceso. Por tanto, si no se especifica ninguno de estos par metros, se devolver  la cadena de texto sin ning£n cambio. :p. :p.:hp7.Par metros:ehp7. :dl break=fit tsize=12. :dt.cadena :dd.El texto que se quiere convertir. Este par metro es obligatorio. :dt.p g.c¢d.origen :dd.La :link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. de origen. Es la p gina de c¢digos en que est  codificada :hp1.cadena:ehp1. (es decir, en la que se mostrar¡a correctamente). Si no se especifica, por omisi¢n es la p gina de c¢digos actual del proceso. :dt.pg.c¢d.destino :dd.La :link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. de destino. Es la p gina de c¢digos en que estar  codificada la cadena devuelta. Si no se especifica, por omisi¢n es la p gina de c¢digos actual del proceso. :dt.:link reftype=hd refid=parm_subchar.reempl.:elink. :dd.El car cter de sustituci¢n para la p gina de c¢digos destino. :dt.:link reftype=hd refid=parm_controls.acontrol:elink. :dd.El indicador de acci¢n de los bytes de control. :dt.:link reftype=hd refid=parm_path.vacc:elink. :dd.El indicador de conversi¢n de v¡as de acceso para DBCS. :edl. :p. :p.:hp7.Devuelve:ehp7. :p.El texto convertido. Si ocurre un error durante la conversi¢n, se devuelve una cadena vac¡a ("") y se establecer  un valor distinto de cero para la variable global ULSERR. :p. :p.:hp7.Ejemplo:ehp7. :xmp. /* Texto de entrada (en p gina de c¢digos 850) */ cadena = 'Almorzamos en un caf‚ de Reykjav¡k.' SAY '[P g. de c¢d. 850]&colon.' cadena /* Convertirlo a p g. de c¢d. 862, con ®?¯ (0x3F) para los caracteres inexistentes */ cadena2 = ULSConvertCodepage( cadena, 850, 862, '3f') IF ULSERR \= '0' THEN SAY ULSERR ELSE SAY '[P g. de c¢d. 862]&colon.' cadena2 /* Convertirlo a p gina de c¢digos 1200 (UCS-2) */ cadena3 = ULSConvertCodepage( cadena, 850, 1200 ) IF ULSERR \= '0' THEN SAY ULSERR ELSE SAY '[UCS-2]&colon. ' cadena3 :exmp. :p.Salida del ejemplo anterior&colon. :xmp. [P g. de c¢d. 850]&colon. Almorzamos en un caf‚ de Reykjav¡k. [P g. de c¢d. 862]&colon. Almorzamos en un caf? de Reykjav?k. [UCS-2]&colon. A l m o r z a m o s e n u n c a f é d e R e y k j a v í k . :exmp. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulscountrylocale.ULSCountryLocale :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSCountryLocale( n£mero )ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Devuelve el nombre del perfil nacional del sistema que corresponda al valor num‚rico suministrado. :p.La API de soporte universal de idioma usa un n£mero de entre uno y tres d¡gitos para identificar de forma £nica cada perfil nacional predefinido. Esta funci¢n permite consultar el nombre del perfil nacional que corresponde a un n£mero en particular. M s abajo hay una lista de n£meros conocidos. :nt.Este n£mero :hp2.no:ehp2. es el mismo que el c¢digo de pa¡s (tal como lo usan :hp2.DosQueryDBCSEnv:ehp2. y otras funciones), aunque hay un cierto grado de solapamiento entre los valores. De hecho, no parece que ninguna otra funci¢n de ULS u OS/2 use estos n£meros. Consecuentemente, esta funci¢n puede no tener muchos usos pr cticos, pero se ha incluido en el interfaz REXX por completitud.:ent. :p. :p.:hp7.Par metros:ehp7. :dl break=fit tsize=12. :dt.n£mero :dd.El n£mero del perfil nacional cuyo nombre se consulta (obligatorio). :edl. :p. :p.:hp7.Devuelve:ehp7. :p.El nombre del perfil, codificado en la p gina de c¢digos actualmente activa. :p. :p.:hp7.N£meros de perfiles:ehp7. :p.A continuaci¢n se incluye una lista de n£meros conocidos, junto al identificador de idioma de OS/2 que m s corresponde. (Gracias a Peter Koller por compilarlos.) ®*¯ indica que las funciones de OS/2 fuera de la API ULS no reconocen el nombre del perfil. :xmp. ULS IDIDIOMA (aprox.) NOMBRE DESCRIPCIàN 0 81 ja_JP Jap¢n (Japon‚s) 1 1 en_US Estados Unidos (Ingl‚s) 2 2 fr_CA Canad  (Franc‚s) 3 3 es_LA Latinoam‚rica (Espa¤ol) 7 7 ru_RU Rusia (Ruso) 20 785 ar_EG Egipto (µrabe) * 27 27 en_ZA Sud frica (Ingl‚s) 30 358 fi_FI_E Finlandia (Fin‚s) 31 31 nl_NL Pa¡ses Bajos (Neerland‚s) 32 32 en_BE B‚lgica (Ingl‚s) 33 33 fr_FR Francia (Franc‚s) 34 34 es_ES Espa¤a (Espa¤ol) 36 36 hu_HU Hungr¡a (H£ngaro) 39 39 it_IT Italia (Italiano) 40 40 ro_RO Ruman¡a (Rumano) 41 41 fr_CH Suiza (Franc‚s) 42 421 cs_CZ Chequia (Checo) 43 43 de_AT Austria (Alem n) 44 44 en_GB Reino Unido (Ingl‚s) 45 45 da_DK Dinamarca (Dan‚s) 46 46 sv_SE Suecia (Sueco) 47 47 no_NO Noruega (Noruego) 48 48 pl_PL Polonia (Polaco) 49 49 de_DE Alemania (Alem n) 51 34 es_PE Per£ (Espa¤ol) * 52 34 es_MX M‚xico (Espa¤ol) * 54 34 es_AR Argentina (Espa¤ol) * 55 55 pt_BR Brasil (Portugu‚s) 56 34 es_CL Chile (Espa¤ol) * 57 34 es_CO Colombia (Espa¤ol) * 58 34 es_VE Venezuela (Espa¤ol) * 61 61 en_AU Australia (Ingl‚s) 64 64 en_NZ Nueva Zelanda (Ingl‚s) 65 86 zh_SG Singapur (Chino) * 66 66 th_TH Tailandia (Tailand‚s) 81 49 de_LI Liechtenstein (Alem n) * 82 66 in_ID Indonesia (Indonesio) * 84 66 vi_VN Vietnam (Vietnamita) * 86 86 zh_CN China (Chino simplificado) 88 88 zh_TW Taiw n (Chino tradicional) 90 90 tr_TR Turqu¡a (Turco) 99 1 univ Universal * 212 785 ar_MA Marruecos (µrabe) * 213 785 ar_DZ Argelia (µrabe) * 216 785 ar_TN T£nez (µrabe) * 351 351 pt_PT Portugal (Portugu‚s) 352 33 fr_LU Luxemburgo (Franc‚s) * 353 353 en_IE Irlanda (Ingl‚s) 354 354 is_IS Islandia (Island‚s) 355 355 sq_AL Albania (Alban‚s) 358 46 sv_FI Finlandia (Sueco) * 359 359 bg_BG Bulgaria (B£lgaro) 370 370 lt_LT Lituania (Lituano) 371 371 lv_LV Letonia (Let¢n) 372 372 et_EE Estonia (Estonio) 375 7 be_BY Bielorrusia (Bielorruso) * 380 7 uk_UA Ucrania (Ucraniano) * 381 381 hr_SP Serbia (Croata) 385 385 hr_HR Croacia (Croata) 386 386 sl_SI Eslovenia (Eslovenio) 387 387 sh_BA Bosnia (Serbo-croata) 389 389 mk_MK Macedonia (Macedonio) 502 34 es_GT Guatemala (Espa¤ol) * 503 34 es_SV El Salvador (Espa¤ol) * 504 34 es_HN Honduras (Espa¤ol) * 505 34 es_NI Nicaragua (Espa¤ol) * 506 34 es_CR Costa Rica (Espa¤ol) * 507 34 es_PA Panam  (Espa¤ol) * 591 34 es_BO Bolivia (Espa¤ol) * 593 34 es_EC Ecuador (Espa¤ol) * 595 34 es_PY Paraguay (Espa¤ol) * 598 34 es_UY Uruguay (Espa¤ol) * 785 785 ar_AA Arab¢fono (µrabe) 852 86 zh_HK Hong Kong (Chino tradicional) * 961 785 ar_LB L¡bano (µrabe) * 962 785 ar_JO Jordania (µrabe) * 963 785 ar_SY Siria (µrabe) * 965 785 ar_KW Kuwait (µrabe) * 966 785 ar_SA Arabia Saud¡ (µrabe) * 967 785 ar_YE Yemen (µrabe) * 968 785 ar_OM Om n (µrabe) * 971 785 ar_AE Emiratos µrabes Unidos (µrabe) * 972 30 el_GR_E Grecia (Griego) * 973 785 ar_BH Bar‚in (µrabe) * 974 785 ar_QA Qatar (µrabe) * 981 1 fa_IR Ir n (Farsi) * :exmp. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulsfindattr.ULSFindAttr :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSFindAttr( cadena ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ atributo ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ inicio ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ m x ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ ind. ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ p g. c¢d.ÄÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄ)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ perfil ÄÙ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Busca el primer car cter de una cadena de texto que corresponda al criterio de atributos especificado. :p. :p.:hp7.Par metros:ehp7. :nt.Los par metros :hp1.inicio:ehp1. y :hp1.m x:ehp1. (debajo) especifican n£meros de caracteres y no de bytes. Cuando se utilizan p ginas de c¢digos MBCS, puede no ser lo mismo.:ent. :dl break=fit tsize=12. :dt.cadena :dd.El texto de entrada en el que buscar. :dt.atributo :dd.El nombre del atributo qur buscar. Encontrar  una lista de los nombres de atributo admitidos en la descripci¢n de la funci¢n :link reftype=hd refid=ulsqueryattr.ULSQueryAttr:elink.. :dt.inicio :dd.El ordinal del car cter de :hp1.cadena:ehp1. desde el que empezar a buscar. Debe estar entre 1 y la longitud del texto (en caracteres). Si no se especifica, por omisi¢n es 1 (el inicio de la cadena). :dt.m x :dd.El n£mero m ximo de caracteres en los que buscar. Si no se especifica, por omisi¢n es la longitud de :hp1.cadena:ehp1. (en caracteres). :dt.ind. :dd.Indica si realizar una b£squeda positiva (por oposici¢n a una negativa). S¢lo se tiene en cuenta el primer car cter del valor del par metro y (si se especifica) debe ser uno de los siguientes&colon. :dl compact tsize=4. :dt.T :dd.True (verdadero)&colon. encontrar el primer car cter que coincida con el atributo especificado (b£squeda positiva). Es la acci¢n por omisi¢n. :dt.F :dd.Falso&colon. encontrar el primer car cter que :hp1.no:ehp1. coincida con el atributo especificado (b£squeda negativa). :edl. :dt.:link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. :dd.La p gina de c¢digos de origen. Es en la que est  codificado :hp1.cadena:ehp1. (es decir, en la que se mostrar¡a correctamente). Si no se especifa, se asume que es la p gina de c¢digos actual del proceso. :dt.:link reftype=hd refid=parm_locale.perfil:elink. :dd.El perfil nacional cuyas reglas de atributos de texto se utilizar n. Si no se especifica, por omisi¢n se utilizar  el actual, definido en las variables de entorno LANG y LC_*. :edl. :p. :p.:hp7.Devuelve:ehp7. :p.La posici¢n del primer car cter coincidente, o 0 si no se ha encontrado ninguno. Si ocurre un error, se devuelve una cadena vac¡a ("") y se establecer  un valor distinto de cero para la variable global ULSERR. :p. :p.:hp7.Ejemplo:ehp7. :xmp. /* Texto de entrada (en p gina de c¢digos 850) */ cadena = 'Almorzamos en un caf‚ de Reykjav¡k.' SAY cadena /* Buscar el primer car cter no ASCII */ c = ULSFindAttr( cadena, 'ascii',,,'F') IF ULSERR \= '0' THEN SAY ULSERR ELSE SAY 'El primer car cter no ASCII est  en la posici¢n&colon.' c :exmp. :p.Salida del ejemplo anterior&colon. :xmp. Almorzamos en un caf‚ de Reykjav¡k. El primer car cter no ASCII est  en la posici¢n&colon. 21 :exmp. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulsformattime.ULSFormatTime :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSFormatTime( segundos ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ formato ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ utc ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ perfil ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ p g. c¢d. ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ reempl. ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄ)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ acontrol ÄÙ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Convierte un valor de tiempo absoluto en una cadena de texto formateada de fecha y hora. :p. :p.:hp7.Par metros:ehp7. :dl break=fit tsize=12. :dt.segundos :dd.El valor de tiempo absoluto que formatear. Es un entero positivo que representa los segundos transcurridos desde el origen de tiempos Unix (Epoch: 0&colon.00&colon.00 el 1 de enero de 1970, en UTC - Coordinated Universal Time). :dt.formato :dd.Una cadena que describe el formato del texto que se devolver . Debe tener la misma sintaxis que la funci¢n ULS :hp2.UniStrftime:ehp2., y puede contener una mezcla de texto e indicadores de conversi¢n (listados m s abajo). La cadena de formato por omisi¢n es ®%c¯, que indica la cadena de fecha y hora est ndar del perfil. :p.A continuaci¢n se listan los posibles indicadores de conversi¢n. Cualquier texto de la cadena de formato que no corresponda a un indicador de conversi¢n se incluir  tal cual en el texto de salida. :p.:hp2.Indicadores de conversi¢n est ndar&colon.:ehp2. :dl compact tsize=8. :dt.%a :dd.El nombre abreviado del d¡a de la semana en el perfil (v.g. ®Lun¯). :dt.%A :dd.El nombre completo del d¡a de la semana en el perfil (v.g. ®Lunes¯). :dt.%b :dd.El nombre abreviado del mes en el perfil (v.g. ®Ene¯). :dt.%B :dd.El nombre completo del mes en el perfil (v.g. ®Enero¯). :dt.%c :dd.La cadena de fecha y hora por omisi¢n del perfil. :dt.%C :dd.El siglo como n£mero decimal (00-99). :dt.%d :dd.El d¡a del mes como n£mero decimal de dos cifras (01-31). :dt.%D :dd.La fecha en formato %m/%d/%a (v.g. ®01/31/94¯). :dt.%e :dd.El d¡a del mes como n£mero decimal ( 1-31). Se preceder n con un espacio las cifras £nicas. :dt.%h :dd.Lo mismo que %b. :dt.%H :dd.La hora de 24 como n£mero decimal (00-23). :dt.%I :dd.La hora de 12 como n£mero decimal (01-12). :dt.%j :dd.El d¡a del a¤o como n£mero decimal de tres cifras (001-366). :dt.%m :dd.El mes del a¤o como n£mero decimal de dos cifras (01-12). :dt.%M :dd.Los minutos de la hora como n£mero decimal (00-59). :dt.%n :dd.Un car cter de divisi¢n de l¡nea. :dt.%p :dd.La cadena indicadora AM/PM del perfil. :dt.%r :dd.Lo mismo que %I&colon.%M&colon.%S%p. :dt.%R :dd.La hora de 24 en formato %H&colon.%M. :dt.%S :dd.Los segundos del minuto de la hora como n£mero decimal (00-61). :dt.%t :dd.El car cter tabulador. :dt.%T :dd.Lo mismo que %H&colon.%M&colon.%S. :dt.%u :dd.El d¡a de la semana como n£mero decimal (1-7), donde 1 significa lunes. :dt.%U :dd.La semana del a¤o como n£mero decimal de dos cifras (00-53), considerando que cada semana empieza el domingo. :dt.%V :dd.La semana del a¤o como n£mero decimal de dos cifras (01-53), considerando que cada semana empieza el lunes. Si la semana que contiene el 1 de enero tiene cuatro o m s d¡as en el a¤o nuevo se considera semana 1, o es semana 53 del a¤o anterior y la siguiente es la semana 1. :dt.%w :dd.El d¡a de la semana como n£mero decimal (0-6), donde 0 es el domingo. :dt.%W :dd.La semana del a¤o como n£mero decimal de dos cifras (00-53), considerando que la semana empieza el lunes. Todos los d¡as de un a¤o nuevo anteriores al primer domingo se consideran como semana 0. :dt.%x :dd.La representaci¢n por omisi¢n del perfil de la fecha aislada. :dt.%X :dd.La representaci¢n por omisi¢n del perfil de la hora aislada. :dt.%y :dd.El a¤o del siglo (00-99). :dt.%Y :dd.El a¤o del siglo como n£mero decimal (v.g. ®1994¯). :dt.%Z :dd.El nombre de la zona horaria o su abreviatura si puede determinarse (v.g. ®EST¯), o nada si no hay informaci¢n sobre la zona horaria. :dt.%% :dd.Un signo % (porcentaje). :edl. :p.:hp2.Indicadores de conversi¢n de elementos alternativos del perfil&colon.:ehp2. :dl compact tsize=8. :dt.%Ec :dd.Cadena de fecha y hora alternativa del perfil. :dt.%EC :dd.El a¤o o era base de la representaci¢n alternativa del perfil. :dt.%Ex :dd.La representaci¢n alternativa de fecha del perfil. :dt.%EX :dd.La representaci¢n alternativa de hora del perfil. :dt.%Ey :dd.La diferencia del a¤o con %EC en la representaci¢n alternativa del perfil. :dt.%EY :dd.La representaci¢n alternativa completa del a¤o. :dt.%Od :dd.El d¡a del mes utilizando los s¡mbolos num‚ricos alternativos del perfil; precedidos de tantos ceros como sean necesarios si hay alg£n s¡mbolo alternativo para el cero, o espacios si no. :dt.%Oe :dd.El d¡a del mes, utilizando los s¡mbolos num‚ricos alternativos del perfil, precedidos de tantos espacios iniciales como sean necesarios. :dt.%OH :dd.La hora de 24 utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%OI :dd.La hora de 12 utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%Om :dd.El mes utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%OM :dd.Los minutos utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%OS :dd.Los segundos utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%Ou :dd.El d¡a de la semana (1-7 empezando en lunes) utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%OU :dd.La semana del a¤o (00-53 con domingo como primer d¡a de la semana) utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%OV :dd.La semana del a¤o (01-53 con domingo como primer d¡a de la semana) utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%Ow :dd.El d¡a de la semana (0-6 empezando en domingo) utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%OW :dd.La semana del a¤o (01-53 con lunes como primer d¡a de la semana) utilizando los s¡mbolos num‚ricos alternativos del perfil. :dt.%Oy :dd.El a¤o desde %C en la representaci¢n alternativa del perfil, utilizando sus s¡mbolos num‚ricos alternativos. :edl. :dt.utc :dd.Indica si la hora devuelta se dar  como Tiempo Universal Coordinado (UTC: Coordinated Universal Time), o convertida a local (ajustando al horario de verano si procede). S¢lo se tiene en cuenta el primer car cter del valor, que (si se especifica) debe ser uno de los siguientes: :dl compact tsize=4. :dt.:hp2.Y:ehp2.es (s¡) :dd.Devolver la hora en UTC. :dt.No :dd.Convertir a la hora local; es la acci¢n por omisi¢n. :edl. :nt.Si hay que devolver la hora local, el valor :hp1.segundos:ehp1. no debe corresponder a un momento anterior a las 0&colon.00&colon.00 del 1 de enero de 1970; de lo contrario, se devolver  una cadena vac¡a, y ULSERR indicar  un error en :hp1.gmtime:ehp1..:ent. :dt.:link reftype=hd refid=parm_locale.perfil:elink. :dd.El nombre del perfil nacional cuyas reglas ling�¡sticas y de localizaci¢n se usar n para formatear la cadena de fecha y hora. Por omisi¢n se utiliza el actual, definido en las variables de entorno LANG y LC_*. :dt.:link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. :dd.La :link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. de destino. Es la p gina de c¢digos en que estar  codificada la cadena devuelta. Por omisi¢n es la p gina de c¢digos actual del proceso. :dt.:link reftype=hd refid=parm_subchar.reempl.:elink. :dd.El car cter de sustituci¢n para la p gina de c¢digos destino. :dt.:link reftype=hd refid=parm_controls.acontrol:elink. :dd.El indicador de acci¢n de los bytes de control. :edl. :p. :p.:hp7.Devuelve:ehp7. :p.La cadena de fecha y hora formateada. Si ocurre un error, se devuelve una cadena vac¡a ("") y se establecer  un valor distinto de cero para la variable global ULSERR. :p. :p.:hp7.Ejemplo:ehp7. :p.(En el siguiente ejemplo, se supone que la zona horaria local es EST5EDT.) :xmp. /* Tiempo Epoch en segundos. */ tiempoepoch = 1234567890 /* Convertir a hora local, utilizando el perfil nacional actual. */ cadhora = ULSFormatTime( tiempoepoch ) SAY cadhora /* Igual, pero utilizando convenciones de localizaci¢n neerlandesas (nl_NL). */ cadhora = ULSFormatTime( tiempoepoch,, 'N', 'nl_NL') SAY cadhora /* Otra vez igual, pero esta vez con las convenciones de localizaci¢n * japonesas (ja_JP). */ cadhora = ULSFormatTime( tiempoepoch,, 'N', 'ja_JP',, '3F', 'G') SAY cadhora /* Las tres llamadas anteriores se convierten seg£n la * (misma) zona horaria local. * Ahora obtenemos la hora en Tiempo Coordinado Universal (UTC). */ cadhora = ULSFormatTime( tiempoepoch, '%Y-%m-%d %X', 'Y', 'C') SAY 'La Hora Coordenada Universal es&colon.' cadhora :exmp. :p.Salida del ejemplo anterior&colon. :xmp. s b feb 14 00&colon.31&colon.30 CES 2009 za feb 14 00&colon.31&colon.30 2009 2009?02?14? 00?31?30? La Hora Coordenada Universal es&colon. 2009-02-13 23&colon.31&colon.30 :exmp. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulsgetlocales.ULSGetLocales :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSGetLocales(ÄÂÄÄÄÄÄÄÄÄÂÄ, base )ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ tipo ÄÙ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Recaba la lista de perfiles nacionales definidos en el sistema. :p.Los perfiles deben ser bien del sistema (perfiles est ndar definidos en OS/2) o de usuario (definidos a partir de los perfiles nacionales o ®Escenarios¯ que apareciesen originalmente en el objeto ®Perfiles nacionales¯ o ®Paleta de pa¡s¯). :p. :p.:hp7.Par metros:ehp7. :dl break=fit tsize=12. :dt.tipo :dd.Qu‚ tipo de perfiles listar&colon. del sistema, de usuario o ambos. S¢lo se tiene en cuenta el primer car cter del valor, y (si se especifica) debe ser uno de los siguientes&colon. :dl compact tsize=4. :dt.B :dd.(Both: ambos) Listar perfiles de usuario y del sistema; es la acci¢n por omisi¢n. :dt.S :dd.Listar s¢lo perfiles nacionales del sistema. :dt.U :dd.Listar s¢lo perfiles nacionales de usuario. :edl. :dt.base :dd.El nombre de una variable lista que se poblar  con los perfiles devueltos. :hp1.base:ehp1..0 contendr  un n£mero entero :hp1.n:ehp1. indicando el n£mero de perfiles encontrados y las variables :hp1.base:ehp1..1 a :hp1.base:ehp1..:hp1.n:ehp1. contendr n cada una el nombre de un perfil. :edl. :p. :p.:hp7.Devuelve:ehp7. :p.El n£mero de perfiles devueltos (lo mismo que :hp1.base:ehp1..0). Si ocurre un error, se devuelve una cadena vac¡a ("") y se establecer  un valor distinto de cero para la variable global ULSERR. :p. :p.:hp7.Ejemplo:ehp7. :xmp. /* Listar todos los perfiles definidos por el usuario en el sistema */ CALL ULSGetLocales 'U', 'perfiles.' SAY ' Hay definidos ' perfiles.0 ' perfiles nacionales de usuario&colon. DO i = 1 TO perfiles.0 SAY ' ->.' perfiles.i END :exmp. :p.Salida del ejemplo anterior&colon. :xmp. Hay definidos 2 perfiles nacionales de usuario&colon. ->. en_CA ->. ja_JP :exmp. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulsgetunicodeclipboard.ULSGetUnicodeClipboard :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSGetUnicodeClipboard(ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ pg.c¢d.destino ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄ ³ ³ ÀÄ reempl. ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄ)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ acontrol ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ v¡a de acceso ÄÙ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Recaba el texto Unicode del  rea com£n, si lo hay. :p.El texto Unicode se lee del  rea com£n usando el formato de datos ®text/unicode¯, que utilizan cierto n£mero de aplicaciones, incluida la familia de productos Mozilla. (Tambi‚n lo admiten las versiones recientes de la biblioteca de funciones UClip.) :p. :p.:hp7.Par metros:ehp7. :dl break=fit tsize=12. :dt.pg.c¢d.destino :dd.La :link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. de destino. Es la p gina de c¢digos en que estar  codificada la cadena devuelta. Por omisi¢n es la p gina de c¢digos actual del proceso. :dt.:link reftype=hd refid=parm_subchar.reempl.:elink. :dd.El car cter de sustituci¢n para la p gina de c¢digos destino. :dt.:link reftype=hd refid=parm_controls.acontrol:elink. :dd.El indicador de acci¢n de los bytes de control. :dt.:link reftype=hd refid=parm_path.v¡a de acceso:elink. :dd.El indicador de conversi¢n de v¡as de acceso para DBCS. :edl. :p. :p.:hp7.Devuelve:ehp7. :p.El texto Unicode recabado del  rea com£n, tal como se convierte a la p gina de c¢digos de destino. Si no se encuentra texto Unicode, se devuelve una cadena de texto vac¡a (""). .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulsputunicodeclipboard.ULSPutUnicodeClipboard :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSPutUnicodeClipboard( cadena ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ p g.c¢d.origen ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄ)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ acontrol ÄÙ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ vacc ÄÙ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Convierte el texto especificado a Unicode UCS-2 y lo coloca en el  rea com£n en formato ®text/unicode¯, que utilizan cierto n£mero de aplicaciones, incluida la familia de productos Mozilla. (Tambi‚n lo admiten las versiones recientes de la biblioteca de funciones UClip.) :p.El texto :hp2.no:ehp2. se copia tambi‚n en formato de texto simple; si la aplicaci¢n espera esto, debe hacerlo por s¡ misma por otros medios. :nt.Esta funci¢n no elimina primero del  rea com£n datos en otros formatos. Eso se deja tambi‚n a la aplicaci¢n si lo estima necesario.:ent. :p. :p.:hp7.Par metros:ehp7. :dl break=fit tsize=12. :dt.cadena :dd.El texto que se colocar  en el  rea com£n. Es obligatorio. :dt.p g.c¢d.origen :dd.La :link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. de origen. Es la p gina de c¢digos en que estar  codificada :hp1.cadena:ehp1. (en la que se muestra correctamente). Por omisi¢n es la p gina de c¢digos actual del proceso. :dt.:link reftype=hd refid=parm_codepage.acontrol:elink. :dd.El indicador de acci¢n de los bytes de control. :dt.:link reftype=hd refid=parm_path.vacc:elink. :dd.El indicador de conversi¢n de v¡as de acceso para DBCS. :edl. :p. :p.:hp7.Devuelve:ehp7. :p.Una cadena vac¡a (""). .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulsqueryattr.ULSQueryAttr :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSQueryAttr( car cter, atributo ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄ ³ ³ ÀÄ p gina de c¢digos ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄ)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ perfil nacional ÄÙ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Determina si un car cter tiene o no el atributo especificado. :p. :p.:hp7.Par metros:ehp7. :dl break=fit tsize=12. :dt.car cter :dd.El car cter que estudiar. Debe ser v lido en la p gina de c¢digos especificada. Puede ser una cadena de varios bytes si la p gina de c¢digos admite varios bytes por car cter; sin embargo, si la cadena contiene m s de un car cter v lido s¢lo se tendr  en cuenta el primero (ignor ndose los restantes). :dt.atributo :dd.El nombre del atributo que comprobar. Debe ser uno de los siguientes. (Los atributos con nombres que empiezan por ®_¯ representan conjuntos de caracteres Unicode.) El nombre no es sensible a may£sculas y min£sculas. :dl compact tsize=12. :dt.alnum :dd.Caracteres alfab‚ticos y num‚ricos :dt.alpha :dd.Letras y marcas ling�¡sticas :dt.ascii :dd.Car cter del est ndar ASCII :dt.blank :dd.Caracteres tabulador y espacio :dt.cntrl :dd.Caracteres de control y formato :dt.digit :dd.Cifras del 0 al 9 :dt.graph :dd.Todos excepto los caracteres de control y el espacio :dt.lower :dd.Letras min£sculas :dt.number :dd.N£meros del 0 al 9 :dt.print :dd.Todos excepto los caracteres de control :dt.punct :dd.Signos de puntuaci¢n :dt.space :dd.Espacios blancos y caracteres de divisi¢n de l¡neas :dt.symbol :dd.S¡mbolos :dt.upper :dd.Letras may£sculas :dt.xdigit :dd.D¡gitos hexadecimales (0-9, a-f, A-F) :dt.diacritic :dd.Marcas diacr¡ticas :dt.fullwidth :dd.Variante de ancho completo :dt.halfwidth :dd.Variante condensada :dt.hiragana :dd.Car cter hiragana :dt.ideograph :dd.Car cter kanji/han :dt.kashida :dd.Car cter de elongaci¢n  rabe :dt.katakana :dd.Car cter katakana :dt.nonspacing :dd.Marca no espaciadora :dt.nsdiacritic :dd.Marca diacr¡tica no espaciadora :dt.nsvowel :dd.Vocal no espaciadora :dt.vowelmark :dd.Marca vocal :dt._apl :dd.Car cter APL :dt._arabic :dd.Car cter  rabe :dt._arrow :dd.Flecha :dt._bengali :dd.Car cter bengal¡ :dt._bopomofo :dd.Car cter bopomofo :dt._box :dd.Car cter para dibujo de cuadros y l¡neas :dt._currency :dd.S¡mbolo monetario :dt._cyrillic :dd.Car cter cir¡lico :dt._dash :dd.Car cter gui¢n :dt._devanagari :dd.Car cter devanagari :dt._dingbat :dd.Dingbat :dt._fraction :dd.Valor fraccionario :dt._greek :dd.Car cter griego :dt._gujarati :dd.Car cter gujarati :dt._gurmukhi :dd.Car cter gurmukhi :dt._hanguel :dd.Car cter jamo hangul :dt._hebrew :dd.Car cter hebreo :dt._hiragana :dd.Car cter hiragana :dt._katakana :dd.Car cter katakana :dt._lao :dd.Car cter laotiano :dt._latin :dd.Car cter latino :dt._linesep :dd.Separador de l¡nea :dt._math :dd.S¡mbolo matem tico :dt._punctstart :dd.Comienzo de puntuaci¢n :dt._punctend :dd.Fin de puntuaci¢n :dt._tamil :dd.Car cter tamil :dt._telegu :dd.Car cter telegu :dt._thai :dd.Car cter tailand‚s :dt._userdef :dd.Car cter definido por el usuario :dt.#arabicnum :dd.N£meros  rabes :dt.#blocksep :dd.Separador de bloques :dt.#commonsep :dd.Separador com£n :dt.#euronum :dd.N£mero europeo :dt.#eurosep :dd.Separador europeo :dt.#euroterm :dd.Terminador europeo :dt.#left :dd.Orientaci¢n de texto de izquierda a derecha :dt.#mirrored :dd.Orientaci¢n de texto sim‚trica :dt.#neutral :dd.Otro neutral :dt.#right :dd.Orientaci¢n de texto de derecha a izquierda :dt.#whitespace :dd.Espacio blanco :edl. :dt.:link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. :dd.La :link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. de origen. Es la p gina de c¢digos en que est  codificada :hp1.cadena:ehp1. (es decir, en la que se mostrar¡a correctamente). Por omisi¢n se supone que es la p gina de c¢digos actual del proceso. :dt.:link reftype=hd refid=parm_locale.perfil nacional:elink. :dd.El perfil nacional cuyas reglas de atributos de texto se utilizar n. Por omisi¢n se utilizar  el actual, definido en las variables de entorno LANG y LC_*. :edl. :p. :p.:hp7.Devuelve:ehp7. :p.Esta funci¢n devuelve 1 si el car cter tiene el atributo especificado, o 0 si no. Si ocurre un error, se devuelve una cadena vac¡a ("") y se establecer  un valor distinto de cero para la variable global ULSERR. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulsquerylocaleitem.ULSQueryLocaleItem :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSQueryLocaleItem( elemento ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ À,ÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ perfil ÄÙ À,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄ ³ ³ ÀÄ pg.c¢d. ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄ)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ reemplazo ÄÙ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Consulta el valor del elemento especificado de un perfil nacional. :p. :p.:hp7.Par metros:ehp7. :dl break=fit tsize=12. :dt.elemento :dd.El elemento del perfil que se quiere examinar. A continuaci¢n se listan los elementos disponibles en los perfiles nacionales. El elemento se puede especificar por nombre o n£mero; si se usan nombres, no se distinguen may£sculas y min£sculas. :xmp. NOMBRE NéMERO DESCRIPCIàN sDateTime 1 Cadena de formato de fecha y hora sShortDate 2 Fecha de formato corto sTimeFormat 3 Cadena de formato de la hora s1159 4 Cadena de AM s2359 5 Cadena de PM sAbbrevDayName7 6 Abreviatura del d¡a 7 (Dom) sAbbrevDayName1 7 Abreviatura del d¡a 1 (Lun) sAbbrevDayName2 8 Abreviatura del d¡a 2 (Mar) sAbbrevDayName3 9 Abreviatura del d¡a 3 (Mie) sAbbrevDayName4 10 Abreviatura del d¡a 4 (Jue) sAbbrevDayName5 11 Abreviatura del d¡a 5 (Vie) sAbbrevDayName6 12 Abreviatura del d¡a 6 (Sab) sDayName7 13 Nombre del d¡a de la semana 7 (Domingo) sDayName1 14 Nombre del d¡a de la semana 1 (Lunes) sDayName2 15 Nombre del d¡a de la semana 2 (Martes) sDayName3 16 Nombre del d¡a de la semana 3 (Mi‚rcoles) sDayName4 17 Nombre del d¡a de la semana 4 (Jueves) sDayName5 18 Nombre del d¡a de la semana 5 (Viernes) sDayName6 19 Nombre del d¡a de la semana 6 (S bado) sAbbrevMonthName1 20 Abreviatura del mes 1 sAbbrevMonthName2 21 Abreviatura del mes 2 sAbbrevMonthName3 22 Abreviatura del mes 3 sAbbrevMonthName4 23 Abreviatura del mes 4 sAbbrevMonthName5 24 Abreviatura del mes 5 sAbbrevMonthName6 25 Abreviatura del mes 6 sAbbrevMonthName7 26 Abreviatura del mes 7 sAbbrevMonthName8 27 Abreviatura del mes 8 sAbbrevMonthName9 28 Abreviatura del mes 9 sAbbrevMonthName10 29 Abreviatura del mes 10 sAbbrevMonthName11 30 Abreviatura del mes 11 sAbbrevMonthName12 31 Abreviatura del mes 12 sMonthName1 32 Nombre del mes 1 sMonthName2 33 Nombre del mes 2 sMonthName3 34 Nombre del mes 3 sMonthName4 35 Nombre del mes 4 sMonthName5 36 Nombre del mes 5 sMonthName6 37 Nombre del mes 6 sMonthName7 38 Nombre del mes 7 sMonthName8 39 Nombre del mes 8 sMonthName9 40 Nombre del mes 9 sMonthName10 41 Nombre del mes 10 sMonthName11 42 Nombre del mes 11 sMonthName12 43 Nombre del mes 12 sDecimal 44 Separador decimal sThousand 45 Separador de miles sYesString 46 Cadena de ®s¡¯ sNoString 47 Cadena de ®no¯ sCurrency 48 S¡mbolo monetario sCodeSet 49 C¢digo de conjunto del perfil xLocaleToken 50 Muestra de IBM del perfil xWinLocale 51 ID de Win32 del perfil iLocaleResnum 52 N£mero de recurso de la descripci¢n sNativeDigits 53 Cadena de d¡gitos nativos iMaxItem 54 N£mero del elemento mayor sTimeMark 55 Marca de formato de hora (am/pm) sEra 56 Definici¢n de era sAltShortDate 57 Cadena alternativa de formato corto de fecha sAltDateTime 58 Cadena alternativa de formato de fecha y hora sAltTimeFormat 59 Formato alternativo de hora sAltDigits 60 D¡gitos alternativos XPG4 sYesExpr 61 Expresi¢n s¡ XPG4 sNoExpr 62 Expresi¢n no XPG4 sDate 63 Separador de fecha corta sTime 64 Separador de hora sList 65 Separador de listas sMonDecimalSep 66 Separador de s¡mbolo monetarios sMonThousandSep 67 Separador de miles monetarios sGrouping 68 Agrupaci¢n de d¡gitos sMonGrouping 69 Agrupaci¢n monetaria iMeasure 70 Medida (M‚trica, brit nica) iPaper 71 Tama¤o normal de papel iDigits 72 Cifras decimales iTime 73 Formato de reloj iDate 74 Formato de fecha corta iCurrency 75 Formato monetario iCurrDigits 76 Cifras decimales monetarias iLzero 77 Cero inicial iNegNumber 78 Formato de n£meros negativos iLDate 79 Formato de fecha larga iCalendarType 80 Tipo de calendario por omisi¢n iFirstDayOfWeek 81 Primer d¡a de la semana (0=Lun) iFirstWeekOfYear 82 Primera semana del a¤o iNegCurr 83 Formato negativo monetario iTLzero 84 Cero inicial en la hora iTimePrefix 85 AM/PM precede la hora iOptionalCalendar 86 Tipo de calendario alternativo sIntlSymbol 87 S¡mbolo monetario internacional sAbbrevLangName 88 Abreviatura de idioma de Windows sCollate 89 Tabla de clasificaci¢n iUpperType 90 Algoritmo de may£sculas iUpperMissing 91 Acci¢n en ausencia de may£sculas sPositiveSign 92 Signo positivo sNegativeSign 93 Signo negativo sLeftNegative 94 Par‚ntesis negativo izquierdo sRightNegative 95 Par‚ntesis negatico derecho sLongDate 96 Cadena larga de formato de fecha sAltLongDate 97 Cadena larga de formato de fecha alternativa sMonthName13 98 Nombre del mes 13 sAbbrevMonthName13 99 Abreviatura del mes 13 sName 100 Nombre del perfil en OS/2 sLanguageID 101 Abreviatura del idioma (ISO) sCountryID 102 Abreviatura del pa¡s (ISO) sEngLanguage 103 Nombre ingl‚s del idioma sLanguage 104 Nombre nativo del idioma sEngCountry 105 Nombre ingl‚s del pa¡s sCountry 106 Nombre localizado del pa¡s sNativeCtryName 107 Nombre nativo del pa¡s iCountry 108 C¢digo de pa¡s sISOCodepage 109 Nombre ISO de la p gina de c¢digos iAnsiCodepage 110 P gina de c¢digos de Windows iCodepage 111 P gina de c¢digos primaria de OS/2 iAltCodepage 112 P gina de c¢digos alternativa de OS/2 iMacCodepage 113 P gina de c¢digos Mac iEbcdicCodepage 114 P gina de c¢digos Ebcdic sOtherCodepages 115 Otras p ginas de c¢digos ASCII sSetCodepage 116 P gina de c¢digos que establecer al inicio sKeyboard 117 Nombre de teclado principal sAltKeyboard 118 Nombre de teclado alternativo sSetKeyboard 119 Teclado que establecer al inicio sDebit 120 Cadena de d‚bito sCredit 121 Cadena de cr‚dito sLatin1Locale 122 Perfil para nombres lat¡n-1 wTimeFormat 123 Formato de hora Win32 wShortDate 124 Formato de fecha Win32 wLongDate 125 Formato de hora largo Win32 jISO3CountryName 126 Abreviatura Java del pa¡s (ISO-3) jPercentPattern 127 Patr¢n porcentual Java jPercentSign 128 S¡mbolo porcentual Java jExponent 129 S¡mbolo exponencial Java jFullTimeFormat 130 Formato de hora completo Java jLongTimeFormat 131 Formato de hora largo Java jShortTimeFormat 132 Formato de hora corto Java jFullDateFormat 133 Formato de fecha completo Java jMediumDateFormat 134 Formato de fecha medio Java jDateTimePattern 135 Patr¢n de formato de fecha y hora Java jEraStrings 136 Cadenas de era Java :exmp. :dt.:link reftype=hd refid=parm_locale.perfil:elink. :dd.El perfil nacional cuyos valores se examinan. Por omisi¢n se utilizar  el actual, definido en las variables de entorno LANG y LC_*. :dt.:link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. :dd.La p gina de c¢digos a la que se convertir  el valor devuelto. (Los valores de los elementos de los perfiles se almacenan internamente como texto Unicode UCS-2. Para devolver el valor en UCS-2, especifique 1200.) :dt.:link reftype=hd refid=parm_subchar.reemplazo:elink. :dd.El car cter de sustituci¢n para la p gina de c¢digos destino. :edl. :p. :p.:hp7.Devuelve:ehp7. :p.El valor del elemento especificado del perfil, tal como se convierte a la p gina de c¢digos solicitada. :p. :p.:hp7.Ejemplo:ehp7. :xmp. /* Consultar el nombre del idioma del perfil ®es_AR¯ (Argentina) * tanto en ingl‚s como en el idioma nativo. */ ingles = ULSQueryLocaleItem('sEngLanguage', 'es_AR', 850 ) IF ULSERR \= '0' THEN DO SAY ULSERR RETURN END nativo = ULSQueryLocaleItem('sLanguage', 'es_AR', 850 ) IF ULSERR \= '0' THEN DO SAY ULSERR RETURN END SAY 'El idioma por omisi¢n del perfil es_AR es ®'ingles'¯ (®'nativo'¯)' :exmp. :p.Salida del ejemplo anterior&colon. :xmp. El idioma por omisi¢n del perfil es_AR es ®Spanish¯ (®Espa&nt.ol¯) :exmp. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulstransform.ULSTransform :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSTransform( cadena, transf. ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄ ³ ³ ÀÄ p gina de c¢digos ÄÙ ³ ³ ³ ³ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄ)ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ,ÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÙ ³ ³ ÀÄ perfil nacional ÄÙ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Transforma una cadena de acuerdo con uno de los tipos predefinidos de transformaci¢n. El efecto puede variar con el perfil nacional. :p. :p.:hp7.Par metros:ehp7. :dl break=fit tsize=12. :dt.cadena :dd.La cadena de texto que convertir (obligatorio). :dt.transf. :dd.El nombre de la transformaci¢n que aplicar (obligatorio). �ste debe ser uno de los siguientes. No se distinguen may£sculas y min£sculas. :dl tsize=12 break=fit. :dt.lower :dd.Transformar el texto completamente a min£sculas. Los caracteres sin forma min£scula (seg£n se defina en el perfil) se dejar n sin cambios. :dt.upper :dd.Transformar el texto completamente a may£sculas. Los caracteres sin forma may£scula (seg£n se defina en el perfil) se dejar n sin cambios. :dt.compose :dd.Pasar todos los caracteres con marcas diacr¡ticas (p.e. acentos) a su representaci¢n mediante formas combinadas completas (un solo c¢digo representa cada car cter combinado con todas sus marcas diacr¡ticas). :dt.decompose :dd.Descomponer todos los caracteres con marcas diacr¡ticas a su representaci¢n mediante formas simples (c¢digos de car cter distintos para el car cter base y las marcas diacr¡ticas). :dt.hiragana :dd.Hacer que todos los caracteres fon‚ticos japoneses usen el silabario hiragana. :dt.katakana :dd.Hacer que todos los caracteres fon‚ticos japoneses usen el silabario katakana de ancho completo. :dt.kana :dd.Hacer que todos los caracteres fon‚ticos japoneses usen el silabario katakana condensado. :edl. :dt.:link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. :dd.La :link reftype=hd refid=parm_codepage.p gina de c¢digos:elink. de origen. Es la p gina de c¢digos en que est  codificada :hp1.cadena:ehp1. y en la que se codificar  tambi‚n la cadena devuelta. Por omisi¢n se supone que es la p gina de c¢digos actual del proceso. :dt.:link reftype=hd refid=parm_locale.locale:elink. :dd.El perfil nacional cuyas reglas de transformaci¢n se utilizar n. Por omisi¢n se utilizar  el actual, definido en las variables de entorno LANG y LC_*. :edl. :p. :p.:hp7.Devuelve:ehp7. :p.La cadena de texto transformada, en la misma p gina de c¢digos que la cadena de entrada. Si ocurre un error, se devuelve una cadena vac¡a ("") y se establecer  un valor distinto de cero para la variable global ULSERR. .* ---------------------------------------------------------------------------- :h2 x=left y=bottom width=100% height=100% id=ulsversion.ULSVersion :hp7.Sintaxis:ehp7. :cgraphic. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ÄÄULSVersion()ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ :ecgraphic. :p.:hp7.Descripci¢n:ehp7. :p.Devuelve la versi¢n actual de la biblioteca RxULS. :p. :p.:hp7.Par metros:ehp7. :p.Ninguno. :p. :p.:hp7.Devuelve:ehp7. :p.La versi¢n actual de la biblioteca, en la forma ®:hp1.mayor:ehp1..:hp1.menor:ehp1..:hp1.revisi¢n:ehp1.¯. :p. :p.:hp7.Ejemplo:ehp7. :xmp. SAY 'Versi¢n de RXULS.DLL en uso&colon.' ULSVersion() :exmp. :p.Salida del ejemplo anterior&colon. :xmp. Versi¢n de RXULS.DLL en uso&colon. 0.6.0 :exmp. .****************************************************************************** :h1 x=left y=bottom width=100% height=100% id=appa.Ap‚ndice A&colon. P ginas de c¢digos de OS/2 Las p ginas de c¢digos listadas a continuaci¢n se pueden usar como p ginas de origen o destino con las funciones RxULS. :p.Las descripciones de las p ginas de c¢digos listan el nombre del conjunto de caracteres correspondiente, opcionalmente seguido de una coma y detalles adicionales sobre el est ndar de codificaci¢n espec¡fico usado, seguido opcionalmente, entre par‚ntesis, por el nombre del pa¡s, regi¢n o aplicaci¢n correspondiente. :p.Las p ginas de c¢digos que contienen ®IBM¯ denotan codificaciones basadas en modificaciones del conjunto ASCII extendido de DOS, y no se recomiendan para el intercambio con plataformas distintas. :nt.Puede que no todas las p ginas de c¢digos est‚n disponibles en todos los sistemas.:ent. :p. :p.:hp7.P ginas de c¢digos Unicode:ehp7. :xmp. 1200 Unicode, UCS-2 (Codificaci¢n UCS de 2 bytes) 1207 Unicode, UPF-8 (Unicode Processing Format, 8 bits) 1208 Unicode, UTF-8 (Unicode Transformation Format, 8 bits) :exmp. :p.:hp7.P ginas de c¢digos basadas en el ASCII (PC):ehp7. :xmp. 367 ASCII, 7 bits 437 ASCII extendido para DOS (Estados unidos) 813 Griego ISO, ISO-8859-7 819 Lat¡n 1 ISO, ISO-8859-1 850 Lat¡n 1 IBM, :link reftype=fn refid=ibm858.modificado:elink. (Multiling�e) 851 Griego DOS 852 Lat¡n 2 IBM (Europa del Este) 855 Cir¡lico IBM 856 Hebreo DOS 857 Lat¡n 5 IBM (Turqu¡a) 859 Lat¡n 9 IBM (Multiling�e) 860 Portugu‚s IBM 861 Island‚s IBM 862 Hebreo IBM, :link reftype=fn refid=ibm867.modificado:elink. (Israel) 863 Franc‚s canadiense IBM 864 µrabe IBM 865 N¢rdico IBM 866 Ruso IBM 868 Urdu IBM 869 Griego IBM 874 Tailand‚s, TIS-620/ISO-8859-11 Extendido 878 Ruso para Internet, KOI8-R 891 ASCII extendido coreano + hangul condensado, SBCS para PC 895 Japon‚s JIS-Romano, 7 bits 897 Japon‚s JISX0201-1976, SBCS para PC 903 ASCII extendido para chino simplificado, SBCS para PC (RPC) 904 ASCII extendido para chino tradicional, SBCS para PC (Taiw n) 907 APL 909 APL2 extendido 910 APL2 912 Lat¡n 2 ISO, ISO-8859-2 913 Lat¡n 3 ISO, ISO-8859-3 914 Lat¡n 4 ISO, ISO-8859-4 915 Cir¡lico ISO, ISO-8859-5 916 Hebreo ISO, ISO-8859-8 920 Lat¡n 5 ISO, ISO-8859-9 921 Lat¡n 7 ISO, ISO-8859-13 922 Estonio 923 Lat¡n 9 ISO, ISO-8859-15 (Multiling�e) 932 Japon‚s, MBCS para PC/Shift-JIS [alias de 943] 934 Coreano, codificaci¢n tradicional MBCS para PC [alias de 944] 936 Chino simplificado, codificaci¢n tradicional MBCS para PC (RPC) [alias de 946] 938 Chino tradicional CNS11643 extendido, MBCS para PC (Taiw n) [alias de 948] 942 Japon‚s JISX0201-1976 + JISX0208-1978 extendido, Shift-JIS 943 Japon‚s JISX0201-1976 + JISX0208-1990 Windows31-J, Shift-JIS 944 SAA coreano 946 SAA chino simplificado (RPC) 948 SAA chino tradicional (Taiw n) 949 Coreano KSC5601, :link reftype=fn refid=uhc.MBCS para PC/KS-Code:elink. 950 Chino tradicional Big-5, MBCS para PC/Big-5 (Taiw n) 954 Japon‚s, EUC-JP 964 Chino tradicional, EUC-TW (Taiw n) 970 Coreano, EUC-KR 1004 Lat¡n 1 extendido Windows 1006 Urdu 1008 µrabe Windows, original 1041 Japon‚s JISX0201 extendido, SBCS para PC [id‚ntico a 897] 1043 Chino tradicional ASCII extendido, SBCS para PC [id‚ntico a 904] 1051 HP Roman 8 1088 Coreano ASCII extendido, SBCS para PC 1089 µrabe ISO, ISO-8859-6 1098 Farsi IBM 1114 ASCII + S¡mbolos PC, SBCS para PC de 7 bits (RPC &. Taiw n) 1115 Chino simplificado ASCII extendido, SBCS para PC 1116 Estonio IBM 1117 Let¢n IBM 1118 Lituano IBM 1119 Lituano + ruso IBM 1124 Ucraniano, :link reftype=fn refid=ibm1124.cir¡lico ISO modificado:elink. 1125 Ucraniano IBM 1131 Bielorruso IBM 1250 Lat¡n 2 Windows 1251 Cir¡lico Windows 1252 Lat¡n 1 Windows 1253 Giego Windows 1254 Turco Windows 1255 Hebreo Windows 1256 µrabe Windows 1257 Lat¡n 4 Windows 1275 Lat¡n 1 Apple 1276 Codificaci¢n est ndar Adobe PostScript 1277 Lat¡n 1 Adobe PostScript 1280 Griego Apple 1281 Turco Apple 1282 Centroeuropa Apple 1283 Cir¡lico Apple 1381 Chino simplificado GB2312 extendido, MBCS para PC (RPC) 1383 Chino simplificado, EUC-CN (RPC) 1386 Chino simplificado GBK, MBCS para PC (RPC) :exmp. :p.:hp7.P ginas de c¢digos basadas en EBCDIC (mainframe):ehp7. :xmp. 37 Estados Unidos/Canad , CECP 273 Alemania/Austria, CECP 277 Dinamarca/Noruega, CECP 278 Finlandia/Suecia, CECP 280 Italia, CECP 282 Portugal, CECP 284 Espa¤a/Latinoam‚rica, CECP 285 Reino Unido, CECP 290 Japon‚s katakana condensado extendido, anfitri¢n SBCS 293 APL 297 Francia, CECP 361 Internacional - Publicaci¢n 382 Austria/Alemania - Publicaci¢n 383 B‚lgica - Publicaci¢n 385 Franc‚s canadiense - Publicaci¢n 386 Dinamarca/Noruega - Publicaci¢n 387 Finlandia/Suecia - Publicaci¢n 388 Francia - Publicaci¢n 389 Italia - Publicaci¢n 391 Portugal - Publicaci¢n 392 Espa¤a/Filipinas - Publicaci¢n 393 Latinoam‚rica - Publicaci¢n 394 Reino Unido/Irlanda - Publicaci¢n 395 Estados Unidos/Canad  - Publicaci¢n 420 µrabe biling�e 424 Hebreo (Israel) 500 Internacional 833 Coreano, anfitri¢n SBCS 838 Tailand‚s 870 Lat¡n 2 (Europa del Este) 871 Islandia, CECP 875 Griego 918 Urdu 924 Lat¡n 9 (Multiling�e) 930 Japon‚s JISX0201-1976 + JISX208-1990 extendido, anfitri¢n MBCS 931 Lat¡n japon‚s, anfitri¢n MBCS 933 Coreano KSC5601, anfitri¢n MBCS 935 Chino simplificado GB2312 extendido, anfitri¢n MBCS (RPC) 937 Chino tradicional CNS11643 extendido, anfitri¢n MBCS (Taiw n) 939 Japon‚s extendido, anfitri¢n MBCS 1025 Cir¡lico 1026 Lat¡n 5 (Turqu¡a) 1027 Japon‚s JISX0201-1976 extendido, anfitri¢n SBCS 1028 Hebreo - Publicaci¢n 1046 µrabe 1047 Open Systems 1097 Farsi 1112 B ltico 1122 Estonia 1123 Ucraniano 1140 Estados Unidos/Canad , ECECP 1141 Alemania, ECECP 1142 Dinamarca/Noruega, ECECP 1143 Finlandia/Suecia, ECECP 1144 Italia, ECECP 1145 Espa¤a/Latinoam‚rica, ECECP 1146 Reino Unido/Irlanda, ECECP 1147 Francia, ECECP 1148 Multiling�e, ECECP 1149 Islandia, ECECP :exmp. :p.:hp7.Otras p ginas de c¢digos:ehp7. :xmp. 259 Conjunto 7 de s¡mbolos - Procesamiento de textos 300 Japon‚s JISX0208-1990, anfitri¢n DBCS 301 Japon‚s JISX0208-1990, DBCS para PC 363 Conjunto 8 de s¡mbolos - Publicaci¢n 829 S¡mbolos matem ticos - Publicaci¢n 834 Coreano KSC5601, anfitri¢n DBCS 835 Chino tradicional CNS11643 extendido, anfitri¢n DBCS (Taiw n) 837 Chino simplificado GB2312 extendido, anfitri¢n DBCS (RPC) 896 Japon‚s katakana condensado, 7 bits 926 Coreano, codificaci¢n tradicional DBCS para PC [alias de 944] 927 Chino tradicional CNS11643 extendido, DBCS para PC [alias de 948] 928 Chino simplificado, codificaci¢n tradicional DBCS para PC [alias de 946] 941 Japon‚s JISX0208-1990 extendido, DBCS para PC/Shift-JIS [alias de 943] 947 Chino tradicional Big-5, DBCS para PC/Big-5 [alias de 950] 951 Coreano KSC5601, DBCS para PC/KS-Code [alias de 949] 952 Japon‚s JISX0208-1990, codificaci¢n EUC 953 Japon‚s JISX0212-1990, codificaci¢n EUC 955 Japon‚s JISX0208-1978, can¢nico 971 Coreano KSC5601, can¢nico 1038 Conjunto de s¡mbolos de Adobe PostScript 1092 S¡mbolos para PC modificados 1380 Chino simplificado GB2312 extendido, DBCS para PC [alias de 1381] :exmp. :fn id=ibm858. La implementaci¢n actual de la p gina de c¢digos 850 ha sustituido la i sin punto turca de la posici¢n 0xD5 con el s¡mbolo del euro Õ. (La p gina de c¢digos modificada est  registrada oficialmente como ®IBM Coded Character Set¯ ID n£mero 858.) :efn. :fn id=ibm867. La implementaci¢n actual de la p gina de c¢digos 862 ha sustituido el s¡mbolo Ÿ del flor¡n de la posici¢n 0x9F con el s¡mbolo del nuevo s‚quel, y la apertura de exclamaci¢n de la posici¢n 0xAD con el s¡mbolo del euro. (La p gina de c¢digos modificada est  registrada oficialmente como ®IBM Coded Character Set¯ ID n£mero 867.) :efn. :fn id=uhc. La tabla de la p gina de c¢digos 949 (:hp2.IBM949:ehp2.) incluida por omisi¢n en OS/2 s¢lo admite el conjunto de caracteres KSC5601 EUC 1 m s las extensiones DBCS para PC de IBM (0x9A** a 0xA0**). :p.Hay disponible una tabla sustituta para la p gina de c¢digos a trav‚s de http&colon.//www.borgendale.com/uls.htm, que actualiza la p gina de c¢digos 949 para admitir la codificaci¢n Unified Hangul Code (®Wansung extendido¯) de Microsoft. Esto habilita el soporte completo para el conjunto de caracteres Johab. :efn. :fn id=ibm1124. :p.La p gina de c¢digos 1124 es una modificaci¢n de la ISO-8859-5 (p gina de c¢digos 915) con los caracteres ucranianos GHE sustituyendo los GJE en las posiciones 0xA3 y 0xF3. :efn. :euserdoc.