Convertir estudios analíticos a Unicode
Si está migrando de una edición no Unicode a la edición Unicode de Analytics, los estudios analíticos y los scripts existentes se convierten automáticamente a Unicode. Sin embargo, debe verificar que la lógica de los scripts continúe siendo la misma al aplicarlos en datos Unicode de dos bytes.
¿Qué es Unicode?
Unicode es un estándar de codificación de texto que utiliza dos o más bytes para representar cada carácter y los caracteres de todos los idiomas están incluidos en un único conjunto de caracteres. Las ediciones Unicode de los productos Galvanize le permiten ver y trabajar con archivos y bases de datos que contienen datos codificados en Unicode en todos los idiomas modernos.
Nota
Analytics y el motor de AX admiten datos Unicode con la codificación little-endian (LE). Estos productos no se pueden utilizar para analizar datos con la codificación big-endian (BE).
Migración a Analytics Exchange Unicode
- Actualmente, no se admite el cifrado de los scripts Unicode
- Los archivos de log y los archivos de proyecto de Analytics se codifican como datos Unicode (UTF-16 LE) y no es posible utilizarlos con la edición no Unicode de Analytics
- al utilizar Analytics para definir archivos delimitados y de imagen de impresión que contienen texto con codificación EBCDIC o ASCII, por valor predeterminado se asigna el tipo de datos Unicode a los campos de la tabla de Analytics que contienen estos datos.
Cambios obligatorios en los estudios analíticos
Actualice los parámetros que especifiquen un valor en bytes
Los caracteres de la edición no Unicode de Analytics tienen una longitud de un byte. Los caracteres de la edición Unicode, si son datos Unicode, tienen una longitud de dos bytes. Al especificar la longitud del campo o la posición inicial en bytes de la edición no Unicode de Analytics, la cantidad de bytes equivale a la cantidad de caracteres. Esto no ocurre con los datos Unicode de la edición Unicode de Analytics.
Para convertir los estudios analíticos para que sean utilizados en Analytics Unicode, debe ajustar el valor numérico de todos los parámetros que especifican la longitud o la posición inicial en bytes. Por ejemplo, para un comando IMPORT DELIMITED que especifica un valor WID de 7 en Analytics no Unicode, debe duplicar el valor WID a 14 para producir el mismo resultado en Analytics Unicode.
Además, para los datos Unicode, especifique una posición inicial de bytes impar para los campos y una cantidad par de bytes para la longitud de los campos. Si especifica una posición de inicio par o una longitud impar, es posible que los caracteres no se vean correctamente.
Recree todas las instancias de IMPORT PRINT e IMPORT DELIMITED
Debe recrear todas las instancias de los comandos IMPORT PRINT e IMPORT DELIMITED importando el archivo de datos de origen por medio del Asistente de Definición de Datos en la versión Unicode de Analytics y volviendo a importar los proyectos al Servidor de AX. El uso del Asistente de Definición de Datos garantiza la validez de toda la sintaxis.
Cambie todas las instancias de las funciones ZONED( ) y EBCDIC( )
Debe cambiar todas las instancias de las funciones ZONED() y EBCDIC() como se indica a continuación para que los valores ASCII que regresan las funciones se conviertan correctamente en datos Unicode:
- Campos calculados coloque la función BINTOSTR() rodeando las instancias de ZONED() o EBCDIC()
- Expresiones estáticas coloque la función BINTOSTR() rodeando las instancias de ZONED()
BINTOSTR(ZONED(%resultado%; 5); 'A')
Cambie todas las instancias del comando OPEN FORMAT.
Debe modificar todas las instancias del comando OPEN FORMAT. Debe usar el parámetro SKIP para saltear los primeros dos bytes del archivo Unicode que está abriendo. Esto es necesario porque los dos primeros bytes de los archivos con codificación UTF-16 están reservados como marcas de orden de byte y están separados del texto del archivo.
No Unicode
OPEN “prueba_ascii.txt” FORMAT tabla_plantilla CRLF DEFINE FIELD reg_completo ASCII 1 10
Unicode
OPEN ““prueba_utf-16.txt” FORMAT tabla_plantilla CRLF SKIP 2 DEFINE FIELD reg_completo UNICODE 1 20
Verificación de los estudios analíticos convertidos
Verifique que las versiones Unicode de los estudios analíticos produzcan resultados idénticos a los que se obtienen con los estudios analíticos no Unicode. La mejor manera de hacerlo consiste en utilizar la herramienta Diff para comparar los archivos de log que se crean en el análisis. La herramienta Diff identifica cualquier diferencia que exista entre los archivos.
¿Qué ocurre si no se obtienen los mismos resultados?
Si no puede obtener los mismos resultados con la versión Unicode de un estudio analítico que con la versión no Unicode, tal vez pueda aislar el problema por medio de la comparación de los log que crean los scripts en cada paso del análisis.