En esta sección:
Referencia: |
En algunos orígenes de datos, los valores de datos quedan almacenados en formato alfanumérico sin ningún estándar concreto, con cualquier combinación de componentes, como año, trimestre o mes, y sin ningún delimitador. En un informe clasificado, si estos datos aparecen en orden alfabético, la secuencia no tendrá ningún sentido de negocio. Para garantizar una correcta clasificación, agregación y creación de informes de campos de fecha, WebFOCUS puede convertir las fechas alfanuméricas al formato de fecha estándar de WebFOCUS, mediante un patrón de conversión que se puede especificar en el atributo de archivo máster llamado DATEPATTERN.
Cada elemento del patrón debe tratarse de un carácter constante, que debe aparecer en la entrada real, o una variable que represente a ese componente de fecha. Debe editar el atributo USAGE en el archivo máster, para que tenga en cuenta los elementos de fecha del patrón de fecha. La longitud máxima de la cadena DATEPATTERN es de 64.
Los componentes (variables) válidos de fecha son año, trimestre, mes, día y día de la semana. En el patrón de fecha, las variables están entre corchetes (los corchetes no forman parte de la entrada ni de la salida. Tenga en cuenta que, si los datos contienen corchetes, debe usar un carácter de escape en el patrón de fecha, para distinguir entre los corchetes de los datos y los utilizados para enmarcar variables).
Especifica un año de cuatro dígitos.
Especifica un año de cuatro dígitos.
Especifica un año de dos dígitos.
Especifica un año de dos dígitos que suprime los ceros (por ejemplo, 8 para 2008).
Especifica un año de dos dígitos con espacios.
Especifica un número de mes de dos dígitos.
Especifica un número de mes sin ceros.
Especifica el número del mes con espacios.
Especifica un nombre del mes de tres caracteres en mayúscula.
Especifica un nombre del mes de tres caracteres en minúscula.
Especifica un nombre del mes de tres caracteres, con mayúsculas y minúsculas.
Especifica un nombre completo del mes, en mayúscula.
Especifica un nombre completo del mes, en minúscula.
Especifica un nombre completo del mes, con mayúsculas y minúsculas.
Especifica un día del mes, de dos dígitos.
Especifica un día del mes sin ceros.
Especifica un día del mes con espacios.
Especifica un día del año, de tres dígitos.
Especifica un día del año sin ceros.
Especifica un día del año con espacios.
Especifica un día de la semana de un dígito.
Especifica un nombre del día de tres caracteres en mayúscula.
Especifica un nombre del día de tres caracteres en minúscula.
Especifica un nombre del día de tres caracteres, con mayúsculas y minúsculas.
Especifica un nombre completo del día, en mayúscula.
Especifica un nombre completo del día, en minúscula.
Especifica un nombre completo del día, con mayúsculas y minúsculas.
Para el día de la semana, la propiedad WEEKFIRST define cuál es el día 1.
Puede insertar cualquier valor constante entre las variables.
Si desea insertar un carácter que normalmente puede interpretarse como parte de una variable, emplee la barra invertida como carácter de escape. Por ejemplo:
Para un signo de interrogación individual, use dos comillas simples consecutivas ('').
Si la forma de la fecha del origen de datos es CY 2001, el atributo DATEPATTERN es:
DATEPATTERN = 'CY [YYYY] Q[Q]'
Si la forma de la fecha del origen de datos es Ene 31, 01, el atributo DATEPATTERN es:
DATEPATTERN = '[Mon] [DD], [YY]'
Si la forma de la fecha del origen de datos es ABR-06, el atributo DATEPATTERN es:
DATEPATTERN = '[MON]-[YY]'
Si la forma de la fecha del origen de datos es ABR-06, el atributo DATEPATTERN es:
DATEPATTERN = '[MON] - [YY]'
Si la forma de la fecha del origen de datos es ABR '06, el atributo DATEPATTERN es:
DATEPATTERN = '[MON] ''[YY]'
Si la forma de la fecha del origen de datos es ABR [06], el atributo DATEPATTERN es:
DATEPATTERN = '[MON] \[[YY]\]' (or '[MON] \[[YY]]'
Tenga en cuenta que el corchete derecho no tiene que escaparse.
En el ejemplo siguiente, date1.ftm es un archivo secuencial que contiene los datos siguientes:
June 1, '02 June 2, '02 June 3, '02 June 10, '02 June 11, '02 June 12, '02 June 20, '02 June 21, '02 June 22, '02 June 1, '03 June 2, '03 June 3, '03 June 10, '03 June 11, '03 June 12, '03 June 20, '03 June 21, '03 June 22, '03 June 1, '04 June 2, '04 June 3, '04 June 4, '04 June 10, '04 June 11, '04 June 12, '04 June 20, '04 June 21, '04 June 22, '04
En el archivo máster DATE1, el campo DATE1 presenta formatos USAGE y ACTUAL alfanuméricos, de A18 cada uno:
FILENAME=DATE1 , SUFFIX=FIX ,
DATASET = c:\tst\date1.ftm , $
SEGMENT=FILE1, SEGTYPE=S0, $
FIELDNAME=DATE1, ALIAS=E01, USAGE=A18, ACTUAL=A18, $
La siguiente solicitud clasifica por DATE1 FIELD:
TABLE FILE DATE1 PRINT DATE1 NOPRINT BY DATE1 ON TABLE SET PAGE NOPAGE END
La salida indica que las fechas alfanuméricas están clasificadas alfabéticamente, no de forma cronológica:
DATE1 ----- June 1, '02 June 1, '03 June 1, '04 June 10, '02 June 10, '03 June 10, '04 June 11, '02 June 11, '03 June 11, '04 June 12, '02 June 12, '03 June 12, '04 June 2, '02 June 2, '03 June 2, '04 June 20, '02 June 20, '03 June 20, '04 June 21, '02 June 21, '03 June 21, '04 June 22, '02 June 22, '03 June 22, '04 June 3, '02 June 3, '03 June 3, '04 June 4, '04
Para clasificar los datos correctamente, puede añadir un atributo DATEPATTERN al archivo máster, que permite que WebFOCUS convierta la fecha en un campo de fecha WebFOCUS. Además, debe editar el formato USAGE para convertirlo en un formato de fecha WebFOCUS. Para construir el patrón apropiado, debe tener en cuenta todos los componentes de la fecha almacenada. La fecha alfanumérica presenta las siguientes variables y constantes:
El archivo máster aparece a continuación. Observe la adición del atributo DEFCENT para convertir el año de dos dígitos en uno de cuatro:
FILENAME=DATE1 , SUFFIX=FIX ,
DATASET = c:\tst\date1.ftm , $
SEGMENT=FILE1, SEGTYPE=S0, $
FIELDNAME=DATE1, ALIAS=E01, USAGE=MtrDYY, ACTUAL=A18,
DEFCENT=20,
DATEPATTERN = '[Month] [dd], ''[YY]', $
La emisión de la misma solicitud genera la salida siguiente. Tenga en cuenta que DATE ha quedado convertido en una fecha WebFOCUS en el formato MtrDYY (como está especificado en el formato USAGE):
DATE1 ----- June 1, 2002 June 2, 2002 June 3, 2002 June 10, 2002 June 11, 2002 June 12, 2002 June 20, 2002 June 21, 2002 June 22, 2002 June 1, 2003 June 2, 2003 June 3, 2003 June 10, 2003 June 11, 2003 June 12, 2003 June 20, 2003 June 21, 2003 June 22, 2003 June 1, 2004 June 2, 2004 June 3, 2004 June 4, 2004 June 10, 2004 June 11, 2004 June 12, 2004 June 20, 2004 June 21, 2004 June 22, 2004
WebFOCUS |